Muat format untuk data OpenCypher - Amazon Neptune

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Muat format untuk data OpenCypher

Untuk memuat data OpenCypher menggunakan format CSV OpenCypher, Anda harus menentukan node dan hubungan dalam file terpisah. Loader dapat memuat dari beberapa file node dan file hubungan ini dalam satu tugas pemuatan.

Untuk setiap perintah pemuatan, kumpulan file yang akan dimuat harus memiliki awalan jalur yang sama di bucket Amazon Simple Storage Service. Anda menentukan awalan itu di parameter sumber. Nama file dan ekstensi sebenarnya tidak penting.

Di Amazon Neptunus, format CSV OpenCypher sesuai dengan spesifikasi CSV RFC 4180. Untuk informasi selengkapnya, lihat Format Umum dan Jenis MIME untuk File CSV (https://tools.ietf.org/html/rfc4180) di situs web Internet Engineering Task Force (IETF).

catatan

File-file ini HARUS dikodekan dalam format UTF-8.

Setiap file memiliki baris header yang dipisahkan koma yang berisi header kolom sistem dan header kolom properti.

Header kolom sistem dalam file pemuatan data OpenCypher

Kolom sistem yang diberikan hanya dapat muncul sekali di setiap file. Semua label header kolom sistem peka huruf besar/kecil.

Header kolom sistem yang diperlukan dan diizinkan berbeda untuk file pemuatan node OpenCypher dan file pemuatan hubungan:

Header kolom sistem dalam file node

  • :ID— (Diperlukan) ID untuk node.

    Ruang ID opsional dapat ditambahkan ke header :ID kolom node seperti ini::ID(ID Space). Contohnya adalah :ID(movies).

    Saat memuat hubungan yang menghubungkan node dalam file ini, gunakan spasi ID yang sama dalam file hubungan :START_ID dan/atau :END_ID kolom.

    :IDKolom node opsional dapat disimpan sebagai properti dalam bentuk,property name:ID. Contohnya adalah name:ID.

    ID node harus unik di semua file node dalam beban saat ini dan sebelumnya. Jika ruang ID digunakan, ID node harus unik di semua file node yang menggunakan ruang ID yang sama dalam beban saat ini dan sebelumnya.

  • :LABEL— Label untuk node.

    Beberapa nilai label diperbolehkan, dipisahkan dengan titik koma (;).

Header kolom sistem dalam file hubungan

  • :ID— ID untuk hubungan. Ini diperlukan ketika userProvidedEdgeIds benar (default), tetapi tidak valid kapan userProvidedEdgeIds benar. false

    ID hubungan harus unik di semua file hubungan dalam pemuatan saat ini dan sebelumnya.

  • :START_ID— (Wajib) ID node dari node hubungan ini dimulai dari.

    Secara opsional, ruang ID dapat dikaitkan dengan kolom ID awal dalam formulir:START_ID(ID Space). Ruang ID yang ditetapkan ke ID node awal harus cocok dengan ruang ID yang ditetapkan ke node dalam file node.

  • :END_ID— (Wajib) ID node dari node hubungan ini berakhir di.

    Secara opsional, ruang ID dapat dikaitkan dengan kolom ID akhir dalam formulir:END_ID(ID Space). Ruang ID yang ditetapkan ke ID node akhir harus cocok dengan ruang ID yang ditetapkan ke node dalam file simpulnya.

  • :TYPETipe untuk hubungan. Hubungan hanya dapat memiliki satu jenis.

catatan

Lihat Memuat data OpenCypher untuk informasi tentang cara duplikat node atau ID hubungan ditangani oleh proses pemuatan massal.

Header kolom properti di file pemuatan data OpenCypher

Anda dapat menentukan bahwa kolom menyimpan nilai untuk properti tertentu menggunakan header kolom properti dalam bentuk berikut:

propertyname:type

Spasi, koma, carriage return, dan karakter baris baru tidak diperbolehkan di header kolom, sehingga nama properti tidak dapat menyertakan karakter ini. Berikut adalah contoh header kolom untuk properti bernama age tipeInt:

age:Int

Kolom dengan age:Int sebagai header kolom kemudian harus berisi integer atau nilai kosong di setiap baris.

Tipe data dalam file pemuatan data Neptunus OpenCypher

  • Boolatau Boolean— Sebuah bidang Boolean. Nilai yang diizinkan adalah true dan false.

    Nilai apa pun selain true diperlakukan sebagaifalse.

  • Byte— Sebuah bilangan bulat dalam rentang -128 melalui127.

  • Short— Sebuah bilangan bulat dalam rentang -32,768 melalui32,767.

  • Int— Sebuah bilangan bulat dalam rentang -2^31 melalui2^31 - 1.

  • Long— Sebuah bilangan bulat dalam rentang -2^63 melalui2^63 - 1.

  • Float— Nomor floating point IEEE 754 32-bit. Notasi desimal dan notasi ilmiah keduanya didukung. Infinity,-Infinity, dan NaN semuanya diakui, tetapi INF tidak.

    Nilai dengan terlalu banyak digit yang cocok dibulatkan ke nilai terdekat (nilai tengah dibulatkan ke 0 untuk digit terakhir yang tersisa di tingkat bit).

  • Double— Nomor floating point IEEE 754 64-bit. Notasi desimal dan notasi ilmiah keduanya didukung. Infinity,-Infinity, dan NaN semuanya diakui, tetapi INF tidak.

    Nilai dengan terlalu banyak digit yang cocok dibulatkan ke nilai terdekat (nilai tengah dibulatkan ke 0 untuk digit terakhir yang tersisa di tingkat bit).

  • String- Tanda kutip adalah opsional. Karakter koma, baris baru, dan carriage return secara otomatis lolos jika disertakan dalam string yang dikelilingi oleh tanda kutip ganda () seperti. " "Hello, World"

    Anda dapat menyertakan tanda kutip dalam string yang dikutip dengan menggunakan dua berturut-turut, seperti. "Hello ""World"""

  • DateTime— Tanggal Java dalam salah satu format ISO-8601 berikut:

    • yyyy-MM-dd

    • yyyy-MM-ddTHH:mm

    • yyyy-MM-ddTHH:mm:ss

    • yyyy-MM-ddTHH:mm:ssZ

Jenis data cast otomatis dalam file pemuatan data Neptunus OpenCypher

Tipe data auto-cast disediakan untuk memuat tipe data yang saat ini tidak didukung secara native oleh Neptunus. Data dalam kolom tersebut disimpan sebagai string, kata demi kata tanpa verifikasi terhadap format yang dimaksudkan. Tipe data auto-cast berikut diperbolehkan:

  • Char— Sebuah Char bidang. Disimpan sebagai string.

  • Date, LocalDate, dan LocalDateTime, — Lihat Neo4j Instans Temporal untuk deskripsidate,localdate, dan jenis. localdatetime Nilai dimuat kata demi kata sebagai string, tanpa validasi.

  • Duration— Lihat format Durasi Neo4j. Nilai-nilai dimuat kata demi kata sebagai string, tanpa validasi.

  • Titik — Bidang titik, untuk menyimpan data spasial. Lihat Instan spasial. Nilai-nilai dimuat kata demi kata sebagai string, tanpa validasi.

Contoh format beban OpenCypher

Diagram berikut yang diambil dari Grafik TinkerPop Modern menunjukkan contoh dua node dan hubungan:

Diagram dua node dan hubungan di antara mereka.

Berikut ini adalah grafik dalam format beban Neptunus OpenCypher normal.

Berkas simpul:

:ID,name:String,age:Int,lang:String,:LABEL v1,"marko",29,,person v2,"lop",,"java",software

File hubungan:

:ID,:START_ID,:END_ID,:TYPE,weight:Double e1,v1,v2,created,0.4

Atau, Anda dapat menggunakan spasi ID dan ID sebagai properti, sebagai berikut:

File simpul pertama:

name:ID(person),age:Int,lang:String,:LABEL "marko",29,,person

File node kedua:

name:ID(software),age:Int,lang:String,:LABEL "lop",,"java",software

File hubungan:

:ID,:START_ID,:END_ID,:TYPE,weight:Double e1,"marko","lop",created,0.4