問題タブ [mongodb-replica]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
417 参照

mongodb - 変更ストリーム レプリカ セットでの MongoDB バッチ読み取り実装の問題

問題:
推論生成プロセスは、1 秒あたり約 300 の推論データを MongoDB コレクションに書き込みます。MongoDB の変更ストリーム機能は、別のプロセスによって利用され、これらの推論を読み戻し、後処理を行います。現在、変更ストリーム関数 API (mongoc_change_stream_next()) が呼び出されると、単一の推論データのみが返されます。したがって、すべての推論データを 1 秒以内に保存するには、このような呼び出しを合計 300 回行う必要があります。ただし、各読み取りの後、単一/複数の推論データの後処理を実行するために約 50 ミリ秒の時間が必要です。単一データ リターン モデルのため、15 倍の実効レイテンシが導入されます。この問題に取り組むために、私たちはMongoDB の変更ストリーム機能に沿ったバッチ読み取りメカニズム。同じものを実装するためにさまざまなオプションを試しましたが、変更ストリーム API 呼び出しごとに 1 つのデータしか取得できませんでした。この問題を整理する方法はありますか?

プラットフォーム:
OS: Ubuntu 16.04
Mongo-c-driver: 1.15.1
Mongo サーバー: 4.0.12

試したオプション:
カーソルのバッチ サイズを 1 より大きく設定する。