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. Template 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 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-pemuatan.
Untuk mengetahui informasi selengkapnya, lihat Membuat file spesifikasi tugas dalam dokumentasi Neo4j.
Parameter template
Parameter yang diperlukan
- jobSpecUri: Jalur ke file spesifikasi tugas, yang berisi deskripsi JSON tentang sumber data, target Neo4j, dan tindakan.
Parameter opsional
- neo4jConnectionUri: Jalur ke file JSON koneksi Neo4j.
- neo4jConnectionSecretId: ID secret untuk metadata koneksi Neo4j. Anda dapat menggunakan nilai ini sebagai alternatif untuk
neo4jConnectionUri. - optionsJson: Objek JSON yang juga disebut token runtime Misalnya,
{token1:value1,token2:value2}. Spec can refer to $token1 and $token2.. Nilai defaultnya adalah kosong. - readQuery: Penggantian kueri SQL. Nilai defaultnya adalah kosong.
- inputFilePattern: Penggantian jalur file teks Misalnya,
gs://your-bucket/path/*.json. Nilai defaultnya adalah kosong. - disabledAlgorithms: Algoritma yang dipisahkan koma yang akan 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 atau secret Secret Manager yang dipisahkan koma untuk file yang akan di-stage di worker. File ini disimpan di direktori /extra_files di setiap worker. Misalnya,
gs://<BUCKET_NAME>/file.txt,projects/<PROJECT_ID>/secrets/<SECRET_ID>/versions/<VERSION_ID>.
Menjalankan template
Konsol
- Buka halaman Dataflow Membuat tugas dari template. Buka Membuat tugas dari template
- Di kolom Nama tugas, masukkan nama tugas yang unik.
- Opsional: Untuk Endpoint regional, pilih nilai dari menu drop-down. Region default-nya adalah
us-central1.Untuk mengetahui daftar region tempat Anda dapat menjalankan tugas Dataflow, lihat Lokasi Dataflow.
- Dari menu drop-down Template Dataflow, pilih template Google Cloud ke Neo4j.
- Di kolom parameter yang disediakan, masukkan nilai parameter Anda.
- Klik Jalankan tugas.
gcloud
Di shell atau terminal Anda, 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 AndaVERSION: versi template yang ingin Anda gunakanAnda dapat menggunakan nilai berikut:
latestuntuk menggunakan template versi terbaru, yang tersedia di folder induk tanpa tanggal di bucket—gs://dataflow-templates-REGION_NAME/latest/- nama versi, seperti
2023-09-12-00_RC00, untuk menggunakan template versi tertentu, yang dapat ditemukan bertingkat di masing-masing folder induk yang diberi tanggal dalam bucket—gs://dataflow-templates-REGION_NAME/
REGION_NAME: region tempat Anda ingin men-deploy tugas Dataflow—misalnya,us-central1JOB_SPEC_URI: jalur ke file spesifikasi tugasNEO4J_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: Google Cloud Project ID tempat Anda ingin menjalankan tugas DataflowJOB_NAME: nama tugas unik pilihan AndaVERSION: versi template yang ingin Anda gunakanAnda dapat menggunakan nilai berikut:
latestuntuk menggunakan template versi terbaru, yang tersedia di folder induk tanpa tanggal di bucket—gs://dataflow-templates-REGION_NAME/latest/- nama versi, seperti
2023-09-12-00_RC00, untuk menggunakan template versi tertentu, yang dapat ditemukan bertingkat di masing-masing folder induk yang diberi tanggal dalam bucket—gs://dataflow-templates-REGION_NAME/
LOCATION: region tempat Anda ingin men-deploy tugas Dataflow—misalnya,us-central1JOB_SPEC_URI: jalur ke file spesifikasi tugasNEO4J_CONNECTION_URI: jalur ke metadata koneksi Neo4j
Langkah berikutnya
- Pelajari template Dataflow.
- Lihat daftar template yang disediakan Google.