4.4.1 グラフをロードするためのJSON構成の作成

JSON構成の使用によるプロパティ・グラフ・スキーマからのグラフのロード

グラフ・サーバー(PGX)では、プロパティ・グラフ・スキーマを使用してOracle Databaseからプロパティ・グラフをロードできます。

グラフ構成ファイルを作成してグラフをロードできます。次に、キーストアを使用してデータベースに接続するグラフ構成ファイルの例を示します。キーストアの使用方法の詳細は、キーストアへのデータベース・パスワードの格納を参照してください。

{
  "name": "BANK_ACCOUNTS",
  "format": "pg",
  "db_engine": "rdbms",
  "jdbc_url": "jdbc:oracle:thin:@localhost:1521/orclpdb",
  "username":"graphuser",
  "keystore_alias":"database1",
  "vertex_props": [
    {
      "name": "ID",
      "type": "integer"
    },
    {
      "name": "NAME",
      "type": "string"
    }
  ],
  "edge_props": [
    {
      "name": "AMOUNT",
      "type": "float"
    },
    {
      "name": "DESCRIPTION",
      "type": "string"
    }
  ],
  "partition_while_loading": "by_label",
  "loading":{
    "load_edge_label":true,
    "load_vertex_labels": true,
    "create_vertex_id_mapping": true,
    "create_edge_id_mapping": true
  }
}

グラフをメモリーに読み込むためのPgxSession APIメソッドの詳細は、グラフをメモリーにロードするためのAPIを参照してください。

これで、次に示すPgxSession APIメソッドを使用して、グラフをグラフ・サーバー(PGX)に読み込むことができます。

opg4j> var g = session.readGraphWithProperties("bank_graph.json")
PgxGraph g = session.readGraphWithProperties("bank_graph.json");
g = session.read_graph_with_properties("bank_graph.json")

JSON構成の使用によるパーティション化されたグラフのロード

パーティション化されたグラフをグラフ・サーバー(PGX)にロードするために、ロードするグラフに関するメタデータが含まれるグラフ構成ファイルを作成できます。

パーティション化されたグラフの構成ファイルの例を次に示します。

{
  "name": "bank_graph_analytics",
  "vertex_providers":[
        {
            "name":"Accounts",
            "format":"rdbms",
            "database_table_name":"BANK_NODES",
            "key_column":"ID",
            "key_type": "integer"
        }
    ],
    "edge_providers":[
        {
            "name":"Transfers",
            "format":"rdbms",
            "database_table_name":"BANK_EDGES_AMT",
            "key_column":"ID",
            "source_column":"SRC_ID",
            "destination_column":"DEST_ID",
            "source_vertex_provider":"Accounts",
            "destination_vertex_provider":"Accounts",
            "props":[
                {
                        "name":"AMOUNT",
                        "type":"float"
                }
            ]
        }
    ]
}

パーティション化されたグラフの構成オプションの詳細は、グラフ構成のオプションを参照してください。

これで、次に示すように、グラフをグラフサーバーに読み込むことができます。

opg4j> var g = session.readGraphWithProperties("bank_graph_analytics.json")
PgxGraph g = session.readGraphWithProperties("bank_graph_analytics.json");
g = session.read_graph_with_properties("bank_graph_analytics.json")