写点什么

使用 Amazon Neptune 构建基于图数据库的应用(二)

  • 2019-12-23
  • 本文字数:1266 字

    阅读完需:约 4 分钟

使用 Amazon Neptune 构建基于图数据库的应用(二)

在 EC2 客户端上安装连接工具

下面我们会使用跟 Amazon Neptune 在同一个子网中的 EC2 实例(前面第三步创建)来连接 Amazon Neptune 的实例。


1)控制台二进制文件需要 Java 8。输入以下命令以在 EC2 实例上安装 Java 8。


Bash


sudo yum install java-1.8.0-devel
复制代码


2)输入以下命令以在 EC2 实例上将 Java 8 设置为默认运行时。


Bash


sudo /usr/sbin/alternatives --config java
复制代码


系统会显示系统安装过的所有 java 的版本,输入 java 8 对应的数字。


3)从 Apache Tinkerpop3 网站下载访问 Amazon Neptune 的 Gremlin 客户端


wget https://archive.apache.org/dist/tinkerpop/3.4.1/apache-tinkerpop-gremlin-console-3.4.1-bin.zip


4)解压下载的压缩文件


unzip apache-tinkerpop-gremlin-console-3.4.1-bin.zip


5)进入解压后的文件夹,并下载 Gremlin 远程证书


cd apache-tinkerpop-gremlin-console-3.4.1


wget https://www.amazontrust.com/repository/SFSRootCAG2.pem


6)在 conf 目录中创建名为 neptune-remote.yaml 的文件,并加入下面信息:


hosts: [your-neptune-endpoint]


port: 8182


connectionPool: { enableSsl: true, trustCertChainFile: “SFSRootCAG2.pem”}


serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV3d0, config: { serializeResultToString: true }}


其中红色部分的 Endpint 是您要连接的数据库的端点,请在 AWS Neptune Console 上查询,如下图:



在图中你可以看到连接的 Endpoint。


7)运行 bin 目录下的命令进入 Gremlin 控制台


Bash


bin/gremlin.sh
复制代码


看到如下界面:



此时我们可以看到 gremlin 的命令行提示符


8)在 gremlin>命令行提示符下,输入前面配置 endpoint 的文件,让 gremlin 连接我们创建的 neptune 数据库。


Bash


:remote connect tinkerpop.server conf/neptune-remote.yaml
复制代码



可以看到 gremlin 连接了我们配置的 Neptune 数据库。


9)输入下面命令,控制 gremlin 发送所有的命令到远程 Neptune 服务器:



10)为图增加一个顶点,输入下面命令


Bash


g.addV('person').property('name', 'justin')
复制代码



11)输入下面命令退出


Bash


:exit
复制代码

5.加载数据

除了在上一步中所见的通过命令行插入数据到图数据库中,我们也可以将一定格式的数据存储到 S3 中,然后加载到图数据库中,详情,请参考下面链接加载和查询数据:


https://docs.aws.amazon.com/zh_cn/neptune/latest/userguide/load-api-reference-load.html

6.总结

前面介绍了 Amazon Neptune 的使用场景及创建和连接一个 Amazon Neptune 图数据库的基本步骤。Amazon Neptune 是一项快速、可靠且完全托管的图形数据库服务,可以帮助您轻松构建和运行处理高度互连数据集的应用程序。您可以将外部的数据导入到 Amazon Neptune 中,也可以从头用 Amazon Neptune 构建图的应用。


作者介绍:


!



### [](https://amazonaws-china.com/cn/blogs/china/tag/%E8%93%9D%E5%8B%87/)
AWS高级解决方案架构师
复制代码


本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/using-amazon-neptune-build-application-based-on-graph-database/


2019-12-23 17:411046

评论

发布
暂无评论
发现更多内容

MySQL基础之六:连接查询

打工人!

myslq 6月日更

Python——输入输出:加减乘除四则运算的程序

在即

6月日更

你愿意被管理么?

escray

学习 极客时间 朱赟的技术管理课 6月日更

当人工智能遇上视频直播——基于Agora Web SDK实现目标识别

dajyaretakuya

深度学习 音视频 WebRTC 声网 TensorFlow.js

Python——字符串转换与处理

在即

6月日更

【21-1】21 连更第一篇

耳东@Erdong

6月日更

【Flutter 专题】109 图解自定义 ACERadio 单选框

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 6月日更

数字化转型背景下的测试转型

BY林子

敏捷测试 测试转型

操作系统内核是什么?Linux内核又是什么?读完这篇文章,我终于知道了

奔着腾讯去

c++ 操作系统 内存管理 Linux内核 进程管理

做通才还是专才,你会怎么选?

架构精进之路

认知提升 6月日更

异构内存及其在机器学习系统的应用与优化

白玉兰开源

人工智能 机器学习 解决方案 第四范式 傲腾

Mybatis 二级缓存简单示例

Java mybatis

公司:离职就是一场危机管理

石云升

创业 职场经验 6月日更

【布道API】浅谈API设计风格

devpoint

Rest API 6月日更

缓存穿透、缓存雪崩、缓存击穿问题与优化方案

Skysper

云原生推动全云开发与实践

阿里巴巴云原生

云原生

浅谈Java中的TCP超时

Hoswey_洪树伟

Java、

5分钟速读之Rust权威指南(十九)

wzx

rust 生命周期

spring-beans 注册 Beans(四)BeanDefinition

梦倚栏杆

密码学系列之:生日攻击

程序那些事

加密解密 密码学 程序那些事

Java--JVM运行流程

是老郭啊

Java JVM JVM原理

【Vue2.x 源码学习】第八篇 - 数组的深层劫持

Brave

源码 vue2 6月日更

Packer 自动化镜像 Windows 安装过程

HoneyMoose

Locust完成gRPC协议的性能测试

陈磊@Criss

阿里云边缘容器服务、申通 IoT 云边端架构入选 2021 云边协同发展阶段性领先成果

阿里巴巴云原生

云原生

高性能 JavaScriptの七 -- 编程实践小技巧

空城机

JavaScript 大前端 6月日更

这些书都学完,绝对是编程界的大佬

看山

Java 程序员 6月日更

递归全排列问题(两种方法 Java实现)

若尘

数据结构 递归 6月日更

读深入ES6记[二]

蛋先生DX

ES6 6月日更

Kubernetes手记(5)- 配置清单使用

雪雷

k8s 6月日更

SpringBootApplication注解

梦倚栏杆

使用 Amazon Neptune 构建基于图数据库的应用(二)_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章