2009-04-08 7 views
2

続行中:Storing DataRelation in xml?適切なデータベースの代わりにデータセットとXML:いい考えはありませんか?

私の以前のスレッドにお返事いただきありがとうございます。しかし、なぜ誰もがこのXMLベースのアプローチをサポートしていない理由を尋ねることはできますか?何が問題になりますか?私はデータセットにconnstraintsを適用することができ、私は、おそらく、トランザクションを使用することができます。

これは初めてのことです。ですから、何らかの比較を見つけることができるリンクを教えてもらえれば、本当に役に立ちます。

FAQによると、ディスカッションはあまり推奨されていませんが、これは非常に具体的なものです。私はこれのために解雇されることを願っていません... :)

おかげで、 Saurabh。

+0

+1このような質問をしてから、潜在的に悪い考えに飛び乗る前に。私はちょうどあなたが好きな人たち、Saurabhは見ません。あなたの質問をありがとう!確かに; – Welbog

+0

;良い質問 - 私はいくつかの投票が残っていればよかった! –

答えて

3

データベース管理システムは、データを格納して迅速に検索し、データの整合性を保持し、データへの同時アクセスを活用するように特別に設計されています。

XMLは、もともとドキュメント用に設計されており、コンテンツをプレゼンテーションから分離していました。ファイル構造がとてもよく定義されているため、シンプルなデータを格納する便利な方法となりました。そして、データベース全体を不適切な構造で保存しようとする人たちと手を離しました。

XMLは、アトミック性、並行性、完全性、高速アクセスなどを保証しません。とにかく、本質的にではありません。 DataSetオブジェクトをXMLにシリアル化できるだけで、複数のユーザーのデータを格納するのに適しているわけではありません。

2つのツールに直面しているときは、実行する必要があるもの(この場合はDBMS)と何か他のことを行うように設計されているものの、目的のものを実行するために設計されたもの、sorta(この場合XML)では、おそらく最初のオプションを使うべきです。

3

複数のユーザーが同じ「データベース」ファイルにアクセスしたい場合、並行処理が主な問題になります。ファイル全体がメモリにロードされなければならないので、パフォーマンスはもう一つです。ファイルサイズが大きくなると、管理不能になります。また、照会のパフォーマンスはヒットします。これは、RDBMSとしてチューニングされ、磨かれたものを得ることほど効率的ではないためです。

0

私はこれをバックアップするために研究する必要がありますが、実際のデータベースを使用しないとパフォーマンスに影響があると思われます。

今後、別のプラットフォーム(ADO.NETではなく)上に構築された別のアプリケーションがデータにアクセスする必要が生じる可能性がある場合は、巨大なXMLファイルを操作する必要があります。リレーショナルDBは、この種の問題に対する標準的なアプローチです。

関連する問題