当前位置: 首页 > 知识库问答 >
问题:

发电机日期GSI

夏景胜
2023-03-14

我有一个DynamoDB表,存储一些程序的执行,这是它的样子:

此表有两种查询方案:

  1. 按程序名和执行id查询(简单)

执行第二次查询的正确方法是什么?

我知道我需要创建一个GSI来做到这一点,但这个GSI应该是什么样子?

我正在考虑将StartDate属性分成两个,如下所示:

因此,我可以使用StartMonthYear作为分区键,StartDayTime作为排序键来定义GSI。

这种方法唯一的问题是,我必须在我的应用程序中编写一些额外的逻辑来标识我需要在请求范围内查询的所有分区。例如:

如果范围为:2021 05-15 00:00:00至2021 07-15 23:59:59

我需要查询具有相应日期/时间限制的2021-052021-062021-07分区(只有第一个和最后一个分区是这个例子)。

这是正确的做法还是我完全错了?

共有1个答案

束阳旭
2023-03-14

如果您想快速获取特定时间范围内的所有执行,无论程序是什么,有几种方法可以实现这一点。最简单的解决方案是这样的设置:

 类似资料:
  • JavaScript ES6最令人兴奋的新功能之一是一种新的功能,称为生成器。 在生成器之前,整个脚本通常用于从上到下的顺序执行,没有简单的方法来停止代码执行并在以后使用相同的堆栈重新启动。 生成器是可以退出并稍后重新输入的功能。 他们的上下文(变量绑定)将在重新入口处保存。 生成器允许我们在两者之间停止代码执行。 因此,让我们来看一个简单的生成器。 var generator_func = fu

  • 我需要一些信息: 我有 2 台带有 TOMCAT 7.0.28 和 JAVA 的 redhat 6.1 Linux 服务器jdk1.7.0_05 在192.168.1.20(TOM04)上,我有一个实例TOMCAT 7,带有MBEAN“Java . lang:type = memory pool,name=Perm Gen” 在 192.168.1.21(TOM01) 上,我有 1 个实例 TOM

  • 来自Azure的DocumentDB(Cosmos db)后台到AWS DynamoDB,用于已经使用dynamo db的应用程序。 我对DynamoDB上的分区键感到困惑。 据我所知,分区键用于在数据增长时将数据隔离到不同的分区,但是许多人建议使用主键作为分区键,例如用户ID、客户ID、订单ID。在这种情况下,我不确定我们如何获得更好的性能,因为我们有很多分区。所以一个查询可能需要在多个服务器上

  • 问题内容: 我想将我的PHP服务器时间传递给我的JavaScript文件。 PHP代码: JavaScript: PHP代码返回2012年3月18日星期日12:01:23 +0800,这是澳大利亚/珀斯的正确时间。但这会返回无效的JavaScript日期对象。 当我尝试将其转换为时间戳时: 我得到了JavaScript日期2012年3月18日,星期日04:03:14 GMT + 0000(WET)

  • 我正在努力寻找专辑的发行日期——在一个老的EchoNest论坛上,他们注意到他们通过以下调用发布了该功能的软发布: http://developer.echonest.com/api/v4/song/search?api_key=BLAHBLAHBLAH 当我将API密钥插入调用时,它不会返回相册或相册发布日期信息。我只是想知道他们是否不再提供此功能,或者是否有其他方法在EchoNest上查找发布

  • 问题内容: Python提供了一种很好的方法来获取渴望的迭代的长度。但是对于以生成器理解和函数表示的惰性可迭代对象,我找不到类似的东西。当然,编写类似以下内容并不难: 但是我无法摆脱自己重新设计自行车的感觉。 (当我键入函数时,我想到了一个想法:也许确实没有这样的函数,因为它“破坏了”其参数。不过,对于我的情况而言,这不是问题)。 PS:关于第一个答案-是的,类似的方法也可以工作,但是会大大增加内