在云存储系统中,AWS需求量很大。扫描过程需要更快。那么在哪种情况下扫描过程如何工作以及哪一个(扫描/并行扫描)更好?
答案 0 :(得分:5)
<强> 1。扫描如何在AWS DynamoDB中运行?
<强>答:强>
i)扫描操作返回一个或多个项目。
ii)默认情况下,扫描操作按顺序进行。
iii)默认情况下,扫描在访问表格中的数据时最终使用一致的读取。
iv)如果扫描的项目总数超过最大数据集大小限制1 MB,扫描将停止,结果将作为LastEvaluatedKey值返回给用户,以便在后续操作中继续扫描。
v)默认情况下,扫描操作最终执行一致的读取,并且最多可以返回1 MB(一页)的数据。因此,单个扫描请求可以使用
(1 MB page size / 4 KB item size) / 2 (eventually consistent reads) = 128 read operations.
<强> 2。并行扫描如何在AWS DynamoDB中运行?
<强>答:强>
i)为了在大型表或二级索引上实现更快的性能,应用程序可以请求并行扫描操作。
ii)您可以并行运行多个工作线程或进程。每个工作人员将能够与其他工作人员一致地扫描表格的单独部分。 DynamoDB的扫描功能现在接受另外两个参数:
iii)这两个参数在一起使用时,会将扫描限制在表格中的特定项目块中。您还可以使用现有的Limit参数来控制单个扫描请求返回的数据量。
第3。 AWS DyanmoDB中的扫描与并行扫描?
<强>答:强>
i)扫描操作一次只能读取一个分区。因此,需要进行并行扫描,以便一次更快地读取多个分区。
ii)顺序扫描可能无法始终充分利用预配置的读取吞吐量容量。因此需要进行并行扫描。
iii)并行扫描,对于某些类型的查询和扫描,您的成本最多可降低4倍。
<强> 4。什么时候首选并行扫描?
<强>答:强>
如果满足以下条件,则可以选择并行扫描:
表格大小为20 GB或更大。
表中提供的读取吞吐量未得到充分利用。
顺序扫描操作太慢。
<强> 5。是否在扫描前应用过滤器表达式?
答案:否,在读取了项目后应用了FilterExpression;过滤过程不会消耗任何额外的读取容量单位。