我有一个小问题,需要一些建议:
每个表的最新条目应该可以快速获得,并且最有可能被查询最多(有点像"实时跟踪数据").由于缺少'Last()'或类似,我正在考虑创建另一个表"LatestValues",其中更新每个数据表的最新条目以便更快地检索.但是,这会为每个写操作添加额外的更新.此外,大部分流量都集中在这张桌子上(好/坏?).有没有更好的解决方案,或者我错过了什么?
另外,假设我们要查询数据表中的值.由于扫描显然是不可能的,因此通过复制数据来创建二级索引是唯一的选择,有效地使存储要求和写入操作量增加一倍吗?还有其他方法吗?
我主要关注的是DynamoDB和Azure Table Storage,但我也很好奇BigTable如何处理这个问题.
根据 DynamoDB 文档,如果使用支持的 SDK,会自动重试导致数据库限制的请求。但是,我找不到关于 boto 如何处理节流情况的任何提及。boto 是否会自动重试受限制的请求,还是应该开始捕获 ProvisionedThroughputExceededException?