首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS Neptune datetime()

AWS Neptune datetime()
EN

Stack Overflow用户
提问于 2018-11-05 02:33:57
回答 1查看 2.1K关注 0票数 4

我用gremlin-javascript从Node和AWS海王星对话。根据文档快速启动,日期应该使用datetime()设置。

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

g.addV("user").property(single, "createdDate", datetime(now().toISOString());

"ReferenceError: datetime is not defined"

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-05 15:14:21

因此,Neptune提供的'datetime()‘方法用于将查询作为文本字符串发送到图形时使用。下面是连接到正在运行的海王星实例的Gremlin控制台的一个示例:

代码语言:javascript
复制
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类。如下所示。注意,虽然这两个示例共享名称datetime,但除了名称之外,它们在所有方面都完全不同。我使用Gremlin从一个朱庇特笔记本中运行了这个程序,但是它在Python控制台或作为一个独立的Python应用程序运行得同样好。

代码语言:javascript
复制
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日更新,特别是在海王星的情况下,使用来自Java、Python等的本机日期对象可能会导致查询运行得更快,因为海王星引擎评估查询的方式。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53147594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档