我是 DynamoDB 的新手,谁能帮我在 DynamoDB 中使用JOIN?我使用无服务器框架和映射模板。我有POST和USER的表。 POST有userId字段。如何获取所有包含用户信息的帖子?在 MYSQL 中我可以使用 JOIN 但它在 DynamoDB 中如何工作?我阅读了 2 年前创建的 stackoverflow 中的帖子。伙计们写道,它不可用。也许有些事情已经改变了......?
问问题
3786 次
3 回答
11
DynamoDB 是一个NoSQL 数据库。这赋予了它分区、令人难以置信的性能、可扩展性、可靠性等。
权衡是它不是关系数据库。因此,DynamoDB 不会执行表连接。
您将需要单独阅读表格并在应用程序中“加入”所需的数据。
例如,UserId
从您的Post
表中检索 ,然后从表中检索User
给定的记录UserId
。
于 2018-07-09T22:18:15.370 回答
0
我找到了解决方案。gitHub 上的用户 @eltonio450展示了如何做到这一点。
于 2018-07-12T15:12:28.397 回答
0
从技术上讲,您可以使用 Amazon EMR Hadoop 在 DynamoDB 表之上创建EXTERNAL
Hive 表;然后使用 HiveQL 查询 Hive 表。
但是,不建议使用 Hive + DynamoDB 方法;因为 DynamoDB 专为低延迟查询而设计。Hive 是面向批处理的。
此外,Hive 可能会在应用任何查询谓词之前向 DynamoDB 表发出扫描(本质上效率低下)请求。
于 2019-11-23T20:08:53.097 回答