nodejsで実行されているアプリケーションサーバーがあり、現在の永続化テクノロジー(MySQL)を置き換えようとしています。CouchDB、MongoDB、Redis、Riakなどのいくつかのnosqlオプションを検討しています。データのサイズは大きくなく(最大1 Gb)、単一のサーバーソリューションで問題ありません。
私たちは独自の変換/クエリ言語を開発しており、これを効率的に機能させるために、永続化テクノロジの最も重要な要件は、データ構造を非常に高速にナビゲートすることです。レコード/ドキュメント/ノードを取得し、リンク先のレコードを検索して、それらの一部を取得します。これは1回の変換で再帰的に実行され、通常の変換では約100.00レコードが再帰的に取得されます。
私は3つの可能な解決策の方向性を見ます
1)NoSQL製品を単純なキー値ストアとして使用し、集計、フィルタリングなどの高度な機能(おそらくインデックス作成を除く)を使用せず、すべてのレコードに対して1つずつリクエストを送信します。
2)処理中のキーバリューストア(Alfred?)を使用します(これははるかに効率的だと思いますが、それは単なる直感であり、実際の測定はまだ行われていません)。
3)変換エンジンはjavascriptで記述されており、変換自体は複雑なJSON構造として定義されているため、変換エンジンをJavascriptをサポートするnosql製品(MongoDBなど)のビューとして保存し、実行するたびに変換では、JSON構造を送信し、nosqlサーバーに変換を実行させます。
これを構築するためにあなたが考えることができる最良の方向性/製品は何ですか?
gr、
コーエン