问题标签 [amazon-neptune]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
823 浏览

javascript - Gremlin 查询:如何在 javascript 中指定排序顺序

我正在使用 AWS 海王星。

我想执行一个简单的 gremlin 查询,该查询返回按名为“timestamp”的属性按降序排序的顶点。

我可以使用 gremlin 控制台执行此操作:

gremlin> gV().has('timestamp').order().by('timestamp', desc).fold()

但是,当我在我的 nodejs 应用程序中使用相同的语句时,我收到错误“ReferenceError: desc is not defined”。我对这个错误并不感到惊讶,因为我没有定义“desc”。

我的问题:如何在 gremlin 查询中传递排序顺序?

我错过了进口吗?

我尝试传入字符串 'desc'——但没有成功。

0 投票
1 回答
1121 浏览

javascript - Gremlin,javascript:从哪里导入函数“valueMap()”?

我在 nodejs 上使用 es6,并尝试在 gremlin 查询中执行 project() 步骤。

作为投影的一部分,我想提取属性。

使用 gremlin 控制台,我将使用 valueMap() 来获取属性。

但是,当我从 javascript 尝试此操作时,我收到预期的错误“valueMap 不是函数”。

问题1:我从哪里导入这个函数?

问题 2:我在哪里可以了解所有可用于在 javascript 中导入的各种 gremlin 对象?

============================

我正在使用 Gremlin 3.3 连接到 AWS Neptune 实例。

这是我的小鬼代码:

0 投票
4 回答
8229 浏览

sparql - 是否可以将图形查询(Gremlin 或 SPARQL)的输出可视化为 Amazon Neptune 中的节点和边?

GREMLIN 和 SPARQL 仅定义图形查询的 API。如何使用 API 响应并将其绘制为带有边和顶点的实际图形?有没有类似 MySQL Workbench 的图表?

0 投票
1 回答
382 浏览

python-3.x - AWS - 使用 SDK 从快照还原 Neptune

我正在尝试使用 python (boto3) 测试从快照中恢复 Neptune 实例。长话短说,我们希望每天使用自动化来启动和删除 Dev 实例。

还原时,我的还原似乎只创建集群而不创建附加实例。一旦集群启动并添加到集群,我也尝试过创建一个实例,但这也不起作用。(参考:client.create_db_instance)

我的代码如下,获取最新的快照。使用该变量创建集群,以便最新数据存在。

该文档根本没有多大帮助。它非常擅长提供基本创建所需的变量,但不能提供实际实例。如果我尝试使用相同的集群名称创建一个实例,它要么会出错,要么会创建一个具有相同名称并附加“-1”的新集群。

0 投票
2 回答
652 浏览

java - Gremlin 只读事务支持

我正在尝试为 Gremlin 客户端配置一个不允许任何变异查询(只读)的事务。

我知道这在 JanusGraph 或 Titan 及其 API 中是可能的(使用 buildTransaction() 作为 readOnly()),但是对于 TinkerPop 或 Neptune,我没有发现任何类似的东西。

我正在使用基于 java 脚本的客户端(会话):

我知道您可以从服务器端限制这些类型的查询。但这也可以从客户端进行吗?我也不确定这是否是解决此问题的正确方法。

编辑:我通过提交“脚本”通过 WebSocket 与 Gremlin 服务器进行远程通信。
从 Java 中,我将集群配置为:

然后使用客户端提交查询:

我知道 Graph 支持的 ReadOnlyStrategy。但是我还没有找到通过上述方法启用它的方法,只能从服务器配置脚本中找到。是否有另一种方法来限制提交的“查询”?

我的服务器配置了这个默认的 groovy 脚本:

我的客户正在发送这样的查询:

有任何想法吗?

0 投票
1 回答
191 浏览

gremlin - 使用 eval() 运行 Gremlin 查询时保留详细的 Gremlin 错误消息

在我的脚本中,我执行以下操作:
eval("query")
并获得:
unexpected EOF while parsing (<string>, line 1)

在 Jupyter 我做:
query
并得到:

有没有办法在使用该方法进行 Gremlin 查询时保留详细的错误消息eval("querystring")
我需要将许多字符串连接到一个查询中,这就是原因。
此外,详细的错误消息使我能够捕捉到这样的错误ConstraintViolationException

详细信息:
我正在使用 Python 与 Neptune 进行交互。
我在脚本的开头有这个:
from gremlin_python import statics
statics.load_statics(globals())
from gremlin_python.structure.graph import Graph
from gremlin_python.process.graph_traversal import __
from gremlin_python.process.strategies import *
from gremlin_python.driver.driver_remote_connection import DriverRemoteConnection
它来自关于如何连接 Python 的官方文档。

0 投票
1 回答
399 浏览

amazon-web-services - Amazon Neptune IAM 通过 Websocket 进行身份验证

是否有人成功连接到启用了 IAM 身份验证的 Amazon Neptune 集群?我目前正在尝试通过只能通过 websocket 发送的字节码提交 gremlin。我一直未能成功连接到海王星集群,因为所有示例都使用 HTTP。有没有人成功做到这一点?我可以使用一些指导。

0 投票
1 回答
1663 浏览

gremlin - 在 Gremlin 中正确处理日期操作

我将 AWS Neptune Gremlin 与gremlin_python.

根据Neptune specs的要求,我在财产中的日期存储为日期时间。

我使用这样的 Python 代码创建了它:
properties_dict['my_date'] = datetime.fromtimestamp(my_date, timezone.utc)
然后使用属性构造了 Vertex:

稍后在与构造图交互时,我只能通过精确的字符串匹配查询找到顶点,如下所示:
g.V().hasLabel('Object').has("my_date", "2017-12-01 00:00:00+00:00").valueMap(True).limit(3).toList()

在 Gremlin 中处理日期或日期时间的最佳方法是什么?
如何进行范围查询,例如“给我所有日期为 2017 年的顶点”

0 投票
1 回答
180 浏览

amazon-web-services - 同一VPC的不同cidr块中的资源是否可以相互访问aws

数据库 (RDS) 等资源必须与 EC2 实例位于同一 VPC 中才能访问。

如果EC2实例在不同的CIDR块中,它们可以到达同一个VPC中的RDS实例吗?
即 VPC 有 2 个 CIDR 块,a 和 b。块 a 中的实例,块 b 中的数据库。

EC2 实例到 Neptune 呢?

0 投票
1 回答
365 浏览

graph-databases - Gremlin - 将顶点 ID 存储为另一个顶点的属性

在 gremlin 中是否可以将顶点 ID 存储在另一个顶点中?例如,如果我创建了这样的顶点

然后查询它

它会回来

["other_vertex_id"]

无论如何我可以像这样查询另一个顶点:

请注意,我正在使用AWS Neptune所以查询必须是纯 gremlin 没有 java/groovy