MOVE_RETIRED_LOCATION_DATA
从数据库中指定的停用存储位置或从全部停用存储位置移出全部数据。 MOVE_RETIRED_LOCATION_DATA
根据存储数据对象的存储策略,将数据移动至非停用存储位置。此函数仅在完成所有受影响的存储位置数据的迁移后才返回。
这是元函数。您必须在顶级 SELECT 语句中调用元函数。
行为类型
易变语法
MOVE_RETIRED_LOCATION_DATA( ['location‑path'] [, 'node'] )
参数
- location‑path
- 系统表
STORAGE_LOCATIONS
的LOCATION_PATH
列所指定的存储位置的路径。此存储位置必须标记为已停用。如果忽略此参数,
MOVE_RETIRED_LOCATION_DATA
将从所有停用的存储位置移出数据。 - 节点
- 要在其上移动停用存储位置的数据的节点。如果 node 上未定义 location-path,则此函数返回错误。
如果忽略此参数,
MOVE_RETIRED_LOCATION_DATA
将从所有节点的 location-path 移出数据。
超级用户
示例
-
查询系统表
STORAGE_LOCATIONS
,显示停用的存储位置:=> SELECT node_name, location_path, location_label, is_retired FROM STORAGE_LOCATIONS WHERE is_retired = 't'; node_name | location_path | location_label | is_retired ------------------+----------------------+----------------+------------ v_vmart_node0001 | /home/dbadmin/SSDLoc | ssd | t v_vmart_node0002 | /home/dbadmin/SSDLoc | ssd | t v_vmart_node0003 | /home/dbadmin/SSDLoc | ssd | t (3 rows)
-
查询系统表
STORAGE_LOCATIONS
获取消息表的位置,消息表目前存储在停用存储位置ssd
:=> SELECT node_name, total_row_count, location_label FROM STORAGE_CONTAINERS WHERE projection_name ILIKE 'messages%'; node_name | total_row_count | location_label ------------------+-----------------+---------------- v_vmart_node0001 | 333514 | ssd v_vmart_node0001 | 333255 | ssd v_vmart_node0002 | 333255 | ssd v_vmart_node0002 | 333231 | ssd v_vmart_node0003 | 333231 | ssd v_vmart_node0003 | 333514 | ssd (6 rows)
-
调用
MOVE_RETIRED_LOCATION_DATA
,将数据移出ssd
存储位置。=> SELECT MOVE_RETIRED_LOCATION_DATA('/home/dbadmin/SSDLoc'); MOVE_RETIRED_LOCATION_DATA ----------------------------------------------- Move data off retired storage locations done (1 row)
-
重复前述查询,验证消息表的存储位置:
=> SELECT node_name, total_row_count, storage_type, location_label FROM storage_containers WHERE projection_name ILIKE 'messages%'; node_name | total_row_count | location_label ------------------+-----------------+---------------- v_vmart_node0001 | 333255 | base v_vmart_node0001 | 333514 | base v_vmart_node0003 | 333514 | base v_vmart_node0003 | 333231 | base v_vmart_node0002 | 333231 | base v_vmart_node0002 | 333255 | base (6 rows)