MaxCompute tablolarındaki verileri bir Maxgraph grafik örneğine toplu olarak aktarmak için Maxgraph Writer'ı kullanın. Maxgraph Writer, DataWorks veri entegrasyonunda bir eklentidir ve köşeler ile kenarları ayrı içe aktarma hedefleri olarak destekler.
Sınırlamalar
Maxgraph Writer yalnızca komut dosyası modunu destekler.
Maxgraph Writer öncelikle verileri MaxCompute'dan Maxgraph'a senkronize etmek için kullanılır.
Ön koşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
Maxgraph oluşturma hesabının adı (almak için Maxgraph yöneticinize başvurun)
Kaynak MaxCompute tablosu üzerinde oluşturma hesabına verilen okuma izni
Verileri MaxCompute'dan Maxgraph'a aktarma
Maxgraph Writer yalnızca komut dosyası modunu kullanır. Bir senkronizasyon görevini yapılandırma yordamı için bkz. Komut dosyası modunda bir görev yapılandırma.
İçe aktarma yapılandırması köşeler ve kenarlar için farklılık gösterir. Ne içe aktardığınıza uygun olan bölümü seçin.
Köşeleri içe aktarma
Aşağıdaki örnek, bir MaxCompute tablosundan kişi köşelerini içe aktarır. Okuyucudaki column dizisi ile yazıcıdaki column dizisi aynı sırada olmalıdır; her konum bire bir eşleşir.
{
"job": {
"setting": {
"speed": {
"channel": 1
},
"errorLimit": {
"record": 1000
}
},
"content": [
{
"reader": {
"name": "odpsreader",
"parameter": {
"accessId": "*****",
"accessKey": "*****",
"project": "maxgraph_dev",
"table": "maxgraph_demo_person",
"column": [
"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": [
"id",
"name",
"age"
]
}
}
}
]
}
}
Kenarları içe aktarma
Aşağıdaki örnek, person köşeleri arasındaki knows kenarlarını içe aktarır. Yazıcı column dizisindeki her giriş, grafteki özellik adını belirten bir name ve bunun kaynak köşe birincil anahtarına, hedef köşe birincil anahtarına veya bir kenar özelliğine mi eşlendiğini tanımlayan bir propertyType içeren bir nesnedir.
{
"job": {
"setting": {
"speed": {
"channel": 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",
"propertyType": "srcPrimaryKey"
},
{
"name": "id",
"propertyType": "dstPrimaryKey"
},
{
"name": "weight",
"propertyType": "edgeProperty"
},
{
"name": "id",
"propertyType": "edgeProperty"
}
]
}
}
}
]
}
}
Yazıcı parametreleri
Ortak parametreler
| Parametre | Açıklama | Gerekli | Varsayılan |
|---|---|---|---|
endpoint |
Maxgraph URL'si. | Evet | Yok |
graphName |
Grafik örneğinin adı. | Evet | Yok |
accessId |
Kullanıcı adı. | Evet | Yok |
accessKey |
Kullanıcının parolası. | Evet | Yok |
label |
İçe aktarılacak köşe veya kenarın etiket adı. | Evet | Yok |
labelType |
İçe aktarılacak grafik varlığının türü. Köşeleri içe aktarırken vertex kullanın; kenarları içe aktarırken edge kullanın. |
Evet | Yok |
splitSize |
Veri oluşturma sırasında MapReduce işi için parça boyutu (MB cinsinden). | Hayır | 256 |
onlineMode |
Yayınlama modu. Bkz. Yayınlama modu seçme. | Hayır | type |
Köşe parametreleri
labelType değeri vertex olduğunda bu parametreleri kullanın.
| Parametre | Açıklama | Gerekli | Varsayılan |
|---|---|---|---|
column |
Sıralı bir köşe özellik adı listesi. Sıra, okuyucu column listesiyle eşleşmelidir. |
Evet | Yok |
Kenar parametreleri
labelType değeri edge olduğunda bu parametreleri kullanın.
| Parametre | Açıklama | Gerekli | Varsayılan |
|---|---|---|---|
srcLabel |
Kaynak köşenin etiketi. | Evet | Yok |
dstLabel |
Hedef köşenin etiketi. | Evet | Yok |
column |
Sıralı özellik nesneleri listesi. Her nesne, bir name (grafteki özellik adı) ve bir propertyType belirtir. |
Evet | Yok |
name |
Her column girişi içinde tanımlanan grafteki özellik adı. |
Evet | Yok |
propertyType |
Özelliğin grafteki rolü. Geçerli değerler: srcPrimaryKey (kaynak köşenin birincil anahtarı), dstPrimaryKey (hedef köşenin birincil anahtarı), edgeProperty (bir kenar özelliği; kenarın özelliği yoksa isteğe bağlıdır). |
Evet | Yok |
Yayınlama modu seçme
onlineMode parametresi, Maxgraph'ın içe aktarılan verileri nasıl yayınladığını kontrol eder. Sorgularınızın yayınlama sırasında eski ve yeni verilerin karışık olduğu bir zaman aralığına tolerans gösterip göstermediğine göre seçim yapın.
| Mod | Yayınlama sırasındaki davranış | Hız | Kullanım durumu |
|---|---|---|---|
partition |
Sorgular, eski ve yeni verilerin karışımını döndürebilir. Nihai tutarlılık garanti edilir. | Daha hızlı | Veri güncelliği çok kritik değilse ve daha kısa içe aktarma işleri isteniyorsa. |
type |
Yayınlama tamamlanana kadar sorgular yalnızca eski verileri döndürür. | Daha yavaş | Sorgular asla kısmen yayınlanmış verileri görmemelidir. |