0

一連の非常に複雑な XML ファイルがあります。これらに頻繁にアクセスする必要があるため、.xml ファイルを読み取るのはちょっと面倒です。一連の大規模な SQL ステートメントを作成することを検討してきましたが、その大規模なタスクを開始する前に、XML ファイル全体をシリアル化して MySQL に BLOB として保存する方法について知りたいと思いました。

My intentions: 
XML -> store_into_database()
database -> read_seralized_data($row)
echo -> un_serialize_data($row)

これにより、オンライン データベースから解析する .xml ファイルを保存でき、I/O 操作を 1 回実行するだけで済みます。

またはこれを行うには間違った方法ですか?

4

1 に答える 1

3

XML は、すべてのデータを xml 化することにより、すべてのデータのサイズを指数関数的に肥大化させて利益を増やそうとするストレージ メーカーによって世界に押し付けられた陰謀です。大規模なストレージと解析のオーバーヘッドの両方を備えた、ストレージ/検索形式としてはがらくたです。

これらの xml ファイルに頻繁にアクセスする必要があるため、実際の DB 操作、インデックス作成などを使用できるように、それらをネイティブ SQL テーブル構造に変換することをお勧めします。運が良ければ、XML をネイティブに処理できる DB があるかもしれません。それを利用する必要があります。そうしないと、空がまだ青いかどうかを確認する必要があるたびに、BLOB の取得、BLOB のシリアル化解除、その BLOB の DOM パーサーへのフィード、および DOM 操作の実行に行き詰まります。

于 2012-06-14T03:35:12.790 に答える