CLEAR_OBJECT_STORAGE_POLICY
从指定的数据库、架构或表中移除用户定义的存储策略。先前策略标记位置的存储容器将移动到默认位置。默认情况下,此移动发生在所有挂起的合并任务返回之后。
这是元函数。您必须在顶级 SELECT 语句中调用元函数。
行为类型
易变语法
CLEAR_OBJECT_STORAGE_POLICY ( 'object‑name' [,'key‑min', 'key‑max'] [, 'enforce‑storage‑move' ] )
参数
- object‑name
- 要清除的对象,为以下之一:
-
database:清除存储策略的 database。
-
[database.]schema
: 清除存储策略的 schema。 -
[[database.]schema.]table
: 清除存储策略的 table。如果 table 位于除public
以外的任何架构中,则必须提供架构名称。
在所有情况下,database 必须为当前数据库的名称。
-
- key‑min
key‑max - 仅当 object‑name 为表时有效,指定存储在标记位置的表分区键值的范围。
- enforce‑storage‑move
- 指定 Tuple Mover 将指定对象的所有现有存储容器移动到其默认存储位置的时间:
-
false
(默认值):仅在所有待定合并任务返回后移动存储容器。 -
true
:立即将所有存储容器移动到新位置。
提示
您也可以通过调用 Vertica 元函数ENFORCE_OBJECT_STORAGE_POLICY
立即强制执行所有存储策略。 -
超级用户
示例
以下语句可清除表 store.store_orders_fact
的存储策略。true
实参指定立即实施移动策略:
=> SELECT CLEAR_OBJECT_STORAGE_POLICY ('store.store_orders_fact', 'true');
CLEAR_OBJECT_STORAGE_POLICY
-----------------------------------------------------------------------------
Object storage policy cleared.
Task: moving storages
(Table: store.store_orders_fact) (Projection: store.store_orders_fact_b0)
(Table: store.store_orders_fact) (Projection: store.store_orders_fact_b1)
(1 row)