13 操作の順序の実行

操作対象のがすべて同じシャード・キーを共有する場合、書込み操作の順序を1つの原子的単位として実行できます。原子的単位とは、すべての操作が正常に実行されるか、いずれも実行されないということです。

また、順序は単独で実行されます。つまり、非常に長い順序を実行するスレッドがある場合、その順序で使用されているデータに、別のスレッドが割り込めないということです。長時間実行されている順序が完了するまで、順序で行われた変更を別のスレッドが確認することはできません。長時間実行されている順序で使用されているデータを、別のスレッドが変更することもできません。

順序では書込み操作のみサポートされることに注意してください。順序を使用する場合、格納と削除は行えますが、データの取得は行えません。

操作の順序を使用する場合、次のようになります。

  • 順序で使用されるキーはすべて、同じシャード・キーを共有する必要があります。

  • 操作はリスト化されますが、必ずしもリスト上の順序で実行されるわけではありません。むしろ、内部的に定義された、デッドロックが起こらない順序で実行されます。

この章の後半で、TableOperationFactoryおよびTableAPI.execute()を使用して操作の順序を作成し、実行する方法を示します。