将XML数据存储在MySQL数据库中的最佳方法,具有一些特定要求

Jac*_*ack 12 xml mysql database data-structures

我从服务中接收XML数据.我收到的测试数据有大约300个XML节点,显然太多,无法在MySQL数据库中创建单独的行.

问题是我们理想情况下需要存储所有数据,我们可能需要在将来的某个时候再次引用数据 - 我们不能只处理一次并删除XML字符串.

将这些数据存储在MySQL数据库中的最佳方法是什么?

我已经预测,在几个月内以预测的速度,如果我们以TEXT格式存储原始XML数据,数据库可能会增长到大约500MB.从长远来看,这感觉不切实际.

Sri*_*aju 16

您可以创建一个blob列(即mediumtext列).您可以压缩XML,然后存储在MySQL中,而不是将XML纯粹作为字符串插入数据库中.

当你从MySQL读取时,你再次解压缩它.由于XML是文本,因此压缩率非常高(压缩率接近80%).思想过程是,磁盘IO比压缩/解压缩需要更长的时间,主要是处理器绑定.

缺点是你将无法使用SQL查询或进行全文搜索....