私たちがアプリケーションで収集するデータの性質上、ユーザーが1,000,000以上の行のデータを検索できるようにするために必要です。できるだけ速く結果のクライアント側を受信します。膨大な量のレポートデータを表示する方法クライアント側(mongoDB、JS)
私たちはいろいろなテクニックを使い、ドキュメントストレージエンジンMongoDBを試しています。私たちは基本的にレポートデータをMongoにクライアント側で表示する方法で保存しています。
しかし、これは私があなたの経験に傾きたいところです。私たちはdatatables.netのようないくつかのレポートテーブルプラグインを使用してきましたが、クライアントが100,000 +レコードに一致する可能性のあるデータを要求すると、そのデータをクライアント側に渡すまでの待ち時間は、JSONをサーバからクライアント。
一度に1000件の結果しかクライアントに送信しないで、結果セットをフィルタリングしようとしましたが、ユーザーが列を並べ替えることを決定したらどうなりますか?要求全体をもう一度実行し、最初の1000の結果をクライアントにロードします。
しかし、クライアントが列内で検索することを選択した場合、結果を再度フェッチする必要があります。データのすべてがクライアント側にロードされたときに、これらの問題はすべて発生しません。
本質的に私の質問は、どのように効率的かつ迅速にクライアントが大規模なデータセットを検索して操作できるようにするのですが、すべての結果を一度に送信する必要がない方法でクライアント側に結果を提供しますしたがって、クライアントサイドをできるだけ軽量に保ちますか?
MongoDB用のフロントエンドデータタイプタイプのプラグインが必要です(潜在的にnode.js経由でダイレクトJSON通信が可能ですが、何も見つかりません)!
ありがとうございました。
MongoDBは[BSON](http://bsonspec.org/)にオブジェクトを格納するので、JSONへの変換はまだあります。私はあなたが見ているレイテンシの大部分が単に転送され、クライアント側で解析されなければならないデータの量に起因すると考えています。 –