全部产品
云市场

数据实时写入

更新时间:2019-11-04 15:59:11

在开始本文之前,请先确认SDK引擎正确,且Client创建、Schema构建已经完成。本文仍然沿用Schema构建中的示例中,一个点person和一个边knows的模型。

除了支持从maxCompute的表中导入数据外,GraphCompute也支持直接自行编辑数据然后实时更新到图实例中去,具体示例如下。

插入点数据

以下示例代码演示点数据的插入。

  1. ResultSet v1result = client.submit("graph.addVertex(T.label, 'person', 'id', 1, 'name', 'tom', 'age', 20)");
  2. ResultSet v2result = client.submit("graph.addVertex(T.label, 'person', 'id', 2, 'name', 'jack', 'age', 30)");
  3. ResultSet v3result = client.submit("graph.addVertex(T.label, 'person', 'id', 3, 'name', 'tony', 'age', 25)");

插入边数据

以下示例代码演示边数据的插入。

  1. ResultSet e1result = client.submit("graph.addEdge(" +
  2. "'" + v1.id().toString() + "'," +
  3. "'" + v2.id().toString() + "'," +
  4. "T.label,'knows'," +
  5. "'id',1," +
  6. "'weight',0.5)");
  7. ResultSet e2result = client.submit("graph.addEdge(" +
  8. "'" + v2.id().toString() + "'," +
  9. "'" + v3.id().toString() + "'," +
  10. "T.label,'knows'," +
  11. "'id',2," +
  12. "'weight',0.8)");

更新点数据

以下示例代码演示点数据的修改,这里把v1的age更新为25。

  1. ResultSet v1UpdateResult = client.submit("graph.updateVertex(T.label, 'person', 'id', 1, 'age', 25)");

更新边数据

以下示例代码演示边数据的修改,这里把e1的weight更新为0.75。

  1. ResultSet e1UpdateResult = client.submit("graph.updateEdge('knows'," +
  2. ((CompositeId) e1.id()).id() + "," +
  3. "'" + v1.id().toString() + "'," +
  4. "'" + v2.id().toString() + "'," +
  5. "'weight', 0.75)");

删除点数据

以下示例代码演示点数据的删除。

  1. ResultSet v3DeleteResult = client.submit("graph.deleteVertex('" + v3.id().toString() + "')");

删除边数据

以下示例代码演示边数据的删除。

  1. ResultSet e1DeleteResult = client.submit("graph.deleteEdge('knows'," +
  2. ((CompositeId) e1.id()).id() + "," +
  3. "'" + v1.id().toString() + "'," +
  4. "'" + v2.id().toString() + "')");