Java 如何优化DynamoDb';s索引

Java 如何优化DynamoDb';s索引,java,indexing,amazon-dynamodb,Java,Indexing,Amazon Dynamodb,我们正在评估DynamoDb,以及使用它是否有意义 目前,我们有一个关系数据库,大约有70K行。为了简单起见,假设模式有4个字段,有两个索引(供应商名称、合同编号) 使用Dynamo,是否可以允许搜索供应商名称或合同编号,并让查询使用索引检索结果?从我在网上看到的情况来看,这似乎不是一个选择 谢谢。DynamoDB将能够处理查询工作负载,其中包括查找合同编号和供应商名称。如果使用contract\u number作为基本表的分区键,使用vendor\u name作为基本表的排序键,则基本表将能够

我们正在评估DynamoDb,以及使用它是否有意义

目前,我们有一个关系数据库,大约有70K行。为了简单起见,假设模式有4个字段,有两个索引(供应商名称、合同编号)

使用Dynamo,是否可以允许搜索
供应商名称
合同编号
,并让查询使用索引检索结果?从我在网上看到的情况来看,这似乎不是一个选择


谢谢。

DynamoDB将能够处理查询工作负载,其中包括查找
合同编号
供应商名称
。如果使用
contract\u number
作为基本表的分区键,使用
vendor\u name
作为基本表的排序键,则基本表将能够处理特定合同上所有供应商的查询查找,以及合同上特定供应商的GetItem查找。此外,您还可以添加全局二级索引(GSI),以支持按供应商名称查找所有合同。这个GSI的模式可能会有一个分区键
供应商名称
和一个排序键
合同号

?在我的原型中,我这样做了,花了2天多的时间为75K记录创建索引。您没有提到这一点。我相信索引的创建速度只能在订阅的写吞吐量允许的范围内。对不起,我不知道这有多重要。此外,在我的原型中,我创建了主键作为
合同编号
,而我的辅助键(所有值)作为
供应商名称
可以使用其中一个,对吗?这意味着我知道我可以使用这两种方法进行搜索,但如果我只想搜索
供应商名称
合同编号
,我当前的设置将允许这样做。
vendor_name|contract_number|vendor_code|address
-------------------------------------------------
ABC Corp   |123            |abc        |1 Main St.
123 Corp   |456            |ott        |1 Off Main St.