Google Cloud 到 Neo4j 範本

透過「to Neo4j」範本 Google Cloud ,您可以透過 Dataflow 工作將資料集匯入 Neo4j 資料庫,並從 Cloud Storage bucket 中代管的 CSV 檔案取得資料。您也可以在匯入資料的各個步驟中,操控及轉換資料。您可以將範本用於首次匯入和增量匯入。

管道相關規定

  • 正在執行的 Neo4j 執行個體
  • Cloud Storage bucket
  • 要匯入的資料集 (CSV 檔案形式)
  • 要使用的工作規格檔案

建立工作規格檔案

工作規格檔案包含 JSON 物件,其中含有下列區段:

  • config:影響匯入作業方式的全域標記。
  • sources:資料來源定義 (關聯式)。
  • targets:資料目標定義 (圖表:節點/關係)。
  • actions:載入前/後動作。

詳情請參閱 Neo4j 說明文件中的「建立工作規格檔案」。

範本參數

必要參數

  • jobSpecUri:工作規格檔案的路徑,內含資料來源、Neo4j 目標和動作的 JSON 說明。

選用參數

  • neo4jConnectionUri:Neo4j 連線 JSON 檔案的路徑。
  • neo4jConnectionSecretId:Neo4j 連線中繼資料的密鑰 ID。您可以將這個值做為 neo4jConnectionUri 的替代值。
  • optionsJson:JSON 物件,也稱為執行階段權杖。例如 {token1:value1,token2:value2}. Spec can refer to $token1 and $token2.。預設為空白。
  • readQuery:覆寫 SQL 查詢。預設為空白。
  • inputFilePattern:文字檔案路徑覆寫,例如 gs://your-bucket/path/*.json。預設為空白。
  • disabledAlgorithms:以半形逗號分隔要停用的演算法。如果此值設為 none,則不會停用任何演算法。請謹慎使用這個參數,因為預設停用的演算法可能存在安全漏洞或效能問題。例如:SSLv3, RC4
  • extraFilesToStage:以半形逗號分隔的 Cloud Storage 路徑或 Secret Manager 密鑰,用於在工作站中暫存檔案。這些檔案會儲存在每個工作站的 /extra_files 目錄中。例如:gs://<BUCKET_NAME>/file.txt,projects/<PROJECT_ID>/secrets/<SECRET_ID>/versions/<VERSION_ID>

執行範本

控制台

  1. 前往 Dataflow 的「Create job from template」(透過範本建立工作) 頁面。
  2. 前往「依據範本建立工作」
  3. 在「工作名稱」欄位中,輸入專屬工作名稱。
  4. 選用:如要使用區域端點,請從下拉式選單中選取值。預設區域為 us-central1

    如需可執行 Dataflow 工作的地區清單,請參閱「Dataflow 位置」。

  5. 從「Dataflow template」(Dataflow 範本) 下拉式選單中選取 the Google Cloud to Neo4j template。
  6. 在提供的參數欄位中輸入參數值。
  7. 按一下「Run Job」(執行工作)

gcloud

在殼層或終端機中執行範本:

gcloud dataflow flex-template run JOB_NAME \
    --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/VERSION/flex/Google_Cloud_to_Neo4j \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    --parameters \
       jobSpecUri=JOB_SPEC_URI,\
       neo4jConnectionUri=NEO4J_CONNECTION_URI,\

更改下列內容:

  • JOB_NAME: 您選擇的不重複工作名稱
  • VERSION: 您要使用的範本版本

    您可以使用下列值:

  • REGION_NAME: 您要部署 Dataflow 工作的地區,例如 us-central1
  • JOB_SPEC_URI:工作規格檔案的路徑
  • NEO4J_CONNECTION_URI:Neo4j 連線中繼資料的路徑

API

如要使用 REST API 執行範本,請傳送 HTTP POST 要求。如要進一步瞭解 API 和授權範圍,請參閱 projects.templates.launch

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch
{
   "launchParameter": {
     "jobName": "JOB_NAME",
     "parameters": {
       "jobSpecUri": "JOB_SPEC_URI",
       "neo4jConnectionUri": "NEO4J_CONNECTION_URI",
     },
     "containerSpecGcsPath": "gs://dataflow-templates-LOCATION/VERSION/flex/Google_Cloud_to_Neo4j",
     "environment": { "maxWorkers": "10" }
  }
}

更改下列內容:

  • PROJECT_ID: 您要執行 Dataflow 工作的專案 ID Google Cloud
  • JOB_NAME: 您選擇的不重複工作名稱
  • VERSION: 您要使用的範本版本

    您可以使用下列值:

  • LOCATION: 您要部署 Dataflow 工作的地區,例如 us-central1
  • JOB_SPEC_URI:工作規格檔案的路徑
  • NEO4J_CONNECTION_URI:Neo4j 連線中繼資料的路徑

後續步驟