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

前端之家收集整理的这篇文章主要介绍了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,因为它提供了更容易的索引选项和数据集成.

猜你在找的Java相关文章