SimpleDB にドメインがあり、そこから削除することはありません。私はそれについて次のクエリを実行しています。
select count(*) from table_name where last_updated > '2012-09-25';
一貫した読み取りパラメーターを true に設定していますが、実行ごとに異なる結果が返されます。このドメインから何も削除していないので、理想的には結果が昇順になっているはずですが、そうはなっていません。
ここで何か不足していますか?
SimpleDB にドメインがあり、そこから削除することはありません。私はそれについて次のクエリを実行しています。
select count(*) from table_name where last_updated > '2012-09-25';
一貫した読み取りパラメーターを true に設定していますが、実行ごとに異なる結果が返されます。このドメインから何も削除していないので、理想的には結果が昇順になっているはずですが、そうはなっていません。
ここで何か不足していますか?
ユースケースを正しく理解している場合は、Amazon SimpleDBのコンテキストでConsistentReadパラメーターのセマンティクスを誤って読んでいる可能性があります。Select:を参照してください。
trueに設定すると、最新のデータが返されるようになります。詳細については、整合性を参照してください。
最新のフレーズは、最終的には間違いなく誤解を招く可能性がありますが、結果の順序に対処/影響を与えるものではなく、最新の更新を意味し、ConsistentReadは、selectステートメントの前にあるすべての更新操作がこのselect操作にすでに表示されることを保証します。を参照してください。説明:
Amazon SimpleDBは、各ドメインの複数のコピーを保持します。データが書き込まれるか更新されると、データのすべてのコピーが更新されます。ただし、更新がすべての保管場所に反映されるまでには時間がかかります。データは最終的に一貫性があります が、すぐに読み取っても変更が表示されない場合があります。結果整合性のある読み取りがアプリケーションで受け入れられない場合は、ConsistentReadを使用してください。この操作は標準の読み取りよりも時間がかかる場合がありますが、常に最後に更新された値を返します。 [強調鉱山]
一貫性に関するリンクされたセクションには、この概念に関する詳細と図が示されています。
あなたがおそらく望む結果を達成するために、ステートメントによる単純な順序は仕事をするべきです、例えば:
select * from table_name where last_updated > '2012-09-25' order by last_updated;
SimpleDBでのこの操作にはいくつかの制約/微妙な点があるため、詳細については、 Sortの短いドキュメントをざっと読んでください。