1

私がやりたいことは、Cassandra の「テーブル」に対してクエリを実行し、現在の一致するデータだけでなく、追加される将来のデータを取得することです。

データが常に「テーブル」に追加されるアプリケーションがあり、このデータの取得に関心のある多くの「クライアント」がいます。

したがって、クエリの最初の結果は、クライアントのクエリに一致する現在のデータになり、その後、追加された進行中のデータを受信したいと考えています。各クライアントは、異なるクエリを作成している可能性があります。

ポーリングすることなくデータを受信できるように、コールバックをクエリに登録することをお勧めします。

これはカサンドラでも可能ですか?

ありがとうございました。

PS 私の読みでは、MongoDB はこの機能をサポートしているようです。

4

2 に答える 2

1

現在、Cassandra でこれを行うことはできませんが、Cassandra 2.0 で導入される新しいトリガー機能により、必要なことが行われる可能性があります。2.0 が (間もなく) リリースされたときにのみ、実験的なものになります。

于 2013-08-14T21:16:08.537 に答える
0

実際、MongoDB には、この法案に適合する機能があります。これは「テーラブル カーソル」と呼ばれ、キャップ付きコレクション、つまりリング バッファのように機能し、古いデータを「忘れる」コレクションでのみ使用できます。tailable カーソルがコレクション全体を使い果たした後、次の読み取り試行は、新しいデータが利用可能になるまでブロックされます。

アプリケーションの残りの部分がそのコールバックを登録できるリーダー スレッドを実装することで、これを簡単にコールバック パターンに変換できます。

于 2013-08-14T21:23:09.510 に答える