這些天,我測試了 Dynamodb 的性能,我對性能感到失望。我query只在沒有任何過濾條件的分區(qū)鍵上使用命令。這意味著它只是簡單地讀取索引并返回。dynamodb.query( TableName='test-table', ReturnConsumedCapacity='TOTAL', KeyConditionExpression='tid = :tid', Limit=5000, ExpressionAttributeValues={ ':tid': {'N': '9999999'}, })---------- Part of Response ----------{ . . . "Count": 5000, "ScannedCount": 5000, "LastEvaluatedKey": { "tid": { "N": "9999999" }, "uid": { "N": "985377" } }, "ConsumedCapacity": { "TableName": "sam-push-test", "CapacityUnits": 110.5 }}大約需要 0.5 秒。它在與 Dynamodb 位于同一區(qū)域的 AWS Lambda(1024 內(nèi)存)中進行測試。我很好奇表現(xiàn)不佳是正常情況還是應該有什么我錯過了。顯然,AWS 表示 Dynamodb 可提供個位數(shù)毫秒的性能。Amazon DynamoDB 是一個鍵值和文檔數(shù)據(jù)庫,可在任何規(guī)模下提供個位數(shù)毫秒的性能。此外,query-latencyDynamodb 控制臺中的指標在我的測試中顯示為 100-150 毫秒。它是如何測量的?
1 回答

慕仙森
TA貢獻1827條經(jīng)驗 獲得超8個贊
讀取或?qū)懭雴蝹€項目時,您應該期望單位數(shù)毫秒的性能。但是當查詢一個包含 5000 個項目的頁面時(就像你的情況一樣),看到 ~100ms 是正常的。
當然,您還應該確保客戶端離 DynamoDB 端點不會太遠。環(huán)游世界一圈可以輕松增加100ms以上。
添加回答
舉報
0/150
提交
取消