2

DB4O オブジェクト データベースに関する情報を探しています。クライアント/サーバー モードがあることは知っていますが、それがどれほどスケーラブルかはわかりません。私はオブジェクト データベースのアイデアが大好きですが、自分のプロジェクトで使用する適切な OODB をまだ見つけることができませんでした。だから私の質問は:

  • マルチクライアント環境に DB4O をデプロイした人がいる場合、RDBMS と比較してどのように機能するか興味がありますか?
  • これまでに DB4O を利用した Web アプリケーションはありますか?
  • SQL Server (少なくとも SQL Express) の代わりとして DB4O を使用できますか?
  • DB4O が実際にサポートできる同時クライアント数はいくつですか?
  • DBのサイズが大きくなるとパフォーマンスは低下しますか?

ありがとう

PS C#版に興味があります。

4

2 に答える 2

4

私は一般的に Vagaus と他のコメントに同意します。場合によっては db4o で置き換えることができますが、実際にはシナリオによって異なります。オブジェクト データベースは 1 つのツールに過ぎず、すべてのニーズに対応できるわけではありません。おそらく試してみるべきです。

いくつかのコメントを追加したいだけです:

  • マルチクライアント環境: db4o は組み込みモードに重点を置いています。クライアント/サーバー モードはアドオンであり、実際にはデフォルト モードではありません。db4o は、クライアントとサーバーが「強く」結合されていることを期待しています。クライアントとサーバーは同じクラスを必要とします。そうしないと、災害が発生します。また、db4o サーバーは、複数のデータベース、ユーザー管理などをサポートしていません。
  • SQL Server (少なくとも SQL Express) の代替品: 確かに大規模な SQL Server 用ではありません。db4o よりも強力なオブジェクト データベースが必要です。db4o は Express Edition と同等です。
  • DB サイズが大きくなるとパフォーマンスは低下しますか: はい、すべてのデータベースと同様に低下します。db4o は小規模なデータベース用に構築されています。約 2 ~ 16 GB が db4o に適したサイズです。
  • 同時実行制御: db4o には、クライアント サーバー モードの同時実行制御が非常に限られています。比較的弱い「Read Committed」分離モードのみをサポートします。

前述のように、db4o は組み込みシナリオ向けに設計されています。より大きなクライアント サーバー データベースの場合は、おそらく他の (オブジェクト) データベースを調べる必要があります。

于 2011-03-03T09:14:45.680 に答える
3

簡単な答え: はい、db4o は RDBM の代わりとして使用できます。

長い答え: 場合によります。

私は本当に「フリーサイズ」を信じていないので、私見ですが、オブジェクトモデル、アクセスパターン、マシン構成、データベースチューニング、予想される成長率、インデックスの数などに依存します.

私が考えることができる最善のアドバイスは、コメントですでに述べられています。実際のアプリケーションにできるだけ近いオブジェクト モデル/アクセス パターンを使用して独自のパフォーマンス測定を行い、結論を出してください。

それを言った後、いくつかのベンチマーク結果を見たい場合は、ポレポスの結果を見ることができます. ただし、これらの結果は古いバージョンの db4o (現在のバージョン 7.12 ではなく 6.4) に基づいていることに注意してください。近い将来、新しい結果を公開する予定です。

db4o (たとえばjease ) を使用する Web プロジェクトがあると確信していますが、正確な方法はわかりません。

db4o のパフォーマンスが要件を満たしていない場合でも、OODB をあきらめないことをお勧めします (通常、OODB を使用すると、ライブ (開発に関して) が非常に簡単になります)。この場合、他のオプション ( VODなど- 同じベンダーからのもの) を確認してください。

于 2011-03-03T05:15:59.417 に答える