我正在将条目写入 DynamoDB 表:
import time
...
for item in my_big_map.items():
Ddb_model(column1=item[0], column2=item[1], column_timestamp=time.time()).save()
我怀疑这很慢,所以我正在考虑使用多线程策略,例如concurrent.futures
将每个条目写入表:
def write_one_entry(item):
Ddb_model(column1=item[0], column2=item[1], column_timestamp=time.time()).save()
with concurrent.futures.ThreadPoolExecutor() as executor:
executor.map(write_one_entry, my_big_map.items())
但是,我在 PynamoDB 的文档中发现了这种批量写入的方法。看起来这是一种加速写入操作的便捷方式。
它是否也使用多线程策略?
PynamoDB 实现是否比concurrent.futures
用于批量写入更好?