Schema evolutie - Schema evolution
In de informatica hebben schemaversies en schema-evolutie betrekking op de noodzaak om de huidige gegevens en de functionaliteit van het softwaresysteem te behouden in het licht van de veranderende databasestructuur. Het probleem is niet beperkt tot de wijziging van het schema. Het heeft in feite invloed op de gegevens die onder het gegeven schema zijn opgeslagen en op de vragen (en dus de toepassingen) die op dat schema worden gesteld.
Een databaseontwerp wordt soms gemaakt als een "vanaf nu" -instantie en daarom wordt geen rekening gehouden met schema-evolutie. (Dit is anders, maar heeft betrekking op waar een database is ontworpen als een "one size fits all" die de vluchtigheid van attributen niet dekt ). Deze veronderstelling, bijna onrealistisch in de context van traditionele informatiesystemen, wordt onaanvaardbaar in de context van systemen die grote hoeveelheden historische informatie bevatten of systemen zoals webinformatiesystemen , die vanwege de gedistribueerde en coöperatieve aard van hun ontwikkeling onderwerp zijn van een nog sterkere druk om te veranderen (van 39% tot meer dan 500% intenser dan in traditionele omgevingen). Vanwege dit historische erfgoed is het proces van schema-evolutie tegenwoordig bijzonder belastend. In feite wordt algemeen erkend dat de gegevensbeheerkern van een applicatie een van de moeilijkste en meest kritische componenten is om te evolueren. Het belangrijkste probleem is de impact van de schema-evolutie op queries en applicaties. Zoals getoond in (dat een analyse geeft van de MediaWiki-evolutie) kan elke evolutiestap invloed hebben op tot 70% van de zoekopdrachten die op het schema werken, die vervolgens handmatig moeten worden herwerkt.
Het probleem wordt al meer dan 12 jaar erkend als een urgent probleem door de databasegemeenschap. Ondersteuning van schema-evolutie is een moeilijk probleem met complexe mapping tussen schemaversies en de ondersteuning van de tool is tot dusver zeer beperkt geweest. De recente theoretische vorderingen op het gebied van het in kaart brengen van compositie en het in kaart brengen van omkeerbaarheid, die de kernproblemen vertegenwoordigen die ten grondslag liggen aan de schema-evolutie, blijven bijna ontoegankelijk voor het grote publiek. Het probleem wordt vooral gevoeld door tijdelijke databases.
Gerelateerde werken
- Een rijke bibliografie over Schema Evolution is verzameld op: http://se-pubs.dbs.uni-leipzig.de/pubs/results/taxonomy%3A100
- UCLA-universiteit voerde een analyse uit van de MediaWiki Schema Evolution: Schema Evolution Benchmark
- PRISM, een hulpmiddel ter ondersteuning van een sierlijke evolutie van relationele schema's: Prism: hulpmiddel voor schema-evolutie
- PRIMA, een tool die transactietijddatabases ondersteunt onder schema-evolutie PRIMA: ondersteunt transactietijd-database onder schema-evolutie
- Pario en deltasql zijn voorbeelden van softwareontwikkelingstools die volledig geautomatiseerde schema-evolutie omvatten.
Referenties
- ^ Roddick, John F (1995). "Een overzicht van problemen met schemaversie voor databasesystemen". Informatie- en softwaretechnologie . 37 (7): 383-393. CiteSeerX 10.1.1.54.8474 . doi : 10.1016 / 0950-5849 (95) 91494-K .
- ^ ‘De Benchmark van de Evolutie van het schema - De Evolutie van het schema’ . yellowstone.cs.ucla.edu . Ontvangen 2010-07-29 .
- ^ Curino CA, Moon HJ, Tanca L, Zaniolo C (2008). Schema-evolutie in Wikipedia: naar een webinformatiesysteembenchmark, (pdf) . ICEIS .
- ^ Rahm E, Bernstein PA. "Een online bibliografie over schema-evolutie" (pdf) . Ontvangen 2 mei 2017 .
- ^ Topor, Rodney; Salem, Kenneth; Gupta, Amarnath; Goda, Kazuo; Gehrke, Johannes; Palmer, Nathaniel; Sharaf, Mohamed; Labrinidis, Alexandros; Roddick, John F .; Fuxman, Ariel; Miller, Renée J .; Tan, Wang-Chiew; Kementsietsidis, Anastasios; Bonnet, Philippe; Shasha, Dennis; Roddick, John F .; Gupta, Amarnath; Peikert, Ronald; Ludäscher, Bertram; Bowers, Shawn; McPhillips, Timothy; Naumann, Harald; Voruganti, Kaladhar; Domingo-Ferrer, Josep; Carterette, Ben; Ipeirotis, Panagiotis G .; Arenas, Marcelo; Manolopoulos, Yannis; Theodoridis, Yannis; et al. (2009). "Schema-versiebeheer". Encyclopedie van databasesystemen . Springer, Boston, MA. blz. 2499-2502. doi : 10.1007 / 978-0-387-39940-9_323 . ISBN 978-0-387-35544-3 .
- ^ Nash, Alan; Bernstein, Philip A .; Melnik, Sergey (2007). "Samenstelling van toewijzingen gegeven door ingebedde afhankelijkheden". ACM-transacties op databasesystemen . 32 : 4-es. CiteSeerX 10.1.1.534.3957 . doi : 10.1145 / 1206049.1206053 .
- ^ Fagin R, Kolaitis PG, Popa L, Tan WC. "Quasi-inverse van Schema Mappings" (PDF) .
- ^ Roddick, John F .; Snodgrass, Richard T. (1995). "Schema-versiebeheer". De TSQL2 Temporal Query Language . De Springer International Series in Engineering and Computer Science. Springer, Boston, MA. blz. 427-449. doi : 10.1007 / 978-1-4615-2289-8_22 . ISBN 9781461359661 .
- ^ "deltasql, Database-evolutie onder controle" . Deltasql-ontwikkelingsteam. 20-04-2013 . Ontvangen 2019/02/08 .
| Dit artikel in computerwetenschappen is een stomp . U kunt Wikipedia helpen door het uit te breiden . |