Міграція бази даних: відмінності між версіями
[перевірена версія] | [перевірена версія] |
Bunyk (обговорення | внесок) Створено шляхом перекладу сторінки «Schema migration» |
Bunyk (обговорення | внесок) Немає опису редагування |
||
Рядок 1: | Рядок 1: | ||
In [[Програмна інженерія|software engineering]], '''schema migration''' (also '''database migration''', '''database change management'''<ref>http://www.liquibase.org/ [//en.wikipedia.org/wiki/Liquibase Liquibase] Database Refactoring</ref><ref>http://flywaydb.org/ Flyway: The agile database migration framework for Java</ref>) refers to the management of incremental, reversible changes to [[Реляційна база даних|relational]] [[Схема бази даних|database schemas]]. Міграція схеми виконується над базою даних коли необхідно оновити, або повернути схему бази даних до якоїсь новішої чи старішої версії. |
In [[Програмна інженерія|software engineering]], '''schema migration''' (also '''database migration''', '''database change management'''<ref>http://www.liquibase.org/ [//en.wikipedia.org/wiki/Liquibase Liquibase] Database Refactoring</ref><ref>http://flywaydb.org/ Flyway: The agile database migration framework for Java</ref>) refers to the management of incremental, reversible changes to [[Реляційна база даних|relational]] [[Схема бази даних|database schemas]]. Міграція схеми виконується над базою даних коли необхідно оновити, або повернути схему бази даних до якоїсь новішої чи старішої версії. |
||
{{пишу}} |
|||
Migrations are performed programmatically by using a ''schema migration tool''. When invoked with a specified desired schema version, the tool automates the successive application or reversal of an appropriate sequence of schema changes until it is brought to the desired state. |
Migrations are performed programmatically by using a ''schema migration tool''. When invoked with a specified desired schema version, the tool automates the successive application or reversal of an appropriate sequence of schema changes until it is brought to the desired state. |
||
<!-- |
|||
Most schema migration tools aim to minimize the impact of schema changes on any existing data in the database. Despite this, preservation of data in general is not guaranteed because schema changes such as the deletion of a database column can destroy data (i.e. all values stored under that column for all rows in that table are deleted). Instead, the tools help to preserve the meaning of the data or to reorganize existing data to meet new requirements. Since meaning of the data often cannot be encoded, the configuration of the tools usually needs manual intervention. |
Most schema migration tools aim to minimize the impact of schema changes on any existing data in the database. Despite this, preservation of data in general is not guaranteed because schema changes such as the deletion of a database column can destroy data (i.e. all values stored under that column for all rows in that table are deleted). Instead, the tools help to preserve the meaning of the data or to reorganize existing data to meet new requirements. Since meaning of the data often cannot be encoded, the configuration of the tools usually needs manual intervention. |
||
Рядок 38: | Рядок 38: | ||
=== Advantages === |
=== Advantages === |
||
Developers no longer need to remove the entire test database in order to create a new test database from scratch (e.g. using schema creation scripts from DDL generation tools). Further, if generation of test data costs a lot of time, developers can avoid regenerating test data for small, non-destructive changes to the schema. |
Developers no longer need to remove the entire test database in order to create a new test database from scratch (e.g. using schema creation scripts from DDL generation tools). Further, if generation of test data costs a lot of time, developers can avoid regenerating test data for small, non-destructive changes to the schema. |
||
--> |
|||
== Зноски == |
== Зноски == |
||
Рядок 44: | Рядок 45: | ||
== Посилання == |
== Посилання == |
||
* [https://martinfowler.com/articles/evodb.html Martin Fowler: Evolutionary Database Design] |
* [https://martinfowler.com/articles/evodb.html Martin Fowler: Evolutionary Database Design] |
||
[[Категорія:Гнучка методологія розробки програмного забезпечення]] |
[[Категорія:Гнучка методологія розробки програмного забезпечення]] |
||
[[Категорія:Бази даних]] |
[[Категорія:Бази даних]] |
Версія за 09:44, 10 листопада 2017
In software engineering, schema migration (also database migration, database change management[1][2]) refers to the management of incremental, reversible changes to relational database schemas. Міграція схеми виконується над базою даних коли необхідно оновити, або повернути схему бази даних до якоїсь новішої чи старішої версії.
Ця стаття в процесі редагування певний час. Будь ласка, не редагуйте її, бо Ваші зміни можуть бути втрачені. Якщо ця сторінка не редагувалася кілька днів, будь ласка, приберіть цей шаблон. Це повідомлення призначене для уникнення конфліктів редагування. Останнє редагування зробив користувач Bunyk (внесок, журнали) о 09:44 UTC (3384720 хвилин тому). |
Migrations are performed programmatically by using a schema migration tool. When invoked with a specified desired schema version, the tool automates the successive application or reversal of an appropriate sequence of schema changes until it is brought to the desired state.
Зноски
- ↑ http://www.liquibase.org/ Liquibase Database Refactoring
- ↑ http://flywaydb.org/ Flyway: The agile database migration framework for Java