如何使用nodejs使用Dynamodb并行扫描检索数据

时间:2017-09-01 20:05:01

标签: node.js multithreading amazon-dynamodb amazon

我正在使用nodejs将发电机表导入S3。我的一切工作正常,但整个副本非常慢,因为我有数百万条记录,顺序扫描限制为1MB,所以我正在寻找使用节点对发电机dB进行并行扫描。

但要做到这一点,我需要创建多个线程并将并行工作分配给节点中的那些线程。我想知道是否有推荐的方法,或者您是否建议使用Data Pipeline导入数据?你怎么认为我应该去做呢?

1 个答案:

答案 0 :(得分:0)

您可以使用Scan API中提供的内置并行扫描功能。整个将分为多个部分,并将对各个部分进行扫描。

Parallel scan

Segment: 0,
TotalSegments: 5
  

细分:对于并行扫描请求,细分会识别个人   要由应用程序工作人员扫描的段。

     

段ID从零开始,因此第一段始终为0.对于   例如,如果要使用四个应用程序线程来扫描表   或者索引,然后第一个线程指定Segment值为0,即   第二个线程指定1,依此类推。

     

Segment的值必须大于或等于0且小于   而不是为TotalSegments提供的值。

     

如果您提供细分,则还必须提供TotalSegments。

     

TotalSegments: - 对于并行扫描请求,TotalSegments表示   扫描操作所属的段总数   分为。 TotalSegments的值对应于的数量   将执行并行扫描的应用程序工作者。例如,   如果你想使用四个应用程序线程来扫描一个表或一个   index,指定TotalSegments值为4.