Utilice Maxgraph Writer para importar datos de forma masiva desde tablas de MaxCompute hacia una instancia de grafo de Maxgraph. Maxgraph Writer es un plugin en la integración de datos de DataWorks y admite vértices y aristas como destinos de importación independientes.
Límites
Maxgraph Writer solo admite el modo script.
Maxgraph Writer se utiliza principalmente para sincronizar datos de MaxCompute a Maxgraph.
Requisitos previos
Antes de empezar, asegúrese de contar con lo siguiente:
El nombre de la cuenta de compilación de Maxgraph (contacte a su administrador de Maxgraph para obtenerlo).
Permiso de lectura otorgado a la cuenta de compilación sobre la tabla de origen en MaxCompute.
Importar datos de MaxCompute a Maxgraph
Maxgraph Writer utiliza exclusivamente el modo script. Para consultar el procedimiento de configuración de una tarea de sincronización, consulte Configure a task in script mode.
La configuración de importación difiere entre vértices y aristas. Elija la sección que corresponda al tipo de dato que desea importar.
Importar vértices
El siguiente ejemplo importa vértices de tipo persona desde una tabla de MaxCompute. El arreglo column del lector y el arreglo column del escritor deben mantener el mismo orden; cada posición se asigna uno a uno.
{
"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"
]
}
}
}
]
}
}
Importar aristas
El siguiente ejemplo importa aristas de tipo knows entre vértices person. Cada entrada en el arreglo column del escritor es un objeto que contiene un campo name (el nombre de la propiedad en el grafo) y un campo propertyType que indica si se asigna a la clave primaria del vértice de origen, a la clave primaria del vértice de destino o a una propiedad de la arista.
{
"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"
}
]
}
}
}
]
}
}
Parámetros del escritor
Parámetros comunes
|
Parámetro |
Descripción |
Obligatorio |
Predeterminado |
|
|
La URL de Maxgraph. |
Sí |
Ninguna |
|
|
El nombre de la instancia de grafo. |
Sí |
Ninguna |
|
|
El nombre de usuario. |
Sí |
Ninguna |
|
|
La contraseña del usuario. |
Sí |
Ninguna |
|
|
El nombre de la etiqueta del vértice o arista que se va a importar. |
Sí |
Ninguna |
|
|
El tipo de entidad del grafo que se va a importar. Utilice |
Sí |
Ninguna |
|
|
El tamaño de fragmento (en MB) para el trabajo MapReduce durante la creación de datos. |
No |
256 |
|
|
El modo de publicación. Consulte Elegir un modo de publicación. |
No |
|
Parámetros de vértices
Utilice estos parámetros cuando labelType sea vertex.
|
Parámetro |
Descripción |
Obligatorio |
Predeterminado |
|
|
Una lista ordenada de nombres de propiedades de vértices. El orden debe coincidir con la lista |
Sí |
Ninguna |
Parámetros de aristas
Utilice estos parámetros cuando labelType sea edge.
|
Parámetro |
Descripción |
Obligatorio |
Predeterminado |
|
|
La etiqueta del vértice de origen. |
Sí |
Ninguna |
|
|
La etiqueta del vértice de destino. |
Sí |
Ninguna |
|
|
Una lista ordenada de objetos de propiedad. Cada objeto especifica un campo |
Sí |
Ninguna |
|
|
El nombre de la propiedad en el grafo, definido dentro de cada entrada de |
Sí |
Ninguna |
|
|
La función de la propiedad en el grafo. Valores válidos: |
Sí |
Ninguna |
Elegir un modo de publicación
El parámetro onlineMode controla cómo publica Maxgraph los datos importados. Elija el modo según si sus consultas pueden tolerar una ventana temporal con datos antiguos y nuevos mezclados durante la publicación.
|
Modo |
Comportamiento durante la publicación |
Velocidad |
Recomendado cuando |
|
|
Las consultas pueden devolver una mezcla de datos antiguos y nuevos. Se garantiza la consistencia eventual. |
Más rápido |
La actualización de los datos es menos crítica y se prefieren trabajos de importación más cortos. |
|
|
Las consultas devuelven solo datos antiguos hasta que finaliza la publicación. |
Más lento |
Las consultas no deben exponer datos publicados parcialmente en ningún momento. |