[解決済み] SQLの代わりにXMLを使うのはどんなとき?[クローズド]
質問
私は数年間、データベース駆動型の Web アプリケーションに取り組んできましたが、最近、XML 対応の CMS を含むプロジェクトを引き受けました。これは、一般的なXML/XSLTの使用について考えるきっかけとなり、私が常に使用してきたアプローチ、つまり、すべてのデータを(My)SQLデータベースに格納し、必要に応じてWeb上でPHP/Pythonなどを使用してそれを操作するよりも、どんな状況でより有用であるかについて考えるようになりました。
データベースではなく XML ファイルにデータを保存することが望ましいアプリケーションの例を、どなたか教えていただけませんか?
どのように解決するのですか?
引用するには この本 (Effective XML: 50 Specific Ways to Improve Your XML)です。
「XMLはデータベースではありません。決して データベースであることを意図していません 決して データベースになることはないでしょう リレーショナル データベースは、20年以上の導入実績を持つ、実績ある技術です。 20年以上の導入実績があります。 実績のある技術です。堅牢で、安定した、有用な製品です。 有用な製品です。この先も 消えません。XMLは、異なるデータ間の移動に非常に有用な技術です。 異なるデータベース間、あるいはデータベースと データベース間、あるいはデータベースと他のプログラム間の 他のプログラムとの間でデータを移動させるのに非常に便利な技術です。しかし、XMLは それ自体はデータベースではありません。データベースのように使わないでください。 1つのように使ってはいけません。"
少しぶっきらぼうですが、これが要約だと思います。 XML はデータ交換フォーマットです。 XPath 式で DOM をクエリできる XML 解析ライブラリがあっても、それは DBMS とは違います。 DOM/XPath インターフェースで DBMS を構築することはできますが、ACID プロパティを取得したり大規模なデータ セットに拡張したりするには、DBMS エンジンとインデックス、ロギング、その他の DBMS の成果物を含むデータ形式を実装する必要があります - これは(定義上)XML 以外のものとなります。
関連
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] PHPでHTML/XMLをパースして処理する方法とは?
-
[解決済み] SQLテーブルで重複する値を検索する
-
[解決済み] SQL Server で複数行のテキストを 1 つのテキスト文字列に連結する方法
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] XMLの<![CDATA[]]>は何を意味するのですか?
-
[解決済み] T-SQLでnot equalには!=と<>のどちらを使うべきですか?
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
解決策:java.sql.SQLException: ユーザー ''@'localhost'' (パスワード: YES を使用) のアクセスが拒否されました。
-
[解決済み] SQLの結合形式 - 入れ子になった内側join
-
[解決済み] 1つのPostgreSQLクエリで複数のWITHステートメントを使用するには?
-
[解決済み] SQL Server : 列を行に変換する
-
[解決済み] SQL Serverでシングルクォートをエスケープするにはどうすればよいですか?
-
[解決済み] 最初の行への結合方法
-
[解決済み] SQL SELECT WHERE フィールドに単語が含まれる場合
-
[解決済み] SQLの複数列の順序付け
-
[解決済み] SQL ServerでINSERT INTOとしてデータをエクスポートする
-
[解決済み] Selectステートメントで特定のフィールドの重複を検索する