全部产品
云市场

SDK引用

更新时间:2019-08-30 18:10:39

SDK使用方式

开通MaxGraph实例后,用户可通过调用MaxGraph的sdk,进行图实例如下几种操作:

  • 元数据的管理:含点/边类型创建、属性管理等

  • 批量数据导入:支持从MaxCompute导入数据,注意目前数据导入是全量覆盖该类型的所有数据

  • 实时写入:支持点/边数据的insert/update/delete/overwrite等操作

  • 数据查询:支持Gremin Query,并且可以将Query结果导出到ODPS表

  • 图算法执行:支持运行内置类似Program.graphCC()的算法,并将结果导出到ODPS表中

使用方法:在工程中引入maven依赖如下

  1. <dependency>
  2. <groupId>com.alibaba.maxgraph</groupId>
  3. <artifactId>maxgraph-sdk</artifactId>
  4. <version>1.4.11-SNAPSHOT</version>
  5. </dependency>

注意:guava使用22.0版本

使用示例:

  1. package com.alibaba.maxgraph.examples.realtime;
  2. import com.alibaba.maxgraph.sdk.MaxGraph;
  3. import com.alibaba.maxgraph.sdk.query.MaxGraphQueryClient;
  4. import com.alibaba.maxgraph.sdk.realtime.RealtimeDataClient;
  5. import com.alibaba.maxgraph.sdk.schema.SchemaClient;
  6. import com.alibaba.maxgraph.sdkcommon.client.DataRecord;
  7. import com.alibaba.maxgraph.sdkcommon.meta.MemSchema;
  8. import com.alibaba.maxgraph.sdkcommon.util.JSON;
  9. import com.google.common.collect.Lists;
  10. import com.google.common.collect.Maps;
  11. import org.apache.tinkerpop.gremlin.driver.Result;
  12. import java.util.Iterator;
  13. import java.util.List;
  14. import java.util.Map;
  15. public class MaxGraphExample {
  16. private static String graphName = "example";
  17. //日常环境http://graph.alibaba.net 线上环境 http://maxgraph.alibaba-inc.com
  18. private static String endpoint = "http://graph.alibaba.net";
  19. //用户权限申请,查看本文后半部分
  20. private static String username = "*********";
  21. private static String password = "*********";
  22. public static void main(String[] args) throws Exception {
  23. //新建连接
  24. MaxGraph maxGraph = MaxGraph.newConnector(graphName, endpoint)
  25. .setUserName(username)
  26. .setPassword(password).connect();
  27. // schema管理--参考《SDK使用指南--Schema管理》
  28. SchemaClient schemaClient = maxGraph.schemaClient();
  29. // 批量数据导入--参考《SDK使用指南--ODPS数据导入》
  30. BulkLoadClient bulkLoadClient = maxGraph.bulkLoadClient();
  31. // 数据写入--参考《SDK使用指南--数据实时写入》
  32. RealtimeDataClient realtimeDataClient = maxGraph.createRealTimeClient(true);
  33. // Gremlin查询--参考《SDK使用指南--Gremlin Query》
  34. MaxGraphQueryClient maxGraphQueryClient = maxGraph.createQueryClient();
  35. // Gremlin离线算法--参考《SDK使用指南--CC算法执行》
  36. MaxGraphQueryClient maxGraphQueryClient = maxGraph.createQueryClient(); //Program.graphCC()
  37. //关闭连接
  38. maxGraph.close();
  39. }
  40. }