すべてのプロダクト
Search
ドキュメントセンター

Dataphin:メタテーブルの作成と管理

最終更新日:Oct 01, 2025

メタテーブルは、データ管理を通じて管理されるクロスストレージタイプのテーブルです。メタテーブルを作成することで、開発プロセスで使用される入力テーブル、出力テーブル、およびディメンションテーブルを作成および管理できます。このトピックでは、メタテーブルの作成方法と管理方法について説明します。

メリット

メタテーブルには、次のメリットがあります。

  • セキュリティと信頼性: メタテーブルは、ネイティブの Flink DDL 文を直接記述することによって引き起こされる機密情報の漏洩を効果的に防ぎます。

  • 効率とエクスペリエンスの向上: テーブルを一度作成すれば、複数回参照できます。DDL 文を繰り返し記述したり、複雑な入力、出力、またはディメンションテーブルのマッピングを実行したりする必要はありません。これにより、開発が簡素化され、効率とエクスペリエンスが向上します。

  • アセットリネージ: メタテーブルは、上流および下流のアセットリネージ情報を維持します。

メタテーブルの機能

メタテーブルを使用すると、次のシナリオを実装できます。

  • プラットフォームベース: すべてのリアルタイムメタテーブルと関連するスキーマ情報を一元的に維持します。

  • アセットベース: リアルタイム開発プロセスでテーブルを一元的に構成および管理します。

メタテーブルページの概要

image

領域

説明

操作バー

保存、送信、非公開、更新、編集ロック、および検索操作をサポートします。

メタテーブルの基本情報

メタテーブルの基本情報。メタテーブル名、データソースタイプ、データソース名、ソーステーブル名、コネクタ名などが含まれます。

説明

メタテーブルのデータソースタイプとして Hive を選択し、ソーステーブルとして Hudi テーブルを選択した場合、コネクタdp-hudi になります。

メタテーブル構造の操作

テーブルフィールドの検索、フィールドの追加、Flink DDL のエクスポート、ソート、および解析操作をサポートします。フィールドの追加では、次のメソッドがサポートされています。

メタテーブル フィールド リスト

システムによって解析されたメタテーブルのフィールドを表示します。序数、フィールド名、メタデータかどうか、Flink フィールドタイプ、元のフィールドタイプ、説明が含まれ、編集および削除操作をサポートします。

メタテーブルを構成する

メタテーブルのプロパティの構成と、メタテーブルの履歴バージョンの表示をサポートします。

手順

ステップ 1: メタテーブルを作成する

  1. Dataphin のホームページで、上部のナビゲーションバーから [開発] > [データ開発] を選択します。

  2. 上部のナビゲーションバーからプロジェクトを選択し、左側のナビゲーションウィンドウから [データ処理] > [テーブル] を選択します。

  3. [テーブル] リストの image アイコンをクリックして、[テーブルの作成] ダイアログボックスを開きます。

  4. [テーブルの作成] ダイアログボックスで、パラメーターを構成します。

    パラメータ

    説明

    テーブルタイプ

    メタテーブルを選択します。

    メタテーブル名

    メタテーブルの名前を入力します。名前は次の要件を満たす必要があります。

    • 英字、数字、アンダースコア (_) のみを含めることができ、数字で始めることはできません。

    • 長さは 64 文字を超えることはできません。

    データソース

    ソーステーブル

    ソーステーブルを入力または選択します。

    説明

    データソースとして Hive を選択した場合、Hudi テーブルを選択することもできます。ソーステーブルのドロップダウンリストでは、Hudi テーブルには image アイコンが付いています。

    データソースとして Log ServiceDataHubKafkaElasticsearchRedis、または RabbitMQ を選択した場合、ソーステーブルの構成はサポートされていません

    ディレクトリの選択

    デフォルトの選択はテーブル管理です。テーブル管理ページでターゲットフォルダを作成し、そのターゲットフォルダをメタテーブルのディレクトリとして選択することもできます。次の手順を実行します。

    1. ページの左側にあるテーブル管理リストの上にある image アイコンをクリックして、[フォルダーの作成] ダイアログボックスを開きます。

    2. [フォルダーの作成] ダイアログボックスで、必要に応じてフォルダーの [名前][ディレクトリの選択] の場所を入力します。

    3. [OK] をクリックします。

    説明

    1,000 文字以内で簡単な説明を入力します。

  5. [OK] をクリックして、メタテーブルの作成を完了します。

ステップ 2: フィールドを追加する

Dataphin メタテーブルは、フィールドを追加するために次の 3 つのメソッドをサポートしています。

SQL インポートによるフィールドの追加

  1. リアルタイムメタテーブルページで、[+フィールドの追加] をクリックし、[SQL インポート] を選択します。

  2. [SQL インポート] ダイアログボックスで、SQL コードを記述します。

    説明
    • Dataphin は、データソースタイプに基づいて参照例を提供します。ウィンドウ内の参照例 image をクリックして、対応するコード例を表示できます。

    • コードの完成後、フォーマット image をクリックすると、ワンクリックでコードのフォーマットを調整できます。

    • [with パラメーターからパラメーター値をインポート] を選択すると、with パラメーターの値も一緒にインポートされます。

    MySQL データソースのコード例は次のとおりです。

    create table import_table (
      retailer_code INT comment ''
      ,qty_order VARCHAR comment ''
      ,cig_bar_code INT comment ''
      ,org_code INT comment ''
      ,sale_reg_code INT comment ''
      ,order_date TIMESTAMP comment ''
      ,PRIMARY KEY(retailer_code)
    ) with (
      'connector' = 'mysql'
      ,'url' = 'jdbc'
      ,'table-name' = 'ads'
      ,'username' = 'dataphin'
    );
  3. [OK] をクリックして、フィールドの追加を完了します。

バッチインポートによるフィールドの追加

  1. リアルタイムメタテーブルページで、[+フィールドの追加] をクリックし、[バッチインポート] を選択します。

  2. [バッチインポート] ダイアログボックスで、バッチインポート形式に従って SQL コードを記述します。

    • バッチインポート形式

      フィールド名||フィールドタイプ||説明||プライマリキーかどうか||メタデータかどうか
    • ID||INT||説明||false||false
      name||INT||説明||false||false
  3. [OK] をクリックして、フィールドの追加を完了します。

単一行追加によるフィールドの追加

  1. リアルタイムメタテーブルページで、[+フィールドの追加] をクリックし、[単一行追加] を選択します。

  2. [単一行追加] ダイアログボックスで、パラメーターを構成します。

    パラメータ

    説明

    メタデータかどうか

    デフォルトは「いいえ」です。はいを選択した場合、プライマリキーかどうかと元のフィールドタイプを入力する必要はありませんが、Flink SQL フィールドタイプを選択する必要があります。

    フィールド名

    フィールド名を入力します。

    フィールド名には、英字、数字、アンダースコア (_)、ピリオド (.) のみを含めることができ、数字で始めることはできません。

    プライマリキーかどうか

    必要に応じて、フィールドがプライマリキーであるかどうかを選択します。

    説明
    • データソースが Kafka で、コネクタが Kafka の場合は、メッセージキーかどうかを選択します。

    • データソースが HBase の場合は、RowKey を選択します。

    フィールドタイプと元のフィールドタイプ

    • HBase には元のフィールドタイプがありません。Flink SQL フィールドタイプを選択する必要があります。さらに、フィールドが RowKey でない場合は、カラムファミリーを入力する必要があります。

    • Flink SQL フィールドタイプとメタテーブルの元のフィールドタイプが多対一の関係にある場合は、Flink SQL フィールドタイプを選択する必要があります。元のフィールドタイプは、Flink SQL フィールドタイプからマッピングされます。この場合、元のフィールドタイプは表示のみで編集できません (Kafka など)。

    • Flink SQL フィールドタイプとこのデータソースの元のフィールドタイプが 1 対多の関係にある場合は、まず元のフィールドタイプを選択します。元のフィールドタイプを選択した後、編集が許可され、手動で精度を追加できます (MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Hive、その他のデータソースなど)。

  3. [OK] をクリックして、フィールドの追加を完了します。

ステップ 3: メタテーブルのプロパティを構成する

  1. メタテーブルを作成した後、右側の [プロパティ] ボタンをクリックして、[基本情報][メタテーブルパラメーター][リファレンス] を構成し、[デバッグテスト] データテーブルを変更します。

    パラメータ

    説明

    [基本情報]

    [メタテーブル名]

    デフォルトは作成されたメタテーブルの名前であり、変更できません。

    [データソース]

    デフォルトは作成されたデータソースタイプです。

    [データソースパラメータ]

    異なるコンピュートエンジンは異なるデータソースをサポートし、異なるデータソースは異なる構成パラメータを必要とします。詳細については、「付録: メタテーブルデータソースの構成パラメータ」をご参照ください。

    [説明]

    メタテーブルの説明を 1,000 文字以内で入力します。

    [メタテーブルパラメータ]

    [パラメータ名]

    データソースタイプに基づいて、異なるメタテーブルパラメーターが提供されます。ドロップダウンから選択して、データソースでサポートされているメタテーブルパラメーターとその対応する説明を取得するか、手動で入力できます。パラメーターを追加するには、[パラメーターの追加] をクリックします。

    パラメーターの数は 50 を超えることはできません。パラメーター名には、数字、文字、アンダースコア (_)、ハイフン (-)、ピリオド (.)、コロン (:)、およびスラッシュ (/) のみを含めることができます。

    [パラメータ値]

    パラメーター値は、パラメータータイプに基づいてオプションを提供します。オプションがない場合は、手動で入力する必要があります。単一引用符はサポートされていません。例: パラメーター名: address、パラメーター値: Ningbo。

    [アクション]

    image をクリックすると、対応するパラメータを削除できます。

    [参照]

    [flink タスク名]

    このメタテーブルを参照する Flink タスクの名前を表示します。

    説明

    下書きタスクは参照情報に含まれません。

    [タスクデバッグ中のデフォルト読み取り]

    タスクのデバッグ中にデフォルトで読み取られるデータテーブルを設定します。本番テーブルまたは開発テーブルのいずれかを選択できます。

    本番テーブルを読み取るように選択した場合、デバッグ中に対応する本番テーブルからデータを読み取ることができ、データ漏洩のリスクがあります。注意して進めてください。

    デバッグ中にタスクがデフォルトで本番テーブルを読み取るように設定した場合、個人アカウントに開発および本番データソースの権限を申請する必要があります。データソースの権限を申請する方法については、「データソース権限の申請」をご参照ください。

    説明

    Hive テーブルと Paimon テーブルは現在デバッグをサポートしていません。

    [開発環境テスト中の読み取り]

    タスクのテスト中にデフォルトで読み取られるデータテーブルを設定します。本番テーブルまたは開発テーブルのいずれかを選択できます。

    本番テーブルを読み取るように選択した場合、テスト中に対応する本番テーブルからデータを読み取ることができ、データ漏洩のリスクがあります。注意して進めてください。

    テスト中に開発環境がデフォルトで本番テーブルを読み取るように設定した場合、個人アカウントに開発および本番データソースの権限を申請する必要があります。データソースの権限を申請する方法については、「データソース権限の申請」をご参照ください。

    [開発環境テスト中の書き込み]

    現在のソーステーブルまたは別のテストテーブルのいずれかを選択できます。別のテストテーブルを選択した場合は、対応するテーブルを選択する必要があります。

  2. [OK] をクリックします。

ステップ 4: メタテーブルを送信または公開する

  1. メタテーブルページの左上にあるメニューバーで [送信] をクリックします。

  2. [送信の備考] ダイアログボックスに、備考を入力します。

  3. [OK および送信] をクリックします。

image

プロジェクトモードが Dev-Prod の場合、メタテーブルを本番環境に公開する必要があります。詳細については、「公開タスクの管理」をご参照ください。

付録: メタテーブルデータソースの構成パラメータ

データソース

構成

説明

MaxCompute

  • ソーステーブル

  • blinkType

ソーステーブル: データのソーステーブル。

blinkType: odps または continuous-odps を選択できます。

  • odps: ソーステーブルとして、データを完全に読み取り、結果テーブルとして使用できます。

  • continuous-odps: ソーステーブルとして、データを増分的に読み取り、結果テーブルとして使用することはできません。

  • Tablestore

  • StarRocks

  • Lindorm (ワイドテーブル)

  • Hologres

  • ClickHouse

  • AnalyticDB for PostgreSQL

  • AnalyticDB for MySQL 3.0

  • Doris

  • Hive

  • Paimon

  • RocketMQ

  • PolarDB-X (旧 DRDS)

  • Aliyun HBase

ソーステーブル

ソーステーブル: データのソーステーブル。

SAP HAHA

  • ソーステーブル

  • 更新時間フィールド

ソーステーブル: データのソーステーブル。

更新時間フィールド: SAP HAHA テーブルで更新時間を示すタイムスタンプタイプのフィールドを選択するか、HANA SQL 時間文字列式 (例: concat(column_date,column_time)) を入力します。

  • Log Service

  • DataHub

ソース Topic

ソース Topic: データのソース Topic。

  • MySQL

  • PostgreSQL

  • Oracle

  • TiDB

  • OceanBase

  • MongoDB

  • Microsoft SQL Server

  • ソーステーブル

  • 読み取りモード

  • ソーステーブル: データのソーステーブル。

  • 読み取りモード: JDBC 読み取り/書き込みテーブルまたは CDC ソーステーブルを選択できます。

    • JDBC 読み取り/書き込みテーブル: JDBC を使用して、テーブルクエリ、テーブル書き込み、ストリーム書き込み、バッチ読み取り/書き込みなどをサポートします。

    • CDC ソーステーブル: 増分ストリーミング読み取り。

Kafka

  • ソース Topic

  • コネクタ

  • メッセージ形式

  • ソーステーブル: データのソーステーブル。

  • connector: kafka または upsert-kafka を選択できます。

  • メッセージ本文の形式: サポートされている形式は、csv、jsonavro、avro-confluent、debezium-json、canal-json、canal-json-insert、maxwell-json、ogg-json、dataphin-canal-json、raw、protobuf、またはカスタムです。

  • プライマリキーメッセージ形式: コネクタを upsert-kafka に設定した場合は、このパラメーターを構成する必要があります。サポートされている形式は、csv、json、avro、avro-confluent、debezium-json、protobuf、またはカスタムです。

    重要
    • dataphin-canal-json は、リアルタイムで kafka に統合されたデータを処理するために使用されます。

    • カスタム入力の場合、カスタムデータ形式が jar ファイルにパッケージ化され、追加の依存ファイルとして Flink タスクにアップロードされていることを確認してください。そうしないと、コードが正しく参照または実行されない可能性があります。

Hudi

  • ソーステーブル

  • Hudi テーブルタイプ

  • ソーステーブル: データのソーステーブル。

  • Hudi テーブルタイプ: MERGE_ON_READ または COPY_ON_WRITE を選択できます。

    • MERGE_ON_READ: 書き込みと更新の待機時間が短く、読み取りの待機時間が長い。

    • COPY_ON_WRITE: 書き込みと更新の待機時間が長く、読み取りの待機時間が短い。

Elasticsearch

  • コネクタ

  • index

  • typeName

  • connector: Elasticsearch、Elasticsearch-6、または Elasticsearch-7 を選択できます。

    • ソーステーブルまたはディメンションテーブルとして使用する場合、Elasticsearch を選択します。

      説明

      Alibaba Cloud Elasticsearch のみサポートされています。

    • シンクテーブルとして使用する場合、Elasticsearch-6 または Elasticsearch-7 を選択します。

  • index: ソースインデックスを入力または選択します。

  • typeName: typeName を入力または選択します。

Redis

なし

RabbitMQ

  • Exchange

  • Queue

  • ルーティングタグ

  • Exchange: Exchange を入力または選択します。

  • キュー: キューを入力または選択します。

  • ルーティングタグ (オプション): routingKey を入力します。

次のステップ

メタテーブルを作成した後、それに基づいてリアルタイムタスクを開発できます。詳細については、以下をご参照ください。