链接 GDB 实例| 学习笔记

简介: 快速学习链接 GDB 实例。

开发者学堂课程【阿里云图数据库 GDB 入门与应用 链接 GDB 实例】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/623/detail/9448


链接 GDB 实例

 

内容介绍

一、 Gremlin SDK

二、 几种连接 GDB 实例的方式

三、 Gremlin SDK Java 版连接示例

四、 HTTP REST 方式连接示例

 

一、 Gremlin SDK

1、 Gremlin 简介

(1) Gremlin 官方网站:

https://tinkerpop.apache.org/gremlin.html

(2) Gremlin 是一由 Apache TinkerPop 提供支持的图查询语言。License为开源的 Apache Licese Version 2.0

(3) Gremlin 和传统 SQL 有明显区别,是一种函数式、面向数据流的查询语言,使用户可以更为直接地控制和表达图查询和复杂逻辑。

(4) 包含一个宽松的 DSL 规范描述,以及基于 Java/Groovy 的开源实现。

 

二、几种连接 GDB 实例的方式

Gremlin-Java、Gremlin-Groovy、Gremlin-Python、Gremlin-Net、Gremlin-JavaScript,其中在阿里云平台使用较多的是 Gremlin-Java 和 Gremlin-Python这两种语言,比例约4:1。按照接入原理分类,可分为 WebSocket和 HTTP 请求这两种接入原理。 WebSocket 主要通过 Gremlin Console 控制台和 Gremlin SDK 进行接入。除此之外, Gremlin 还支持HTTP REST 的请求方式。注意:在购买阿里云图库中的GDB时,要确保 GDB 实例与 ECS 处于同一个 VPC 网络内。如果通过 ECS 进行访问,需要先在 GDB 的控制台上添加 ECS 所在的内网 IP 。若有外网的应用需要访问 GDB 实例,也可在控制台进行开通外网访问的操作。这样就会形成一个外网访问的端口。

 

三、Gremlin SDK Java 接入示例

★ Java 依赖(Maven)

<dependency>

<groupId>org.apache.tinkerpop</groupId>

<artifactId>gremlin-driver</artifactId>

<version>3.3.3</version>

</dependency>

★配置文件

hosts:[ $endpoint ]

port:8182

username: $username

password: $password

connectionPool:{

enableSsl: true

}

serializer: {

className:

org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config:{ serializeResultToString: true }

}

在配置文件中有3个参数,即 endpoint、username、paassword 在用户购买 GDB 实例后可以通过控制台上的实例信息的配置查看。恢复到基本信息页面,可看到内网地址,即是 配置文件中的 endpoint ,内网端口8182。 username 和 passworld 在账号管理中,账号即 username ,密码即 passworld ,可以通过控制台上的内网地址 、端口、username 和 passworld 来进行配置。如果是外网访问,在开通外网访问后控制台会显示外网地址和外网端口,同样也可以连接到 GDB 实例。

★Java 代码

Client client;

try{

// Attempt to create the connection objects

cluster=Cluster.build(new File("src/remote.yaml")).create(); client m cluster.

client= cluster.connect);

} catch(FileNotFoundException e){

//Handle file errors.

System.out.println("Couldn't find the configuration file.");

e. printStackTrace();

return;

}

// After connection is successful, run all the queries against the server.

for (String query :gremlinQueries){

System.out.println("\nSubmitting this Gremlin query:"+ query);

// Submitting remote query to the server.

ResultSet results =results =client.submit(query);

CompletableFuture<List<Result>> completableFutureResults=results.all();    List<Result> resultList =completableFutureResults.get();

for (Result result : resuttList){

System.out.println("\nQuery result” result:");

System.out.println(result.toString());

}

}

 

四、HTTP REST 方式连接示例

★说明(基本的三个配置)

${your-gdb-endpoint} GDB 实例的内网访问地址

${username} GDB 实例账户名

${password} GDB 实例账户密码

★HTTP 接入点为:

${your_gdb_endpoint}:8182/gremlin

★支持: GET、POST 请求:

curl -u ${username}:${password} -x POST -d '{"gremlin":"g.V().limit(1)"}’ http://${your_gdb_endpoint}:8182/gremlin

//此处注意需要对 Label 值的双引号进行转义

curl-u${username}:${password}-xpost-d'{"gremlin":"gremlin:g.v().hasLabel(\"movie\").

limit(10)"}’http://${your_gdb_endpoint}:8182/gremlin

curl-u${username}:${password}"http://${your_gdb_endpoint}:8182/gremlin?gremlin=g.V().limit(1)"

//Xbinding 形式携带参数

curl-u${username}:${password}-XPOST-d'{"gremlin":"g.v().limit(n)","bindings":{"n”:1}}’ http://$(your_gdb_endpoint):8182/gremtin

相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
目录
打赏
0
0
0
0
214
分享
相关文章
一文教你图数据库 GDB修改实例描述
实例描述可以用来标示该实例的用途,方便记忆。您可以在实例列表页面或实例详情页面进行实例描述的修改。
721 0
一文教你图数据库 GDB修改实例描述
GDB学习笔记
编译生成执行文件:(Linux下) g++ -std=c++11 -g tst.cpp -o tst   基本操作 $gdb $file 可执行文件名 $start //进入被调用的函数 $s //打印变量的值...
973 0
GDB调试精粹及使用实例
一:列文件清单 1. List (gdb) list line1,line2 二:执行程序 要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符()和外壳通配符(*、?、[、])在内。
714 0
C语言调试是开发中的重要技能,涵盖基本技巧如打印输出、断点调试和单步执行,以及使用GCC、GDB、Visual Studio和Eclipse CDT等工具。
C语言调试是开发中的重要技能,涵盖基本技巧如打印输出、断点调试和单步执行,以及使用GCC、GDB、Visual Studio和Eclipse CDT等工具。高级技巧包括内存检查、性能分析和符号调试。通过实践案例学习如何有效定位和解决问题,同时注意保持耐心、合理利用工具、记录过程并避免过度调试,以提高编程能力和开发效率。
79 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等