2016-07-26 10 views
2

は、私は3つのテーブルを持っている:dynamodbのパフォーマンスがこれらのクエリで異なるのはなぜですか?

table 1 
======= 
Size 458.54 MB 
Count 2,887,152 

table 2 
======= 
Size 161.05 MB 
Count 1,060,444 

table 3 
======= 
Size 4.10 GB 
Count 2,629,162 

私は500のリードキャパシティ・ユニット(RCU)へのすべての3つのテーブルをプロビジョニングし、python2.7とシンプルなboto3.scanを()を使用して、20ページをページ付けました。

全く同じRCUを消費しているにもかかわらず、その期間が異なるのはなぜですか?

table 1 
======= 
seconds: 65.7738468647 
row_count: 131925 
scanned_count: 131925 
consumed_capacity: 2570.0 

table 2 
======= 
seconds: 97.8232300282 
row_count: 138092 
scanned_count: 138092 
consumed_capacity: 2570.0 

table 3 
======= 
seconds: 37.8384461403 
row_count: 13416 
scanned_count: 13416 
consumed_capacity: 2571.0 

答えて

2

違いはboto3レスポンスパーサーにあります。より大きい、より複雑なオブジェクトは解析に時間がかかります。私は、それぞれのテーブルのオブジェクトを見ると、より複雑なオブジェクトとクエリ速度との間に相関があることがわかります。転送時間も物事に大きな影響を与えます。

関連する問題