Amazon 新发布了一款 NoSQL 图数据库,名叫 Neptune ,它可以用于构建和运行那些部署了与应用程序高度关联的、上下文相关的、关系驱动的数据集的应用程序。它还支持副本读取(read replicas)、时间点恢复(point-in-time recovery)、对 Amazon S3 的持续备份以及跨可用区(AZ,Availability Zones)的复制。
Amazon 团队在最近的 2017 AWS re:Invent 大会上发布了这个新数据库的预览版本。
Amazon Neptune 支持像 Property Graph 这类最流行的图模型,同时也支持 W3C 标准的 Resource Description Framework ( RDF 1.1 版本),它分别提供了对 Apache TinkerPop Gremlin 和 SPARQL 这两种数据库查询语言的支持(尤其是 SPARQL Query 1.1、SPARQL Update 1.1 和 SPARQL Protocol 1.1)。参照 RDF,Neptune 提供了对 4 种序列化数据格式的支持:Turtle、N-Triples、N-Quads 以及 RDF/XML。
Amazon Neptune 的核心是一个专门构建的图数据库引擎,它用于存储大量的关系数据集,并以最小的延迟对图进行查询。它对处理图查询进行了优化,并支持在 3 个跨可用区域内的 15 个低延迟副本读取,用以扩展读取容量,并可以在每秒执行多个图查询。该数据库还提供了用于云平台的容错和自修复存储特性,该特性使得数据库可以跨 3 个可用区域复制 6 个数据副本。
Amazon Neptune 持续将备份数据到 Amazon S3,并能够在遭遇物理存储故障之后透明地对数据进行恢复。它是一个全托管式的数据库,它会负责数据库的管理任务,如硬件供应、软件补丁、软件安装、系统配置以及备份。
与其他图数据库类似,Neptune 使用图数据元素,如节点(数据实体)、边(关系)和属性来对数据进行表示和存储。这些关系被存储为数据模型中的第一等公民,它能够直接链接到对应的数据,从而提高对数据库中的关系进行查询的性能。
Neptune 还提供数据安全特性,它支持存储和传输的加密。它支持多个级别的安全性,包括使用 Amazon VPC 的网络隔离、使用 AWS 密钥管理服务( KMS )的数据加密以及使用 TLS 传输的数据加密。在一个加密的 Neptune 实例中,所有数据的备份都是加密的,包括自动备份、系统快照以及相同集群中的副本。如果想要了解更多这些特性的细节,请在网站上查看 Neptune Features 页面。
Neptune 适用于多种图场景,例如社交网络、推荐引擎、欺诈检测、知识图谱、生命科学以及网络 /IT 操作。
如何使用 Amazon Neptune
你能在 Amazon Neptune 上使用两种不同的查询引擎:Gremlin 和 SPARQL。想要连接到 Gremlin 终端你需要使用下列命令:
curl -X POST -d '{"gremlin":"g.V()"}' https://your-neptune-endpoint:8182/gremlin
如果你要使用 SPARQL 做查询,你可以使用下列命令来连接到 SPARQL 终端:
curl -G https://your-neptune-endpoint:8182/sparql --data-urlencode 'query=select ?s ?p ?o where {?s ?p ?o}'
如果你想尝试这款新的图数据库,你可以注册一个AWS 账号来申请对Amazon Neptune 预览版的访问。下列关于Neptune 的资源希望对你有所帮助: 入门教程、开发人员资源以及常见问题 ( FAQs )。
查看英文原文: Amazon’s Graph Database Neptune Supports Read Replicas, Point-in-Time Recovery and S3 backup
评论