我有一个大的xml文件(100GB或更多),其中包含无序记录,如下所示:
<page id = "1">content 1</page>
<page id = "2">...</page>
<page id = "2">...</page>
... many other pages ...
<page id = "1">content 2</page>
... many other pages ...
我必须以只读模式访问数据,但是按页分组:
<page id = "1">
content1
content2
...
</page>
<page id = "2">
...
...
</page>
...other pages...
页面不得按ID排序。
我的解决方案现在需要预处理xml和每个页面:
对我来说问题是处理大量页面需要创建数百万个文件,这当然不是很好。
我的问题是,如果可以使用某种存档文件(就像tar或zip一样)来序列化我的所有数据。优点是只有一个包含我所有数据的大文件,可以按顺序读取,不一定需要压缩。
我更喜欢避免使用数据库,因为我的软件应该是独立的,我更喜欢使用python。
谢谢,
的Riccardo
答案 0 :(得分:0)
我建议你使用python标准库中的sqlite3
模块
单个sqlite数据库文件可以保存128TB
的{{1}}数据
管理所有这些数据而不是数百万个文件非常方便。