私は現在、電子商取引会社の知識グラフを構築しています。主に、商品カテゴリの階層、プロパティ、およびそれらの間の関係で構成されています。高可用性クラスタをサポートしており、オンラインクエリのパフォーマンスは良好です。
マスター・スレーブクラスタのサポート:一般的なリレーショナル問合せに加えて、我々は非常に多く、以下の点を気に。このグラフデータベースはオンライン検索クエリ処理に使用されるため、高可用性が重要です。データ量は何百万ものノードほど大きくはないので、複数のマシン間でデータをまたがる分散クラスタは必要ありませんが、複数のマシンを同時に読み取る必要があり、サービスは実行されませんマシンの1台がオフラインであってもダウンします。
高速オンラインクエリパフォーマンス。リレーションシップはオフラインで行うことができ、パフォーマンスはそれほど重要ではありません。しかし、「プロパティPが値Vに等しいノードを見つける」というようなオンラインクエリーをたくさん行う必要があるため、オンラインクエリー処理には良いパフォーマンスが必要です。このデータベースは読み込みが集中し、初期化後はあまり変更されません。
コミュニティとドキュメント。私たちのチームはグラフデータベースの分野では本当に新しいので、展開と開発のためのユーザーフレンドリーな文書と、問題解決のための積極的なコミュニティーを期待しています。上記の要件に基づいて
、私はいくつかの候補者を調査:
- のNeo4j。私たちはNeo4jを最初に試しました。実際、私は実際にそれが気に入っていました。特にCypherのクエリ言語が好きでした。しかしコミュニティ版ではクラスタをサポートしていないため、現在はエンタープライズ版の支払いに予算がないため、放棄しようとしています。
OrientDB。 OrientDBは市場で2番目に人気のあるもののようであり、はと思われ、コミュニティ版でクラスタをサポートしています。私はそれがウェブサイトにはっきりと記載されていないので、 "見える"という言葉を使用します。誰もこれをクリアすることはできますか? http://orientdbleaks.blogspot.jp/2015/06/the-orientdb-issues-that-made-us-give-up.html
タイタン:以外にも、私は私は本当に躊躇せOrientDBについて本当に負の記事を見つけました。 Titanも素晴らしいですが、元の会社が買収され、元の開発者が別の製品を開発しているので、将来の開発とメンテナンスは疑わしいです。
- ArangoDB。パフォーマンスレポート(https://www.arangodb.com/2015/10/benchmark-postgresql-mongodb-arangodb/)によると、これは非常に速いと思われますが、オンラインクエリ処理能力が十分で、クラスタに対するサポートも私には分かりません。
ドキュメンテーションとコミュニティについては、これがあなたがそれをやり始めた後でしか知り得ないものなので、私は本当に分かりません。
私の要件に基づいて、私はOrientDBとArangoDBが私の候補者かもしれないと思っていますが、上記の点のためにどちらを選ぶべきかわかりません。それとも、私が逃している他の良い候補者がいますか?
ありがとうございました。
Neo4jには、エンタープライズエディション(サポートなし)を無料でご利用いただけるスタートアッププログラムと、非常に手頃な価格のサポートがあります。コミュニティ志向のNeo4jはこれまでに最も反応の良いコミュニティを持っています! –
残念ながら(回答が得られていますが)、ツール/製品の推奨に関する質問をしているので、この質問は話題にはなりません。 –