Template Google Cloud ke Neo4j

Template Google Cloud ke Neo4j memungkinkan Anda mengimpor set data ke database Neo4j melalui tugas Dataflow, yang mengambil data dari file CSV yang dihosting di bucket Cloud Storage. API ini juga memungkinkan Anda memanipulasi dan mengubah data pada berbagai langkah impor. Anda dapat menggunakan template untuk impor pertama kali dan impor inkremental.

Persyaratan pipeline

  • Instance Neo4j yang sedang berjalan
  • Bucket Cloud Storage
  • Set data yang akan diimpor, dalam bentuk file CSV
  • File spesifikasi tugas yang akan digunakan

Membuat file spesifikasi tugas

File spesifikasi tugas terdiri dari objek JSON dengan bagian berikut:

  • config: flag global yang memengaruhi cara impor dilakukan.
  • sources: definisi sumber data (relasional).
  • targets: definisi target data (grafik: node/hubungan).
  • actions: tindakan pra/pasca-muat.

Untuk informasi selengkapnya, lihat Membuat file spesifikasi tugas dalam dokumentasi Neo4j.

Parameter template

Parameter yang diperlukan

  • jobSpecUri : Jalur ke file spesifikasi tugas, yang berisi konfigurasi untuk metadata sumber dan target.

Parameter opsional

  • neo4jConnectionUri : Jalur ke file JSON metadata koneksi Neo4j.
  • neo4jConnectionSecretId : ID rahasia untuk metadata koneksi Neo4j. Ini adalah alternatif untuk opsi jalur GCS.
  • optionsJson : JSON opsi. Menggunakan token runtime. (Contoh: {token1:value1,token2:value2}). Default-nya adalah kosong.
  • readQuery : Ganti kueri SQL. Default-nya adalah kosong.
  • inputFilePattern : Ganti pola file teks (Contoh: gs://your-bucket/path/*.json). Default-nya adalah kosong.
  • disabledAlgorithms : Algoritma yang dipisahkan koma untuk dinonaktifkan. Jika nilai ini disetel ke none, tidak ada algoritma yang dinonaktifkan. Gunakan parameter ini dengan hati-hati, karena algoritma yang dinonaktifkan secara default mungkin memiliki kerentanan atau masalah performa. (Contoh: SSLv3, RC4).
  • extraFilesToStage : Jalur Cloud Storage yang dipisahkan koma atau secret Secret Manager untuk file yang akan di-stage di pekerja. File ini disimpan di direktori /extra_files di setiap pekerja. (Contoh: gs://

Menjalankan template

Konsol

  1. Buka halaman Create job from template Dataflow.
  2. Buka Buat tugas dari template
  3. Di kolom Nama tugas, masukkan nama tugas yang unik.
  4. Opsional: Untuk Endpoint regional, pilih nilai dari menu drop-down. Region defaultnya adalah us-central1.

    Untuk mengetahui daftar region tempat Anda dapat menjalankan tugas Dataflow, lihat Lokasi Dataflow.

  5. Dari menu drop-down Dataflow template, pilih the Google Cloud to Neo4j template.
  6. Di kolom parameter yang disediakan, masukkan nilai parameter Anda.
  7. Klik Run job.

gcloud

Di shell atau terminal, jalankan template:

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,\

Ganti kode berikut:

  • JOB_NAME: nama tugas unik pilihan Anda
  • VERSION: versi template yang ingin Anda gunakan

    Anda dapat menggunakan nilai berikut:

  • REGION_NAME: region tempat Anda ingin men-deploy tugas Dataflow—misalnya, us-central1
  • JOB_SPEC_URI: jalur ke file spesifikasi tugas
  • NEO4J_CONNECTION_URI: jalur ke metadata koneksi Neo4j

API

Untuk menjalankan template menggunakan REST API, kirim permintaan POST HTTP. Untuk mengetahui informasi selengkapnya tentang API dan cakupan otorisasinya, lihat 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" }
  }
}

Ganti kode berikut:

  • PROJECT_ID: ID project Google Cloud tempat Anda ingin menjalankan tugas Dataflow
  • JOB_NAME: nama tugas unik pilihan Anda
  • VERSION: versi template yang ingin Anda gunakan

    Anda dapat menggunakan nilai berikut:

  • LOCATION: region tempat Anda ingin men-deploy tugas Dataflow—misalnya, us-central1
  • JOB_SPEC_URI: jalur ke file spesifikasi tugas
  • NEO4J_CONNECTION_URI: jalur ke metadata koneksi Neo4j

Langkah selanjutnya