问题标签 [amazon-dynamodb-streams]

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 投票
6 回答
15057 浏览

java - 如何从 DynamoDB 流新图像中获取纯 Json 字符串?

我有一个启用了流的 Dynamodb 表。我还为这个表创建了一个触发器,它调用了一个 AWS Lambda 函数。在这个 lambda 函数中,我尝试从 Dynamodb 流中读取新图像(修改后的 Dynamodb 项)并尝试从中获取纯 json 字符串。我的问题是如何获取通过流发送的 DynamoDB 项目的纯 json 字符串?我正在使用下面给出的代码片段来获取新图像,但我不知道如何从中获取 json 字符串。感谢你的帮助。

}

0 投票
1 回答
60 浏览

amazon-dynamodb-streams - 重新分区后的 DynanoDB 流行为

我假设使用 Kinesis 库从 DynamoDB 流中读取数据将始终为具有相同分区键的记录提供有序的事件序列。

那是对的吗?

如果发生重新分区,库是否仍会为我提供同一分区键的所有表活动的有序记录?

0 投票
1 回答
4501 浏览

aws-lambda - 读取 AWS Dynamodb 流

我想使用 DynamoDB Streams 在 S3 上进行增量 DynamoDB 备份。我有一个读取 dynamodb 流并将文件写入 S3 的 lambda。为了标记已经读取的分片,我将 ExclusiveStartShardId 登录到配置文件中。

我要做的是:

  1. 描述流(使用记录的 ExclusiveStartShardId)
  2. 获取流的分片
  3. 对于所有已关闭(具有 EndingSequenceNumber)的分片,我执行以下操作:
    • 获取某个分片的分片迭代器 (shardIteratorType: 'TRIM_HORIZON')
    • 遍历分片并获取记录,直到 NextShardIterator 变为 null

这里的问题是我只读取已关闭的分片,为了获得新记录,我必须等待(未确定的时间量)它被关闭。

似乎最后一个分片通常处于OPEN状态(没有 EndingSequenceNumber)。如果我从上面的伪代码中删除对 EndingSequenceNumber 的检查,我最终会出现无限循环,因为当我点击最后一个分片时,总是会出现 NextShardIterator。我也无法检查获取的项目是否为 0,因为分片中可能存在“间隙”。

在本教程中, numChanges用于停止无限循环http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.LowLevel.Walkthrough.html#Streams.LowLevel.Walkthrough.Step5

在这种情况下最好的方法是什么?

我还发现了一个类似的问题:Reading data from dynamodb streams。不幸的是,我找不到我的问题的答案。

0 投票
0 回答
118 浏览

amazon-web-services - 如何结合 aws cloudsearch 和 dynamodb 制作一个实时且可扩展/自适应的搜索系统?

我想使用来自 aws 的 cloudsearch 创建一个高反应性搜索系统。我已经在 lambda 和 dynamodb 触发器之间设置了一个测试过程,但结果不是我所期望的。我想要的是让我的搜索系统从我创建的 dynamodb 表中动态实时地获取数据。这意味着,每次我想增加记录数以从我的表中检索数据时,我都不需要设置批量大小。所以,我正在寻求一些可扩展性。我还需要我的搜索系统具有高度反应性。因为当有一个新条目时,它可能会在它被 cloudsearch 索引之前大约一分钟发生。这是很多时间。每次我发布数据时,我都必须等待一分钟才能搜索到它。我期待一些更具反应性的东西。

任何帮助将不胜感激。

谢谢。

0 投票
2 回答
876 浏览

amazon-dynamodb - AWS 发电机数据库触发器面临的问题

我创建了一个 dynamodb 表并将一个 lambda 函数与要触发的相同。最初它工作正常,对于每次插入,我都注意到cloudwatch中的 lambda 执行,但经过几次测试(例如频繁从表中添加和删除记录)后,它会自动停止触发 lambda。我无法找出其背后的真正原因。

请在这里帮我...

0 投票
2 回答
2918 浏览

apache-kafka - Kafka 条目到 DynamoDB

我希望将 Kafka 主题中的所有记录插入到 DynamoDB 中。是否有任何可用的开源插件可以做同样的事情。或者有没有其他更好的方法可以在 DynamoDB 本身内完成。

请建议

洛克什·纳拉扬

0 投票
0 回答
84 浏览

ios - AWS iOS SDK:是否可以在对 DynamoDB 表进行更改时进行长轮询或收到通知?

我正在开发一个需要对某个表进行近乎实时更新的应用程序。当前 AWS iOS 开发工具包是否有内置功能,可在对 DynamoDB 表进行更改时收到通知。我已经阅读并了解了DynamoDB Streams,但是在查看 iOS API 参考时我没有看到任何关于它们的信息。

如果 iOS SDK 中尚不存在该功能,是否可以将 Dynamo 分片信息从其他来源(即 REST API 调用)获取到我的应用程序中?

0 投票
2 回答
2337 浏览

amazon-web-services - 如何通过 AWS Lambda 索引 Amazon Elasticsearch Services 中的 Dynamodb 流数据?

我一步一步地按照本教程进行操作,但是当我到达“测试结果”步骤时,我在索引时间看不到我的表名,因为示例中显示了“所有产品”。

所以这意味着我的 dynamodb 表没有在我的 Amazon ES 域中建立索引。

我设置了所有授权并配置了 lambda,就像在示例中一样。

现在我只是不知道如何在 AWS ES 中触发我的 dynamodb 流。

0 投票
1 回答
108 浏览

amazon-dynamodb - 有效负载上的 DynamoDB 索引

我的 DynamboDB 行项目如下所示:(它是给我的)

我在 id + date_time 上添加了索引。如何在payload.type上添加索引?

谢谢

0 投票
1 回答
438 浏览

amazon-dynamodb - 将 DynamoDB 突变放置到哪个流分片?

我正在考虑将 DynamoDB 复制到 ElasticSearch (ES) 中。为此,我们评估了logstash 输入插件,但发现了以下缺点:

  • 拉模式下的 logstash 没有 HA/故障转移功能。它成为用于复制的 SPOF
  • 由于我们不想在 ES 索引上进行应用程序级别的连接,我们希望将多个表合并到一个 ES 文档中。该插件不为此用例提供功能。

因此,我们正在评估以下两种方法

  1. Lambda 读取 DynamoDB 流并通过 SQS 将其推送到 ES
  2. 我们自己的 DynamoDB 流处理器来代替 AWS lambdas

现在来到实际问题:排序对于将数据从 Dynamo 流复制到 ES 很重要,因为同一实体可能有多个突变。从 Streams/Lambda 文档中提到,不同流分片中的内容将由 lambdas 并发处理。

AWS 没有记录(或者至少我无法找到)有关 DynamoDB 突变如何映射到流分片的详细信息 - 是否与表的哈希键有任何关联,或者它是否是某种装箱算法。

无法控制突变映射到哪个流分片不会为开发人员提供控制流处理并行化的能力。上面的方法 #1 可能会乱序更新相同的 ES 文档。方法 #2 可以通过串行处理来解决,但由于分片放置策略没有约定,因此不允许并行化/复制规模(甚至跨数据分区)。

关于如何扩展并使复制对故障具有弹性的任何想法?或者有人可以阐明如何将突变放入 dynamodb 流分片中?