DISCOVER_OBJECT_STORAGE_MPP_TABLES¶
説明
ストアドプロシージャ DISCOVER_OBJECT_STORAGE_MPP_TABLES では、ユーザーが指定したフォルダから分散ストレージのスキャンが開始され、フォルダまたはサブフォルダに見つかった Parquet、Delta、または Iceberg のデータセットごとに、それに対応する基本ビューが Denodo VDP に作成されます。また、同様に対応する Hive テーブルが Denodo 組み込み MPP に作成されます。
構文
DISCOVER_OBJECT_STORAGE_MPP_TABLES (
dir_to_explore : varchar
, duplicate_strategy : varchar
, sample_size : numeric
, read_from : varchar
, included_pattern : varchar
, base_view_database : varchar
, base_view_folder : varchar
, base_view_prefix : varchar
, embedded_mpp_schema : varchar
, analyze_tables : boolean
, embedded_database : varchar
, embedded_name : varchar
)
dir_to_explore: 分散ストレージのパス上で、メタデータ検出プロセスの開始場所とするディレクトリ (s3a、wasb、abfs)。duplicate_strategy(オプション): Denodo 組み込み MPP および Denodo VDP にすでに存在するメタデータをどのように扱うかを選択します。指定できる値はNEVER_REPLACE、REPLACE_IF_CHANGES、およびALWAYS_REPLACEです。このパラメータ値を指定しない場合はNEVER_REPLACEが選択されます。NEVER_REPLACE: 組み込み MPP の Hive テーブルおよび Denodo VDP の基本ビューがすでに存在する場合、それらは置き換えられません。REPLACE_IF_CHANGES: 既存の Hive テーブルに何らかの変更 (列の追加、列の削除、列の型の変更など) が検出された場合は、すでに存在する組み込み MPP の Hive テーブルと VDP でそれに対応する基本ビューが置き換えられます。これは、ユーザーによる変更 (フィールド名の変更、フィールドの型やキャッシュ構成の変更など) が適用されている既存の Denodo 基本ビューに影響します。これらの基本ビューが置き換えられ、ユーザーによる変更が失われるからです。Denodo 基本ビューは常にそのまま維持し、これらの基本ビューから派生したビューのみを変更することをお勧めします。ALWAYS_REPLACE: 組み込み MPP の Hive テーブルおよび VDP でそれに対応する基本ビューがすでに存在する場合、それらが必ず置き換えられます。
sample_size(オプション): スキーマの進化 を処理するために分析するデータファイルの最大数を設定します。デフォルト値:1。read_from(オプション): 目的のタイムスタンプ (UTC) を起点としてファイルを分析できます。ソースファイルは、指定したタイムスタンプのファイルを起点として最新のファイルの方向へ、sample_sizeパラメータで設定したファイル数の制限に達するまで分析されます。このパラメータに値を指定しない場合、ソースデータファイルは、最新のファイルを起点として古いファイルの方向へ前述のファイル数の制限に達するまで処理されます。included_pattern(オプション): スキャンプロセスで特定のファイルまたはフォルダのみを選択する正規表現。例として、(.*)invoices(.*)が考えられます。デフォルト値:null。base_view_database: すべての基本ビューがこのデータベースに作成されます。base_view_folder: このパラメータを指定すると、このストアドプロシージャで作成されるすべての基本ビューがこのフォルダに配置されます。このフォルダは、必要に応じてストアドプロシージャによって作成されます。base_view_prefix(オプション): このパラメータを指定すると、このストアドプロシージャで作成されるすべての基本ビューの名前の先頭にこの値が付加されます。このパラメータを指定しないと、作成される基本ビューの名前の先頭には何も付加されません。embedded_mpp_schema: 各基本ビューに関連付けられた Hive テーブルの作成先とする、組み込み MPP のスキーマ。組み込み MPP のデフォルトのスキーマはdefaultですが、ストアドプロシージャ CREATE_SCHEMA_ON_SOURCE を使用すれば新しいスキーマを作成できます。analyze_tables(オプション): コスト基準の最適化ができるようにデータに関する統計情報を収集するかどうかを指定します。このステップには長時間を要することがある点に注意が必要です。このオプションを選択していない場合、後で統計情報を収集するには「 ビューの統計情報の収集 」にある手順に従うことをお勧めします。デフォルト値:false。embedded_database(オプション): 組み込み MPP データソースが存在するデータベース。デフォルト値:admin_denodo_mpp。embedded_name(オプション): 組み込み MPP データソース名。デフォルト値:embedded_mpp。
このプロシージャは、以下のフィールドを返します。
route_explored: オブジェクトストレージでのデータの絶対パス。catalog_name: 基本ビューに関連付けた Hive テーブルの作成に使用する、組み込み MPP のカタログ。base_view_name: VDP の基本ビューの名前。vql: ビューの作成に使用する VQL。already_exists: 同じパスにビューが存在する場合はtrue、存在しない場合はfalse。status: このルート分析の結果を要約した数値コード。返される値は以下のとおりです。0: 同じビューが存在しないので、ビューが正常に作成されました。1: 同じビューがすでに存在していましたが、置換方法がALWAYS_REPLACEであることから、新しいビューで置き換えられました。2: 同じビューがすでに存在していましたが、スキーマが異なり、置換方法がREPLACE_IF_CHANGESであることから、新しいビューで置き換えられました。3: 同じビューがすでに同じパスに存在し、置換方法がNEVER_REPLACEであることから、新しいビューは作成されませんでした。4: 同じビューが同じパスに同じスキーマですでに存在し、置換方法がREPLACE_IF_CHANGESであることから、新しいビューは作成されませんでした。-1: ビューの作成でエラーが発生しました。-2: ビューは正常に作成されましたが、統計情報を収集できませんでした。
details: ステータスを説明するメッセージ。
必要な権限
このプロシージャを実行するユーザーには、選択したデータベースに対する CREATE VIEW 以上の権限、および組み込み MPP データソースに対する WRITE 権限と EXECUTE 権限が必要です。指定したフォルダが存在しない場合は、選択したデータベースに対する CREATE FOLDER 権限も必要です。
例
select * from discover_object_storage_mpp_procedure()
where
dir_to_explore = 's3a://bucket/dir/' and
duplicate_strategy = 'ALWAYS_REPLACE' and
sample_size = 1 and
read_from = null and
included_pattern = null and
baseview_database = 'discover_object_storage_mpp_s3_db' and
baseview_folder = '/example' and
baseview_prefix = 'bv_' and
embedded_mpp_schema = 'default' and
analyze_tables = false and
embedded_database = 'discover_object_storage_mpp_s3_db' and
embedded_name = 'embedded_mpp_s3';
これにより、 s3a://bucket/dir/ に存在するすべてのテーブルを対象として基本ビューが作成されます。これらの基本ビューは、 discover_object_storage_mpp_s3_db データベースの /example フォルダに作成され、その名前の先頭には bv_ が付記されます。基本ビューがすでに存在する場合は、新しい基本ビューで置き換えられます。これらのビューは、組み込み MPP データソース embedded_mpp_s3 の default スキーマに作成されます。
