Greenplum のパーティションは、他のテーブルと同様に扱われます。psql にアクセスできる場合は、「\d」コマンドを使用して、search_path でアクセスできるすべてのテーブルを表示できるはずです。大きなテーブルの各パーティションがその中に表示されます。明示的にパーティションに名前を付けない限り、greenplum は自動インクリメント パーティション番号を持つ親テーブル名に基づいて名前を付けるだけです。
gpadmin=# create table testtab (testcol varchar(10),
gpadmin(# test_time timestamptz)
gpadmin-# distributed by (testcol)
gpadmin-# partition by range (test_time)
gpadmin-# ( START (date '2013-10-01') INCLUSIVE
gpadmin(# END (date '2013-11-25') EXCLUSIVE
gpadmin(# EVERY (INTERVAL '1 week'));
NOTICE: CREATE TABLE will create partition "testtab_1_prt_1" for table "testtab"
NOTICE: CREATE TABLE will create partition "testtab_1_prt_2" for table "testtab"
NOTICE: CREATE TABLE will create partition "testtab_1_prt_3" for table "testtab"
NOTICE: CREATE TABLE will create partition "testtab_1_prt_4" for table "testtab"
NOTICE: CREATE TABLE will create partition "testtab_1_prt_5" for table "testtab"
NOTICE: CREATE TABLE will create partition "testtab_1_prt_6" for table "testtab"
NOTICE: CREATE TABLE will create partition "testtab_1_prt_7" for table "testtab"
NOTICE: CREATE TABLE will create partition "testtab_1_prt_8" for table "testtab"
CREATE TABLE
Time: 252.080 ms
gpadmin=#
最新のパーティションのみをバキュームするには、最大のパーティション番号を持つテーブルを返す関数を作成できます。
gpadmin=# select tablename from pg_tables
gpadmin-# where tablename like 'testtab_1_prt_%'
gpadmin-# order by tablename desc limit 1;
tablename
-----------------
testtab_1_prt_8
(1 row)
Time: 89.151 ms
そして、それを真空分析に渡します。