Hologres 内部テーブルは、データ定義言語 (DDL) ステートメント、または DataWorks が提供するビジュアルインターフェイスを使用して作成できます。このトピックでは、DataWorks のビジュアルインターフェイスを使用して Hologres 内部テーブルを作成する方法について説明します。
前提条件
Hologres コンピューティングリソースをワークスペースに追加し、DataStudio にバインドしておく必要があります。詳細については、「旧バージョンの DataStudio: Hologres コンピューティングリソースのバインド」をご参照ください。
[スペースマネージャー] または [Development] ロールが必要です。ロールの付与方法の詳細については、「ワークスペースレベルのサービスに対する権限の管理」をご参照ください。
背景情報
Hologres は、内部テーブルと外部テーブルの 2 種類のテーブルをサポートしています。それぞれの違いは次のとおりです:
内部テーブル は、MaxCompute から直接データを保存します。MaxCompute のソーステーブルから Hologres 内部テーブルにデータを同期することで、高速なクエリと分析を実現できます。この方法では、外部テーブルを使用する場合よりもクエリパフォーマンスが向上します。
外部テーブル は、データを直接保存しません。代わりに、MaxCompute のソーステーブルにマッピングして、データクエリと分析を高速化します。この方法では、データの冗長性を回避し、データのインポートとエクスポートが不要になるため、クエリ結果を迅速に取得できます。
データ開発および処理プラットフォームである DataWorks では、テーブル作成用の便利なビジュアルインターフェイスを利用できます。また、DDL ステートメントを使用して、Hologres で直接テーブルを作成することもできます。詳細については、「CREATE TABLE」をご参照ください。
制限事項
この機能は、中国 (上海) リージョンと中国 (北京) リージョンでのみ利用できます。
操作手順
[DataStudio] に移動します。
DataWorks コンソール にログインします。上部のナビゲーションバーで目的のリージョンを選択します。左側のナビゲーションウィンドウで、 を選択します。表示されたページで、ドロップダウンリストから目的のワークスペースを選択し、[Go to Data Integration] をクリックします。
[ワークフロー] を作成します。
既存の [ワークフロー] がある場合は、このステップをスキップします。
アイコンにカーソルを合わせ、[ワークフローの作成] を選択します。[ワークフローの作成] ダイアログボックスで、[ワークフロー名] を入力します。
[作成] をクリックします。
Hologres 内部テーブルを作成します。
アイコンにマウスポインターを合わせ、 を選択します。[Create Table] ダイアログボックスで、[Table Type] を [Internal Table] に設定し、テーブルのエンジン、パス、名前を設定します。
エンジンインスタンス には、Hologres を選択します。設定が完了したら、作成 をクリックします。
Hologres 内部テーブルを設定します。
設定ページで、Hologres 内部テーブルのプロパティを設定します。
基本プロパティを設定します。
次の表に、主な基本プロパティを示します。
パラメータ
説明
[Storage Mode]
Hologres でのテーブルの保存形式です。デフォルトは、列指向ストレージです。
[Column-oriented Storage]:オンライン分析処理 (OLAP) シナリオに適しています。複雑なクエリ、データ結合、スキャン、フィルタリング、集計に最適です。書き込みおよび更新のパフォーマンスは、行指向ストレージよりも低くなります。
[Row-oriented Storage]:キーバリュー (KV) シナリオに適しています。プライマリキーに基づくポイントルックアップとスキャンに最適です。書き込みおよび更新のパフォーマンスがより優れています。
[Hybrid Row-column Storage]:列指向ストレージと行指向ストレージの両方が必要なシナリオに適しています。高パフォーマンスのポイントルックアップと OLAP 分析の両方をサポートします。このモードでは、より高いストレージオーバーヘッドと内部データ同期コストが発生します。
説明ストレージ形式の詳細については、「CREATE TABLE」の
orientationパラメーターの説明をご参照ください。[Lifecycle]
テーブルのライフサイクル (秒単位) です。デフォルトでは、ライフサイクルは無期限です。
説明ライフサイクルのカウントダウンは、テーブルに最初にデータが書き込まれたときに開始されます。指定されたライフサイクルが終了すると、テーブルデータはランダムな期間内にクリアされます。
[Binlog]
テーブルのバイナリログを有効にするかどうかを指定します。バイナリログを有効にする場合は、そのライフサイクルを指定する必要があります。デフォルトでは、バイナリログのライフサイクルは無期限です。
説明テーブルレベルのバイナリログ機能は、Hologres V0.9 以降のバージョンでのみサポートされています。バイナリログの詳細については、「Hologres バイナリログのサブスクライブ」をご参照ください。
ビジネス情報を設定します。
説明テーブルのビジネス情報は管理目的のみであり、基盤となるロジックには影響しません。
パラメータ
説明
テーマ
テーブルが属するプライマリフォルダとセカンダリフォルダです。ビジネス目的に基づいてテーブルを分類し、同じタイプのテーブルを同じフォルダに割り当てることができます。
説明プライマリテーマとセカンダリテーマは DataWorks におけるフォルダの表現であり、テーブルをより適切に管理するために使用されます。
[Layer]
テーブルの物理データウェアハウス階層です。レイヤーは、データウェアハウス階層を定義および管理するもので、通常、ODS 層、共通層、分析層が含まれます。ビジネスニーズに基づいて、テーブルを適切なレイヤーに割り当てることができます。
説明
アイコンをクリックして、レイヤーをカスタマイズします。詳細については、「テーブルの管理」をご参照ください。[物理カテゴリ]
テーブルの物理カテゴリです。ビジネスの観点から、より詳細な分類に使用されます。一般的なカテゴリには、基本ビジネス、高度なビジネス、その他があります。
説明
アイコンをクリックして、物理カテゴリをカスタマイズします。詳細については、「カテゴリの管理」をご参照ください。テーブルスキーマを設定します。
パラメータ
説明
[Field Design]
テーブルのフィールドを追加および定義します。Hologres がサポートするデータ型の詳細については、「データ型の概要」をご参照ください。
[Storage Design]
テーブルフィールドのストレージ方法を定義します。
[Distribution Column]:テーブルの分散戦略を指定します。データは、分散列に基づいて異なるシャードに分散されます。計算やスキャンなどの後続の操作は、シャードレベルで実行されます。
[Segment key]:通常、時間関連の列をセグメント列として指定します。クエリにこの列が含まれている場合、システムはデータの保存場所を迅速に特定できます。これは、ログやトラフィックデータなど、時間との関連性が強いデータに適しています。
[Clustering Key]:指定された列にクラスター化インデックスを作成するために使用されます。Hologres は、クラスター化インデックスに基づいてデータをソートし、インデックス付き列の範囲およびフィルタクエリを高速化します。
[Dictionary Encoding Columns]:指定された列の値の辞書マッピングを構築するために使用されます。辞書エンコーディングにより、文字列比較を数値比較に変換し、
GROUP BYやFILTERなどのクエリを高速化できます。[Bitmap Column]:ビットエンコード列とも呼ばれ、ストレージファイル内のデータの高速な等価フィルタリングを可能にします。そのため、等価フィルタ条件で頻繁に使用されるデータには、ビットマップインデックスを作成することを推奨します。
ストレージ方法の詳細については、「CREATE TABLE」をご参照ください。
[Partition]
テーブルのパーティションフィールドを定義します。
説明パーティションテーブルにプライマリキーがある場合、プライマリキーにはパーティションフィールドを含める必要があります。
Hologres 内部テーブルをコミットして公開します。
テーブルスキーマを定義したら、開発環境と本番環境にコミットする必要があります。コミットが正常に完了すると、その環境のエンジンプロジェクトでテーブルを表示できます。
説明ワークスペースが基本モードの場合、テーブルを本番環境にのみコミットする必要があります。基本モードと標準モードのワークスペースの違いの詳細については、「ワークスペースモード間の違い」をご参照ください。
操作
説明
[Load from Development Environment]
開発環境からテーブルの情報を読み込み、現在のページに表示します。
説明この操作は、テーブルが開発環境にコミットされた後にのみ実行できます。この操作を実行すると、開発環境からのテーブル情報が現在のページの情報を上書きします。
[Commit to Development Environment]
テーブルを DataWorks の開発環境にコミットします。これにより、開発環境の Hologres データベースに現在のテーブルが作成されます。
コミット後、DataStudio の対応するワークフローの Hologres ディレクトリでテーブルスキーマを表示できます。ワークフローは、テーブル作成時に選択したパスで決まります。
[Load from Production Environment]
本番環境からテーブルの情報を読み込み、現在のページに表示します。
説明この操作は、テーブルが本番環境にコミットされた後にのみ実行できます。この操作を実行すると、本番環境からのテーブル情報が現在のページの情報を上書きします。
[Commit to Production Environment]
テーブルを DataWorks の本番環境にコミットします。これにより、本番環境の Hologres データベースに現在のテーブルが作成されます。
次のステップ
Hologres 内部テーブルを作成した後、次の操作を実行できます。
Hologres でデータ開発タスクを実行します。詳細については、「Hologres SQL ノード」および「Hologres SQL」をご参照ください。
Hologres 外部テーブルを使用して、MaxCompute データを Hologres 内部テーブルに定期的にインポートします。
コマンドを使用してデータをインポートします。詳細については、「SQL を使用した MaxCompute からのデータインポート」をご参照ください。
DataWorks のビジュアルインターフェイスを使用してデータをインポートします。詳細については、「MaxCompute のワンクリック同期ノード」をご参照ください。