我有一个包含视频信息的DynamoDB表。
当前,“ videoID”是主键(哈希),“ Category”是范围键(排序)。
我想获取所有“类别”(范围键)的列表,因此我可以允许用户从可用的视频类别之一中进行选择。
https://www.quora.com/What-are-some-good-ways-to-extract-one-single-column-from-a-DynamoDB-table
我读到的内容是,如果您修改了属性,将“类别”更改为全局二级索引,则可以返回该GSI的项目。但是我一直找不到解决方法。
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSIJavaDocumentAPI.html
所以我想这给了我三个问题:
是否可以通过仅查询范围键来找到“类别”中的项目?
如果将类别更改为GSI,我可以用这种方式找到项目吗?
要么
是扫描整个表格的唯一方法吗?
在此先感谢您的帮助
最佳答案
Is the only way of doing it scanning the whole table?
-否,您可以实施GSI以避免它
Is there a way to do to find the items in Category by querying just the range key?
-是的,如果您不想扫描整个表格,则需要创建GSI,其类别将为哈希。该GSI本身将充当表格,您可以通过传递类别值来对其进行查询。
If change Category to a GSI can I find the items that way?
-是的,您可以使用类别值在GSI上进行查询
I was reading that if you modified change the attribute "Category" to a global secondary index you can return the items for that GSI. But I have not been able to find how to do that.
-创建表时需要创建GSI,指定的链接中提供了示例,完成后便可以查询该GSI
参考文献:http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSI.html