Эволюция схемы - Schema evolution
В Информатика, управление версиями схемы и эволюция схемы, справиться с необходимостью сохранить текущие данные и функциональность программного обеспечения системы перед лицом изменения структуры базы данных[1]. Проблема не ограничивается модификацией схемы. Фактически, это влияет на данные, хранящиеся в данной схеме, и на запросы (и, следовательно, на приложения), заданные в этой схеме.
Проект базы данных иногда создается как экземпляр «на данный момент», поэтому эволюция схемы не рассматривается. (Это другое дело, но связано с тем, что база данных спроектирована как универсальная, которая не охватывает волатильность атрибута ). Это предположение, почти нереалистичное в контексте традиционных информационных систем, становится неприемлемым в контексте систем, хранящих большие объемы исторической информации или таких, как Веб-информационные системы, что из-за распределен и кооперативный характер их развития, подвергаются еще более сильному давлению в сторону изменений (от 39% до более чем 500% более интенсивно, чем в традиционных условиях).[2] Из-за этого исторического наследия процесс эволюции схемы в настоящее время является особенно трудным. Фактически, широко признано, что ядро управления данными приложений является одним из наиболее сложных и критически важных компонентов для развития. Ключевой проблемой является влияние эволюции схемы на запросы и приложения. Как показано в [3] (который обеспечивает анализ эволюции MediaWiki) каждый шаг развития может повлиять на до 70% запросов, работающих в схеме, которые, соответственно, должны быть переработаны вручную.
Сообщество баз данных признало эту проблему насущной уже более 12 лет.[4][5] Поддержка эволюции схемы - сложная проблема, связанная со сложным отображением между версиями схемы, а поддержка инструментов пока очень ограничена. Последние теоретические достижения в области составления карт[6] и обратимость отображения,[7] которые представляют собой основные проблемы, лежащие в основе эволюции схемы, остаются практически недоступными для широкой публики. Проблема особенно остро ощущается во временных базах данных.[8].
Сопутствующие работы
- Обширная библиография по Schema Evolution собрана по адресу: http://se-pubs.dbs.uni-leipzig.de/pubs/results/taxonomy%3A100
- Университет UCLA провел анализ эволюции схемы MediaWiki: Тест Schema Evolution
- PRISM, инструмент для поддержки постепенной эволюции реляционной схемы: Prism: инструмент эволюции схемы
- PRIMA, инструмент, поддерживающий базы данных времени транзакций при эволюции схемы PRIMA: поддержка БД во время транзакции при эволюции схемы
- Парио и deltasql[9] являются примерами инструментов разработки программного обеспечения, которые включают полностью автоматизированную эволюцию схемы.
Рекомендации
- ^ Роддик, Джон Ф (1995). «Обзор проблем управления версиями схем для систем баз данных». Информационные и программные технологии. 37 (7): 383–393. CiteSeerX 10.1.1.54.8474. Дои:10.1016 / 0950-5849 (95) 91494-К.
- ^ «Тест эволюции схемы - эволюция схемы». yellowstone.cs.ucla.edu. Получено 2010-07-29.
- ^ Курино, Калифорния, Мун Х. Дж., Танка Л., Заниоло С. (2008). Эволюция схемы в Википедии: к тесту веб-информационной системы, (PDF). ICEIS.
- ^ Рам Э., Бернштейн PA. «Интернет-библиография по эволюции схемы» (PDF). Получено 2 мая 2017.
- ^ Топор, Родни; Салем, Кеннет; Гупта, Амарнатх; Года, Кадзуо; Герке, Йоханнес; Палмер, Натаниэль; Шараф, Мохамед; Лабринидис, Александрос; Роддик, Джон Ф .; Фуксман, Ариэль; Миллер, Рене Дж .; Тан, Ван-Чью; Кеменциэсидис, Анастасиос; Бонне, Филипп; Шаша, Деннис; Роддик, Джон Ф .; Гупта, Амарнатх; Пайкерт, Рональд; Людешер, Бертрам; Бауэрс, Шон; Макфиллипс, Тимоти; Науманн, Харальд; Воруганти, Каладхар; Доминго-Феррер, Жозеп; Картеретт, Бен; Ipeirotis, Panagiotis G .; Аренас, Марсело; Манолопулос, Яннис; Теодоридис, Яннис; и другие. (2009). «Управление версиями схемы». Энциклопедия систем баз данных. Спрингер, Бостон, Массачусетс. С. 2499–2502. Дои:10.1007/978-0-387-39940-9_323. ISBN 978-0-387-35544-3.
- ^ Нэш, Алан; Бернштейн, Филип А .; Мельник, Сергей (2007). «Состав отображений, заданных встроенными зависимостями». Транзакции ACM в системах баз данных. 32: 4 – es. CiteSeerX 10.1.1.534.3957. Дои:10.1145/1206049.1206053.
- ^ Фэгин Р., Колайтис П. Г., Попа Л., Тан WC. «Квазиобратные отображения схем» (PDF).
- ^ Роддик, Джон Ф .; Снодграсс, Ричард Т. (1995). «Управление версиями схемы». Язык временных запросов TSQL2. Серия Springer International в области инженерии и информатики. Спрингер, Бостон, Массачусетс. С. 427–449. Дои:10.1007/978-1-4615-2289-8_22. ISBN 9781461359661.
- ^ "deltasql, развитие базы данных под контролем". Команда разработчиков Deltasql. 2013-04-20. Получено 2019-02-08.
Этот Информатика статья - это заглушка. Вы можете помочь Википедии расширяя это. |