我一直在使用boto.dynamodb几年但最近发现我需要将列表和地图放入我的DynamoDB表中,所以我决定切换到boto.dynamodb2。
然而,在尝试这样做时,我发现dynamodb2的性能明显变慢。我很好奇是否应该这样做,如果是这样的话,转移到dynamodb2会有什么好处(假设我不需要使用DyanomoDB的任何新功能)。
在下面的测试中,我使用了Python time measure function
中的一些时序代码@timing
def test1():
logs = aws_conn.query(old_table, hash_key=88, attributes_to_get=attribs)
return list(logs)
@timing
def test2():
logs = log_table.query_2(key__eq=88, attributes_to_get=attribs)
return list(logs)
# >>> logs1 = test1() # dynamodb.layer2.query for 90705 objects
# test1 function took 60063.000 ms
# >>> logs2 = test2() # dynamodb.table.query_2 for 90706 objects
# test2 function took 164971.000 ms