4

SQL Server 2008 から Versant OODB に切り替えることで、会社 (開発者だけでなく) にどのようなメリットがありますか?

回答に役立つプロジェクトと事実に関する詳細情報 (さらに必要な場合はお知らせください):

  • 非常に小規模なチームであり、OODB を使用したことはほとんどありません。
  • プロジェクトは NHibernate 2 を使用します。
  • 約 75% のテスト カバレッジ。
  • ASP.NET MVC アプリ。

この段階では、次の点のために切り替えを正当化できませんでした (主に db4o に関連し、Versant のメインストリーム OODB には関連していません)。

  • 「マネージャー」、プロファイラー、統合/移行ツールなどの束があるRDBMSの世界と比較して、ツールはかなり悪いです。
  • ドキュメンテーションは、私が観察できるものから非常に基本的であり、Java と大きく混在しています。
  • RDBMS と比較して、ネット上のリソースはそれほど多くありません。
  • 他のデータベースへの切り替えは (RDBMS とは対照的に) 問題になる可能性があります。
  • 開発者と IT チームの学習曲線。
  • 追加のライセンス費用。
  • 追加のメンテナンス費用;
  • MSDeployment との統合なし (自動バックアップ、MSBuild、パッケージングなどを含む)。
4

5 に答える 5

7

オブジェクトモデルによって異なります。ドメイン内で複雑な階層関係を持つ深いオブジェクトグラフを処理している場合は、SQLServer2008からVersantODBに切り替えることで大きなメリットが得られます。フラットオブジェクトを扱っている場合は、リレーショナルエンジンに固執します。www.polepos.orgでc/sの結果を確認してください:http: //polepos.sourceforge.net/results/PolePositionClientServer.pdf

于 2011-03-17T19:49:11.683 に答える
6

SQLServer2005からVersantに切り替えた実際のユーザーによるコメントは次のとおりです。

これが私と私の同僚からのVOD.Netに関するフィードバックです。

私は自分のアイデアを賛否両論にグループ化しました

長所:(一言で言えば:スピード)

  • データベースエンジンは、データの読み取りと書き込みが高速です。これまでのところ、SQL Server 2005よりも約5〜10倍高速です。
  • 標準のデータアクセス層テクノロジーと同じことを行うために必要なコードの量を削減します
  • また、新しい機能を開発するための時間を短縮します
  • 厳密なオブジェクト構造を作成し、データの整合性を促進します
  • VODへのデータのインポートは簡単です

短所:(一言で言えば:トラブルシューティングのスキルが必要です)

  • 私たちの主な欠点は、管理ツールの使いやすさ(管理コンソールとオブジェクトインスペクター)についてです。
  • ボタン/リンクは、それらが何をするのかについて明確ではありません。通常、ボタン/リンクを使用しようとするとわかります。
  • Versantコンパイル/データベース更新エラーは十分に明確ではありません。エラーの原因となるクラスはほとんどわかりませんが、理由はわかりません。そのため、自分でデバッグする必要があります。
  • [データベースの確認]メニューオプションを使用すると機能せず、エラーが表示されます(時間によって異なります)
  • アプリケーションの移行
  • DALパターンアプリケーションを移行する場合、UIに同じコードを維持しようとすると、VODで動作させるのに時間がかかります。

履歴書では、上級開発者のスキルと複雑な/ビッグデータ構造を持つ企業にはVOD.Netを使用することをお勧めします。既存のアプリケーションを移行するよりも、新しいアプリケーションを作成する方が間違いなく高速です。オブジェクトインスペクターは、よりユーザーフレンドリーにするために再設計する必要があります。

LINQpadのサポートを提供することで、オブジェクトインスペクターの懸念事項のいくつかに対処しました。感情的な議論ではなく、技術的なメリットに基づいて切り替えることを決定する必要があると思います。また、VersantはMicrosoftのパートナーであり、優れたOOスキルVersantを持っているかどうかに関係なく多くの機会があります。

于 2011-03-17T20:01:46.570 に答える
4

あなたは忘れました....それはおそらく私にはるかに速く行くでしょう(しかしあなたのモデルに依存します。あなたが単純なモデルを持っているなら、私はただRDBに固執することをお勧めします)。

多対任意の漸化式、ネストされたサブグラフなどがある場合は、はるかに高速になります。

もちろん、それははるかに少ないハードウェアでも実行されます。IBMの調査によると、中間層でCPUの約50%を節約できます(たとえば、RDBですべての型変換が行われたWebサーバー)。

また、データベースの専門家は必要ありません..オブジェクト指向の人であれば、すでにスキルセットを持っています...特にHibernate / nHibernateを知っている場合は、HibernateとORMスペースからのオブジェクトライフサイクル管理の概念が基本的に、OODBの世界からハイジャックされ、RDBキャンプに移植されました。

また、常にDBAにアクセスしてスキーマの更新を要求しなくても、開発サイクルをはるかに高速に繰り返すことができます。

....RDBは最終的にメインフレームの道を進みます。まだありますが、新しいプロジェクトには使用されていません。それらのCobaltプログラマーも、当時はそれを信じていませんでした...だから、すべてのna-sayersを気にしないでください。

于 2011-03-17T19:49:57.410 に答える
3

切り替えたい場合は切り替えてください。これが唯一の「プラス」ポイントです。

「私たち全員がうんざりしているオブジェクト リレーショナル インピーダンスのミスマッチを取り除きます。」

あなたはすでにネガのほとんどをリストしました。さらに2つ追加します。

  • Versant OODB のスキルを求められる仕事はありますか?
  • Versant OODB のスキルを持つ開発者は何人ですか?
于 2011-03-17T09:41:49.703 に答える
1

開示では、私は Versant のセールス部門で働いています。あなたの質問にコメントすると、Versant は商用製品ですが、SQL Server と同様に同様の価格設定があります。Community Edition は無料で、データベースのサイズに制限があります。Standard Edition は 1 回あたりのコストが少額です。サーバーですが、許可されるスレッドの数が制限されています。Enterprise Edition は高価ですが、スケーラビリティとパフォーマンスが必要な場合は、SQL Server または Oracle よりも安価です。また、nHibernate から LINQ に移行することで、それを Versant のデータベースで使用できるようになります。将来、SQL Server に戻す場合は、EF または LINQ TO SQL を使用して非常に簡単に移行できるため、データベース インフラストラクチャのリスク。これは、独自のインターフェイスを備えた KVP NoSQL ストアを使用するのではなく、Versant にとってポイントとなります。確かに、リレーショナルのドキュメントははるかに少なく、しかし、www.odbms.org には優れた情報と参考資料がいくつかあります。チームが C# に習熟していれば、学習曲線は非常に簡単です。また、管理の観点からすると、Versant はデータベースであるため、バックアップと回復の手順を学習するのは慣れているように見えます。C++、Java、または .Net のいずれのお客様も、Versant の利点は、開発の容易さ、パフォーマンス、およびサーバーとストレージのリソース量を抑えてニーズをサポートできることであると述べています。

于 2011-03-17T20:14:00.413 に答える