Задание 6. Удаление секций
Выполнить усечение и удаление секций с данными до 1995 и 1999 годов.
- В каталоге C:\OpenEdge\WRK\tablepartitioning создайте каталог dump и перейдите в него в PROENV.
- Выполните многопоточную бинарную выгрузку данных из секций Order_1995 и Order_1999 в текущий рабочий каталог:
proutil ..\sportsco -C dump order . partition order_1995 -thread 1 -threadnum 3
proenv>proutil sportsco -C dump order \. partition order_1995 -thread 1 -threadnum 3 OpenEdge Release 12.0 as of Fri Feb 22 19:02:39 EST 2019 Using index OrderNum (39) for dump of partition order_1995 of table order. (17811) Thread 10580 dumped 38 records for bracket 3. (17816) Thread 9640 dumped 37 records for bracket 2. (17816) Thread 2292 dumped 52 records for bracket 1. (17816) Binary dump started 3 threads. (14776) Dumped 127 records. (13932) Binary Dump complete. (6254) proenv>
Проверьте, что в каталоге C:\OpenEdge\WRK\tablepartitioning\dump\ были созданы три файла:
proenv>dir Directory of V:\Progress120\WRK\tablepartitioning\dump 29.05.2019 14:11 <DIR> . 29.05.2019 14:11 <DIR> .. 29.05.2019 14:11 6 522 order_18P_order_1995.bd 29.05.2019 14:11 5 072 order_18P_order_1995.bd2 29.05.2019 14:11 5 221 order_18P_order_1995.bd3 3 File(s) 16 815 bytes 2 Dir(s) 441 459 707 904 bytes free proenv>
- Повторите выгрузку для секции Order_1999.
proutil ..\sportsco -C dump order . partition order_1999 -thread 1 -threadnum 3
proenv>proutil ..\sportsco -C dump order . partition order_1999 -thread 1 -threadnum 3 OpenEdge Release 12.0 as of Fri Feb 22 19:02:39 EST 2019 Using index OrderNum (39) for dump of partition order_1999 of table order. (17811) Thread 10156 dumped 22 records for bracket 2. (17816) Thread 10556 dumped 32 records for bracket 1. (17816) Thread 8588 dumped 32 records for bracket 3. (17816) Binary dump started 3 threads. (14776) Dumped 86 records. (13932) Binary Dump complete. (6254) proenv>
proenv>dir Directory of V:\Progress120\WRK\tablepartitioning\dump 29.05.2019 14:14 <DIR> . 29.05.2019 14:14 <DIR> .. 29.05.2019 14:14 4 724 order_17P_order_1999.bd 29.05.2019 14:14 3 586 order_17P_order_1999.bd2 29.05.2019 14:14 4 708 order_17P_order_1999.bd3 29.05.2019 14:11 6 522 order_18P_order_1995.bd 29.05.2019 14:11 5 072 order_18P_order_1995.bd2 29.05.2019 14:11 5 221 order_18P_order_1995.bd3 6 File(s) 29 833 bytes 2 Dir(s) 441 459 404 800 bytes free proenv>
- Выполнение усечения и освобождения ресурсов секции Order_1995:
proutil ..\sportsco -C partitionmanage truncate table order partition order_1995 deallocate
proenv>proutil ..\sportsco -C partitionmanage truncate table order partition order_1995 deallocate OpenEdge Release 12.0 as of Fri Feb 22 19:02:39 EST 2019 BEGIN: Truncate operation for table order. (17496) Table partition order_1995[18] (17497) Number of Records per Transaction (recs): 100 Do you want to continue (y/n)? y Truncation of table partition order_1995[18] Succeeded. (17491) END: Truncate operation for table order. (17492) proenv>
- Выполнение усечения и освобождения ресурсов секции Order_1999:
proutil ..\sportsco -C partitionmanage truncate table order partition order_1999 deallocate
proenv>proutil ..\sportsco -C partitionmanage truncate table order partition order_1999 deallocate OpenEdge Release 12.0 as of Fri Feb 22 19:02:39 EST 2019 BEGIN: Truncate operation for table order. (17496) Table partition order_1999[17] (17497) Number of Records per Transaction (recs): 100 Do you want to continue (y/n)? y Truncation of table partition order_1999[17] Succeeded. (17491) END: Truncate operation for table order. (17492) proenv>
- Проверьте состояние секций (количество записей) следующей командой:
proutil ..\sportsco -C partitionmanage view table order status
proenv>proutil ..\sportsco -C partitionmanage view table order status OpenEdge Release 12.0 as of Fri Feb 22 19:02:39 EST 2019 PROGRESS Partition View Database: V:\Progress120\WRK\tablepartitioning\sportsco Date: Wed May 29 14:18:46 2019 PARTITION STATUS ---------------------- Table Rows PUB.Order initial:0 0 Order-7:6 233 Order-1:7 388 Order-8:5 243 Order-2:8 458 Order-9:4 220 Order-3:9 385 Order_1995:18 0 Order_1999:17 0 Order_2005:16 207 Order_2009:15 229 Order_2015:13 83 Order_2019:14 0 Order-11:2 246 Order-5:11 393 Order-12:1 228 Order-6:12 427 proenv>
Здесь видно, что в секции Order_1995 и Order_1999 после усечения содержат 0 записей.
- Теперь проверьте статусы секций следующей командой:
proutil ..\sportsco -C partitionmanage view table order state
proenv>proutil ..\sportsco -C partitionmanage view table order state OpenEdge Release 12.0 as of Fri Feb 22 19:02:39 EST 2019 PROGRESS Partition View Database: V:\Progress120\WRK\tablepartitioning\sportsco Date: Wed May 29 14:20:24 2019 PARTITION STATE --------------------- Table State Description PUB.Order initial:0 Order-7:6 Order-1:7 Order-8:5 Order-2:8 Order-9:4 Order-3:9 Order_1995:18 Deallocated Order_1999:17 Deallocated Order_2005:16 Order_2009:15 Read Only Order_2015:13 Order_2019:14 Order-11:2 Order-5:11 Order-12:1 Order-6:12 proenv>
Здесь мы видим, что секции Order_1995 и Order_1999 имеют статус Deallocated, это значит что теперь мы можем их удалить.
- Удалите секции Order_1995 и Order_1999 из таблицы Order. Для этого используйте Database Administration Console:
- Перейдите в Database Administration Console и в секции Storage Management щёлкните по ссылке Partition policies.
- Щёлкните по ссылке Edit Details в столбце Action политики Order.
- Выберите описание секции (деталь политики секционирования) Order_1995 и щёлкните по кнопке Delete.
- Подтвердите удаление, щёлкнув по Yes.
- Повторите эти действия для удаления секции Order_1999.
- Командой partitionmanage view table order status проверьте, что данных секций нет в списке секций таблицы Order:
proenv>proutil ..\sportsco -C partitionmanage view table order status OpenEdge Release 12.0 as of Fri Feb 22 19:02:39 EST 2019 PROGRESS Partition View Database: V:\Progress120\WRK\tablepartitioning\sportsco Date: Wed May 29 14:26:43 2019 PARTITION STATUS ---------------------- Table Rows PUB.Order initial:0 0 Order-7:6 233 Order-1:7 388 Order-8:5 243 Order-2:8 458 Order-9:4 220 Order-3:9 385 Order_2005:16 207 Order_2009:15 229 Order_2015:13 83 Order_2019:14 0 Order-11:2 246 Order-5:11 393 Order-12:1 228 Order-6:12 427 proenv>
Задание выполнено!
Подведение итогов урока
На этом уроке вы научились:
- Добавлять секции в секционированные таблицы.
- Разделять и переименовывать секции на небольшие секции.
- Объединять секции.
- Изменять статус доступа к данным в секции.
- Перемещать секции в другие области хранения.
- Выполнять усечение секций.
- Удалять секции.
- Отключать табличное секционирование в базе данных.