За допомогою dbms_redefinition вам потрібно скопіювати рядки зі старої таблиці в нову. Оскільки обмін розділами є операцією метаданих, "миттєвий" також. Так буде швидше додати розділення до таблиці за допомогою методу обміну. Припустимо, ви готові завантажити всі існуючі рядки в один гігантський розділ. 21 вересня 2020 р.

Команда ОБМІН РОЗДІЛУ замінює існуючу таблицю розділом. Якщо ви плануєте додати велику кількість даних до розділеної таблиці, ви можете скористатися командою ALTER TABLE… EXCHANGE PARTITION, щоб реалізувати масове завантаження.

«Вертикальне розділення» передбачає створення таблиць із меншою кількістю стовпців і використання додаткових таблиць для зберігання решти стовпців. Нормалізація також передбачає поділ стовпців між таблицями, але вертикальне поділ виходить за рамки цього та розбиває стовпці, навіть якщо вони вже нормалізовані.

Команда EXCHANGE PARTITION буде перемістити розділ із вихідної таблиці в цільову та змінити метадані кожної таблиці. Функція Exchange Partition реалізована як частина HIVE-4095. Обмін декількома розділами підтримується в Hive версії 1.2. 2, 1.3.

Розбиття існуючої таблиці за допомогою DBMS_REDEFINITION

  1. Створіть зразок схеми.
  2. Створіть секціоновану проміжну таблицю.
  3. Почніть процес повторного визначення.
  4. Створення обмежень та індексів (залежностей)
  5. Завершіть процес перевизначення.

За допомогою dbms_redefinition ви повинні скопіювати рядки зі старої таблиці в нову. Оскільки обмін розділами є операцією метаданих, "миттєвий" також. Так буде швидше додати розділення до таблиці за допомогою методу обміну. Припустимо, ви готові завантажити всі наявні рядки в один гігантський розділ.