title

text

Игорь Мельников
Игорь Мельников My home Владелец
13:10 31 марта
40 мин

Изменение структуры таблиц в PostgreSQL с помощью технологии DBMS_REDEFINITION

В любой бизнес-критичной системе возникает задача изменения структуры таблиц, например, добавление новых столбцов cо значением выражения, зависящего от других столбцов или превращение несекционированной таблицы в секционированную.

Если решать задачу реорганизации структуры больших таблиц стандартными средствами PostgresSQL, это вызовет большой downtime приложения — на всё время реорганизации таблица будет недоступна на запись, а в некоторых случаях и на чтение. 

В докладе автор представит dbms_redefinition — расширение собственной разработки, которое реализует функциональность, аналогичную одноименному пакету в Oracle, позволяет снизить до минимума (near zero) downtime на период применения к БД прикладных обновлений, меняющих структуру таблиц. 

В PostgreSQL данная технология отсутствует. Расширение pg_repack НЕ позволяет изменить структуру таблицы. Поэтому dbms_redefinition будет интересен всем пользователям СУБД, вне контекста миграции с Oracle. Я расскажу про использование пакета на примере реальной задачи, обсужу планы по развитию решения и добавление новой функциональности.

Другие доклады