マップを使ってAMP間でテーブル データを分散させるための前提条件があります:
- ユーザーDBCは、ユーザーTDMapsにLOGON権限を付与する必要があります。TDMapsは、マップの管理に使用される情報とSQLストアド プロシージャを含むシステム データベースです。
- TDMapsへの初回ログオン後(初期パスワードはtdmapsadmin)、TDMapsのパスワードを変更してください。
- ActionsTblとActionHistoryTblに行を格納できるように、十分な領域をTDMapsに割り当ててください。大まかな目安はTVMのサイズです。以下の例では、TVMのサイズを決定します。
SELECT SUM(CurrentPerm) FROM DBC.TableSizeV WHERE TableName='TVM';
- TDMapsにDBA権限を付与する:
- TDMapsプロシージャの使用を許可するには:
GRANT EXECUTE PROCEDURE ON TDMaps TO <User>;
- TDMapsテーブルに問い合わせを許可するには:
GRANT SELECT ON TDMaps TO <User>;
- TDMapsテーブル変更を許可するには:
GRANT INSERT, UPDATE, DELETE ON TDMaps TO <User>;
- TDMapsプロシージャの使用を許可するには:
- マップにDBA権限を付与する:
- マップを作成および削除する権限を付与する場合の例:
GRANT CREATE MAP TO Roger WITH GRANT OPTION;
GRANT DROP MAP TO Roger WITH GRANT OPTION;
- 既存の連続マップまたはスパース マップをユーザーまたはロールに付与する例:
GRANT MAP SomeMapName TO Roger WITH GRANT OPTION;
マップをSQL文で使用するには、マップの権限を付与する必要があります。この要件はデフォルト マップには適用されません。
- マップを作成および削除する権限を付与する場合の例:
ユーザーがマップを作成すると、ユーザーにはデフォルトでそのマップの権限が付与されます。ユーザーTDMapsには、自動的にデフォルトのスパース マップの権限が付与されます。