USER MANUALS

DISCOVER_OBJECT_STORAGE_MPP_TABLES

説明

ストアドプロシージャ DISCOVER_OBJECT_STORAGE_MPP_TABLES では、ユーザーが指定したフォルダから分散ストレージのスキャンが開始され、フォルダまたはサブフォルダに見つかった Parquet データセットごとに、それに対応する基本ビューが 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_data_source_database : varchar
    , embedded_data_source_name : varchar
)
  • dir_to_explore: 分散ストレージのパス上で、メタデータ検出プロセスの開始場所とするディレクトリ (s3awasbabfs)。

  • duplicate_strategy (オプション): Denodo 組み込み MPP および Denodo VDP に既に存在するメタデータをどのように扱うかを選択します。指定できる値は NEVER_REPLACEREPLACE_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_data_source_database (オプション): 組み込み MPP データソースが存在するデータベース。デフォルト値: admin_denodo_mpp

  • embedded_data_source_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_s3default スキーマに作成されます。

Add feedback