簡體   English   中英

使用篩選器進行掃描在DynamoDB中返回零結果

[英]Scan with filter returns zero results in DynamoDB

我在DynamoDB中有一個約有30萬行的表。 它包含三列:源,數據和周期。 source屬性是哈希鍵,data是范圍鍵。 循環屬性是一個數字,每次添加一行時,應用程序都會添加該數字。 我以前使用以下過濾器掃描這些行:

{
    TableName: "tableName",
    Limit: 20,
    ScanFilter: {
        cycles: {
            AttributeValueList: [
                {
                    N: "0"
                }
            ],
            ComparisonOperator: "EQ"
        }
    }
}

但是,此掃描過濾器似乎自發地決定不再正常工作。 每當我執行此請求時,它將返回零結果。 當我刪除scanfilter時,它將返回20個結果,因此我認為它與limit或tableName屬性無關。 有趣的是,當我設置過濾器以查找周期等於“ 1”的項目時,它實際上是有效的,可能是因為在表的開頭有10行,周期為1。

我的問題只是如何解決此問題。 我應該添加一個新索引,還是應該更改此scanfilter? 我也可以嘗試使用查詢命令而不是掃描,但是我以前的嘗試也沒有成功。

沒關系,我必須為此使用查詢方法。 我注意到scan方法僅從表中獲取前X個行,直到scanFilter返回false為止,因此它不會搜索整個表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM