2011-07-13 57 views
1

在包含數百萬個條目的SimpleDB表上獲得語句SELECT count(*) FROM db_name的響應需要多長時間? (目前我的桌子> 16M)。在包含數百萬個條目的SimpleDB表上計數(*)

如果操作時間過長,不應該使用next_token參數進行某種「分頁」操作嗎? (它現在掛在那裏幾分鐘!)

+0

手錶,這也.. http://stackoverflow.com/questions/433913/in-sql-is-there-a-difference-between-count-and-countfieldname –

+0

如果您只需要一個表中的行數,你可以使用DomainMetaData操作並查看AttributeValueCount值嗎? –

回答

1

這裏有些不對勁。沒有計數查詢將花費超過5秒鐘,因爲在5秒鐘之後它會切斷並給你下一個令牌。

如果計數請求花費的時間超過5秒,Amazon SimpleDB將返回它可以計數的項目數和下一個標記以返回其他結果。客戶負責累計部分計數。

http://docs.amazonwebservices.com/AmazonSimpleDB/latest/DeveloperGuide/CountingDataSelect.html

+0

我已經深入瞭解boto代碼:看起來他們的'select'實現獲取所有結果,即它使用SDB的'next_token'工具來執行迭代。謎團已揭開 :) – jldupont