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 操作。

还是这样做的错误方法?

4

1 回答 1

3

XML 是存储制造商强加给世界的一个阴谋,他们希望通过对所有数据进行 xml 化来使所有数据的大小呈指数膨胀,从而增加他们的利润。它作为一种存储/检索格式很糟糕,具有大量存储和解析开销。

由于您需要经常访问这些 xml 文件,因此最好将它们转换为原生 SQL 表结构,以便您可以在它们上使用实际的数据库操作、索引等。如果你幸运的话,也许你有一个可以本地处理 XML 的数据库,你应该利用它。否则,您每次都需要检查天空是否仍然是蓝色时,您会卡住检索 blob、反序列化 blob、将该 blob 输入 DOM 解析器、然后执行 DOM 操作。

于 2012-06-14T03:35:12.790 回答