こちらのgithub で公開されている DynamoDB Streams Kinesis Adapter には、次のコメントが付いたこの機能があります。
Kinesis モデルは、親シャードのマージ時に、隣接する親シャード ID を提供します。DynamoDB Streams はマージをサポートしていないため、これは常に null を返します。
私はこれを懸念しており、7 つのシャードの例を使用して私の懸念を説明します。簡単にするために、シャードに0から6までの名前を付けます。
0の親は保持ポリシーにより使用できなくなりました。1、2、3、4、5は DynamoDB テーブルのトラフィックが多いため兄弟であり、すべての親として0があり、 6は現在開いているシャードであり、 DynamoDB テーブルのトラフィック スパイクがダウンしたため、マージの結果でした。また、親は1 つしか持てないため、ランダムにその親は3であると仮定します。
つまり、上記の状態の DynamoDB ストリームに対してこのアダプターを使用してワーカーを開始すると、シャード0、3、および6の処理のみが開始されるということですか??