私のアプリケーションでは、DynamoDB テーブルの更新を定期的にチェックする必要があるという要件があります。正確には、チェックする必要があるフィールドはハッシュ キーではないため、クエリを実行できません。スキャンする必要があります。私が作成しようとしているスキャン フィルターは、日付を含むフィールド (表では文字列としてコード化されています) をチェックする必要があり、私が使用しているロジックは、過去 1 時間に作成または更新されたすべてのレコードを要求するものです。私が使用しているスニペットは以下のとおりです。
Condition scanFilterCondition = new Condition()
.withComparisonOperator(ComparisonOperator.BETWEEN.toString())
.withAttributeValueList(new AttributeValue().withS(new Date(currentTime-3600000).toString()),
new AttributeValue().withS(new Date(currentTime).toString()));
正しいようですが、常に空のセットを返すように見えるため、明らかに正しくありません。
これが正しくない理由を理解するためにグーグルで検索してきましたが、DyanmoDB の日付のスキャン/クエリに関するものは見つかりませんでした。
障害に関するアイデアはありますか?