2

私はOrientDBグラフデータベースを使ってプロジェクトを進めました。私はデータベースを埋めることができ、問題なくクエリーを実行することができました。しかし、OrientDBの分散機能を使用してクエリを実行する必要が生じた後、重要な(おそらく些細な)疑念が生じました。分散アーキテクチャのOrientDBはサーバー間の頂点レプリケーションで動作しますか?

3つの異なるマシンを使用しても問題なく分散モードを使用することができましたが、私が使った3台のマシンにOrientDBが本当に自分のデータベースを格納していることを確認したかったのです。それを確認する方法はありますか?

私はこの回答を研究していたとき、OrientDBがデータベース全体をすべてのマシンに複製するという結論に達しました。それは間違いありませんか?分散アーキテクチャを使用する目的はパフォーマンスを向上させることでしたが、OrientDBがレプリケーションで動作し、特定のマシンで1つのクエリを実行すると、クエリはすべてのマシンを使用して処理されるか、

OrientDBが分散モードを使用しているかどうかを知りたい場合は、頂点と辺をマシンに分散し、すべてのマシンを使用してクエリを処理しますか?

私はドキュメント全体を読む:http://orientdb.com/docs/2.0/orientdb.wiki/Distributed-Architecture.htmlとこの質問の明確な説明を見つけることができませんでした。

ありがとうございます!

+0

参照:http://orientdb.com/docs/last/Replication.htmlおよびhttp://orientdb.com/docs/last/Distributed-Sharding.html –

+0

こんにちは@OleksandrGubchenkoは私を助けてくれてありがとう。私はそれらのリンクを見たことがありますが、OrientDBがデータベース全体をすべてのマシンで複製するのか、あるいは頂点とエッジを配布するのかは本当に分かりません。 –

答えて

1

OrientDBは、デフォルトですべてのサーバー上のDB全体を複製します。あなたが探しているのは"Sharding"です。 OrientDBは手動シャーディング(将来的には自動)をサポートしているので、アプリケーション(アプリケーション)が頂点/エッジをどこに格納するかを決めることができます。

+0

お返事ありがとうございました! –

+0

分散モードでクエリを実行すると、シャードなしのパフォーマンスの向上に関して、すべてのマシンで処理が行われますか?おそらく正しくないでしょうか? –

+1

シャーディングなしでは、すべてのサーバーが同じデータを持っていることを意味します。このため、パフォーマンス上の理由から、クエリはローカルサーバー上でのみ実行されます。クライアントをROUND_ROBIN接続ストラテジでN台のサーバーに接続できるので、すべてのサーバーを使用することになります。 – Lvca

関連する問題