gpt4 book ai didi

gremlin - AWS Neptune 日期时间()

转载 作者:行者123 更新时间:2023-12-04 02:55:47 27 4
gpt4 key购买 nike

我正在使用 gremlin-javascript从 Node 与 AWS Neptune 对话。根据docsquickstart , 日期应使用 datetime() 设置.

我没有找到这个 datetime() 的实现函数在 gremlin .这应该从哪里进口?

g.addV("user").property(single, "createdDate", datetime(now().toISOString());
"ReferenceError: datetime is not defined"

最佳答案

因此,Neptune 提供的“datetime()”方法旨在将查询作为文本字符串发送到图形时使用。以下是连接到正在运行的 Neptune 实例的 Gremlin 控制台的示例:

gremlin> g.addV('test').property('timestamp',datetime('2018-11-04T00:00:00')).property(id,'t1')
==>v[t1]
gremlin> g.V('t1').valueMap()
==>{timestamp=[Sun Nov 04 00:00:00 UTC 2018]}
gremlin> g.V().has('timestamp',gt(datetime('2018-11-03T00:00:00')))
==>v[t1]

现在,如果您使用 GLV 语言(例如 Gremlin Python),则可以使用 native Python datetime类代替。如下所示。请注意,虽然这两个示例共享名称 datetime除了名称之外,它们在所有方面都完全不同。我使用 Gremlin Python 从 Jupyter Notebook 运行它,但它在 Python 控制台或作为独立的 Python 应用程序中同样有效。
import datetime
g.addV('test').\
property(id,'x2').\
property('timestamp',datetime.datetime.now()).next()

v[x2]

g.V('x2').valueMap(True).next()

{<T.label: 3>: 'test',
<T.id: 1>: 'x2',
'timestamp': [datetime.datetime(2018, 11, 5, 15, 3, 52, 29000)]}

请原谅一个 Python 示例 - 我知道您正在使用 Javascript。我刚好配置了一个 Python 环境,但应该适用相同的原则。

正如我和其他人在其他帖子中提到的那样,所有这些都说,我更喜欢使用纪元时间存储时间戳。通常我使用 10 或 13 位整数表示时间,具体取决于我需要的精度。这也是一种相当可移植的存储时间信息的方式,并且易于使用大于/小于谓词等进行测试。

无论如何,我希望这有助于澄清您的选择。
干杯,开尔文。

2019 年 10 月 15 日更新
特别是在 Neptune 情况下,由于 Neptune 引擎评估查询的方式,使用来自 Java、Python 等的 native 日期对象可能会导致查询运行得更快一些。

关于gremlin - AWS Neptune 日期时间(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53147594/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com