DataWorks mengintegrasikan data menggunakan Maxgraph Writer untuk mengimpor data dari tabel MaxCompute ke Maxgraph. Topik ini menjelaskan kemampuan penulisan data Maxgraph Writer.
Batasan
Maxgraph Writer hanya mendukung mode skrip.
Maxgraph Writer terutama digunakan untuk menyinkronkan data dari MaxCompute ke Maxgraph.
Sebelum memulai
Untuk mengimpor data dari tabel MaxCompute ke Maxgraph, Anda harus memberikan izin baca pada akun build Maxgraph terhadap tabel sumber di proyek MaxCompute sumber. Hubungi administrator Maxgraph Anda untuk memperoleh nama akun build tersebut.
Kembangkan tugas sinkronisasi data
Untuk informasi mengenai titik masuk dan prosedur konfigurasi tugas sinkronisasi, lihat panduan konfigurasi berikut.
Untuk prosedurnya, lihat Konfigurasikan tugas dalam mode skrip.
Untuk semua parameter dan contoh skrip, lihat Lampiran: Contoh skrip Maxgraph dan deskripsi parameter.
Lampiran: Contoh skrip Maxgraph dan deskripsi parameter
Konfigurasikan tugas sinkronisasi batch menggunakan editor kode
Jika Anda ingin mengonfigurasi tugas sinkronisasi batch menggunakan editor kode, Anda harus mengatur parameter terkait dalam skrip sesuai dengan persyaratan format skrip terpadu. Untuk informasi selengkapnya, lihat Konfigurasikan tugas dalam editor kode. Informasi berikut menjelaskan parameter yang harus Anda konfigurasikan untuk sumber data saat mengatur tugas sinkronisasi batch menggunakan editor kode.
Contoh skrip Writer
Konfigurasi impor untuk vertex dan edge di Maxgraph berbeda. Oleh karena itu, Maxgraph Writer membedakan antara vertex dan edge.
Contoh konfigurasi vertex
{ "job": { "setting": { "speed": { "channel": 1 // Setel channel ke 1. }, "errorLimit": { "record": 1000 } }, "content": [ { "reader": { "name": "odpsreader", "parameter": { "accessId": "*****", "accessKey": "*****", "project": "maxgraph_dev", "table": "maxgraph_demo_person", "column": [ // Nama kolom di tabel MaxCompute. Kolom-kolom ini berkorespondensi satu-satu dengan kolom dalam konfigurasi writer. "id", "name", "age" ], "packageAuthorizedProject": "biggraph_dev", "splitMode": "record", "odpsServer": "******" } }, "writer": { "name": "maxgraphwriter", "parameter": { "endpoint": "http://graph.alibaba.net", "graphName": "xxx", "accessId": "xxx", "accessKey": "xxx", "label": "person", "labelType": "vertex", "onlineMode": "partition", "splitSize": "256", "column": [ // Nama properti vertex Maxgraph. Properti-properti ini berkorespondensi satu-satu dengan kolom dalam konfigurasi reader. "id", "name", "age" ] } } } ] } }Contoh konfigurasi edge
{ "job": { "setting": { "speed": { "channel": 1 // Setel channel ke 1. }, "errorLimit": { "record": 1000 } }, "content": [ { "reader": { "name": "odpsreader", "parameter": { "accessId": "*****", "accessKey": "*****", "project": "maxgraph_dev", "table": "maxgraph_demo_knows", "column": [ "person_id", "person_id2", "weight", "id" ], "packageAuthorizedProject": "biggraph_dev", "splitMode": "record", "odpsServer": "****" } }, "writer": { "name": "maxgraphwriter", "parameter": { "endpoint": "http://graph.alibaba.net", "graphName": "xxx", "accessId": "xxx", "accessKey": "xxx", "label": "knows", "labelType": "edge", "srcLabel": "person", "dstLabel": "person", "onlineMode": "partition", "splitSize": "256", "column": [ { "name": "id", // Nama properti yang sesuai dalam graf. "propertyType": "srcPrimaryKey" // Jenis properti. Digunakan untuk mengidentifikasi apakah ini vertex sumber, vertex tujuan, atau properti edge. }, { "name": "id", "propertyType": "dstPrimaryKey" }, { "name": "weight", "propertyType": "edgeProperty" }, { "name": "id", "propertyType": "edgeProperty" } ] } } } ] } }
Parameter skrip Writer
Parameter | Deskripsi | Wajib | Nilai default |
endpoint | URL Maxgraph. | Ya | Tidak ada |
graphName | Nama instans graf. | Ya | Tidak ada |
accessId | Username. | Ya | Tidak ada |
accessKey | Password pengguna. | Ya | Tidak ada |
label | Nama label. Ini adalah nama vertex atau edge. | Ya | Tidak ada |
labelType | Jenis label. Nilai yang valid: vertex dan edge. | Ya | Tidak ada |
srcLabel | Label vertex sumber edge. Parameter ini hanya digunakan saat Anda mengimpor edge. | Ya | Tidak ada |
dstLabel | Label vertex tujuan edge. Parameter ini hanya digunakan saat Anda mengimpor edge. | Ya | Tidak ada |
splitSize | Ukuran shard untuk pekerjaan MapReduce selama pembuatan data. | Tidak | 256 MB |
onlineMode | Mode penerbitan data. Nilai yang valid: partition dan type. Perbedaannya sebagai berikut:
| Tidak | type |
column | Nama properti vertex. Parameter ini hanya digunakan saat Anda mengimpor vertex. | Ya | Tidak ada |
name | Nama properti. | Wajib hanya saat Anda mengimpor edge. | Tidak ada |
propertyType | Jenis properti. Nilai yang valid: srcPrimaryKey, dstPrimaryKey, dan edgeProperty. | Hanya diperlukan saat Anda mengimpor sebuah edge. | Tidak ada |
srcPrimaryKey | Kunci primer vertex sumber. Parameter ini hanya digunakan saat Anda mengimpor edge. | Wajib hanya saat Anda mengimpor edge. | Tidak ada |
dstPrimaryKey | Kunci primer vertex tujuan. Parameter ini hanya digunakan saat Anda mengimpor edge. | Wajib hanya saat Anda mengimpor edge. | Tidak ada |
edgeProperty | Properti edge. Parameter ini opsional jika edge tidak memiliki properti. | Tidak | Tidak ada |