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

DataWorks:Maxgraph

最終更新日:Mar 01, 2026

DataWorks の Data Integration は、Maxgraph Writer を使用して、MaxCompute テーブルから Maxgraph にデータをインポートします。この Topic では、Maxgraph Writer のデータ書き込み機能について説明します。

制限事項

  • Maxgraph Writer はスクリプトモードのみをサポートします。

  • Maxgraph Writer は、主に MaxCompute から Maxgraph にデータを同期するために使用されます。

事前準備

MaxCompute テーブルから Maxgraph にデータをインポートするには、ソース MaxCompute プロジェクトのソーステーブルに対する読み取り権限を Maxgraph ビルドアカウントに付与する必要があります。ビルドアカウントの名前を取得するには、ご利用の Maxgraph 管理者にお問い合わせください。

データ同期タスクの開発

同期タスクの設定のエントリポイントと手順については、以下の設定ガイドをご参照ください。

付録:Maxgraph のスクリプトデモとパラメーターの説明

コードエディタを使用したバッチ同期タスクの設定

コードエディタを使用してバッチ同期タスクを設定する場合、統一されたスクリプトフォーマットの要件に基づいて、スクリプト内の関連パラメーターを設定する必要があります。詳細については、「コードエディタでのタスクの設定」をご参照ください。以下では、コードエディタを使用してバッチ同期タスクを設定する際に、データソースに対して設定する必要があるパラメーターについて説明します。

Writer スクリプトデモ

Maxgraph の頂点とエッジのインポート設定は異なります。そのため、Maxgraph Writer は頂点とエッジを区別します。

  • 頂点設定の例

    {
      "job": {
        "setting": {
          "speed": {
            "channel": 1 // チャンネルを 1 に設定します。
          },
          "errorLimit": {
            "record": 1000
          }
        },
        "content": [
          {
            "reader": {
              "name": "odpsreader",
              "parameter": {
                "accessId": "*****",
                "accessKey": "*****",
                "project": "maxgraph_dev",
                "table": "maxgraph_demo_person",
                "column": [ // MaxCompute テーブルの列名。これらの列は、writer 設定の列と 1 対 1 で対応します。
                  "id",
                  "name",
                  "age"
                ],
                "packageAuthorizedProject": "biggraph_dev",
                "splitMode": "record",
                "odpsServer": "******"
              }
            },
            "writer": {
              "name": "maxgraphwriter",
              "parameter": {
                "endpoint": "http://graph.alibaba.net",
                "graphName": "xxx",
                "accessId": "xxx",
                "accessKey": "xxx",
                "label": "person",
                "labelType": "vertex",
                "onlineMode": "partition",
                "splitSize": "256",
                "column": [ // Maxgraph 頂点のプロパティ名。これらのプロパティは、reader 設定の列と 1 対 1 で対応します。
                  "id",
                  "name",
                  "age"
                ]
              }
            }
          }
        ]
      }
    }
                            
  • エッジ設定の例

    {
      "job": {
        "setting": {
          "speed": {
            "channel": 1 // チャンネルを 1 に設定します。
          },
          "errorLimit": {
            "record": 1000
          }
        },
        "content": [
          {
            "reader": {
              "name": "odpsreader",
              "parameter": {
                "accessId": "*****",
                "accessKey": "*****",
                "project": "maxgraph_dev",
                "table": "maxgraph_demo_knows",
                "column": [
                  "person_id",
                  "person_id2",
                  "weight",
                  "id"
                ],
                "packageAuthorizedProject": "biggraph_dev",
                "splitMode": "record",
                "odpsServer": "****"
              }
            },
            "writer": {
              "name": "maxgraphwriter",
              "parameter": {
                "endpoint": "http://graph.alibaba.net",
                "graphName": "xxx",
                "accessId": "xxx",
                "accessKey": "xxx",
                "label": "knows",
                "labelType": "edge",
                "srcLabel": "person",
                "dstLabel": "person",
                "onlineMode": "partition",
                "splitSize": "256",
                "column": [ 
                  {
                    "name": "id", // グラフ内の対応するプロパティ名。
                    "propertyType": "srcPrimaryKey" // プロパティのタイプ。ソース頂点、宛先頂点、またはエッジプロパティのいずれであるかを識別するために使用されます。
                  },
                  {
                    "name": "id",
                    "propertyType": "dstPrimaryKey"
                  },
                  {
                    "name": "weight",
                    "propertyType": "edgeProperty"
                  },
                  {
                    "name": "id",
                    "propertyType": "edgeProperty"
                  }
                ]
              }
            }
          }
        ]
      }
    }

Writer スクリプトパラメーター

パラメーター

説明

必須

デフォルト値

endpoint

Maxgraph の URL。

はい

なし

graphName

グラフインスタンスの名前。

はい

なし

accessId

ユーザー名。

はい

なし

accessKey

ユーザーのパスワード。

はい

なし

label

ラベル名。頂点またはエッジの名前です。

はい

なし

labelType

ラベルタイプ。有効値:vertex および edge。

はい

なし

srcLabel

エッジのソース頂点のラベル。このパラメーターは、エッジをインポートする場合にのみ使用されます。

はい

なし

dstLabel

エッジの宛先頂点のラベル。このパラメーターは、エッジをインポートする場合にのみ使用されます。

はい

なし

splitSize

データ作成時の MapReduce ジョブのシャードサイズ。

いいえ

256 MB

onlineMode

データ公開モード。有効値:partition および type。違いは次のとおりです:

  • partition:公開プロセス中、クエリは古いデータと新しいデータが混在した結果を返す場合があります。結果整合性が保証されます。このモードはより高速です。

  • type:新しいデータは、公開された後にのみクエリできます。公開プロセス中、古いデータが存在する場合、クエリは古いデータのみを返します。このモードはより低速です。

いいえ

type

column

頂点のプロパティ名。このパラメーターは、頂点をインポートする場合にのみ使用されます。

はい

なし

name

プロパティの名前。

エッジをインポートする場合にのみ必須です。

なし

propertyType

プロパティのタイプ。有効値:srcPrimaryKey、dstPrimaryKey、および edgeProperty。

エッジをインポートする場合にのみ必須です。

なし

srcPrimaryKey

ソース頂点のプライマリキー。このパラメーターは、エッジをインポートする場合にのみ使用されます。

エッジをインポートする場合にのみ必須です。

なし

dstPrimaryKey

宛先頂点のプライマリキー。このパラメーターは、エッジをインポートする場合にのみ使用されます。

エッジをインポートする場合にのみ必須です。

なし

edgeProperty

エッジのプロパティ。エッジにプロパティがない場合、このパラメーターはオプションです。

いいえ

なし