微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – JSON对象子字段上的DynamoDB查询

是否可以在dynamoDB表中搜索json对象的子字段?

我的桌子:

Item: "item name",Location: {...},Iteminformation :  
{  
   ItemName: "itemName",ProductLine: {  
      Brand: "Razer",ManufacturerSource: "Razer"  
}

最初在这个表中Iteminformation将是一个键并搜索一个对象,我们将为项目信息构造json,然后用json字符串作为键进行查询.现在我们需要实现该对象的子字段搜索,这可以每次包含不同的字段,即isDigital:“true”.

我在问题中注意到:
DynamoDB advanced scan – JAVA

答案似乎是否定的,我将不得不将这些字段分开.但我很好奇PHP库为什么以及如何在dynamoDB中查询JSON对象上的子字段.那么将列作为单独的字段存储然后在所有字段上添加索引真的没有更好的解决方案吗?

最佳答案
在查看文档后,按照我原先的意图实现搜索字段是不可行的.问题是,虽然值是JSON,但它们存储为字符串文字,因此我必须进行重构以开始存储为JSON对象.另外,我无法添加列和索引,因为搜索可以在任意数量的字段上操作,而不同的项可以具有不同的字段,即项可以具有Brand,Batteryinformation,Name.鉴于要求是这些子字段中的任何一个都应该是可搜索的,最好在Cloud Search或ElasticSearch中执行此操作,我可以在其中索引和搜索对象列中的任意字段和值.

由于这是一个DynamoDB表,我将使用CloudSearch,因为它提供了更容易的索引选项和数据集成.

原文地址:https://www.jb51.cc/java/437309.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐