[问题] ET.iterparse的内存使用量

楼主: ides13 (juso)   2018-06-04 18:05:12
请教各位:
https://data.gov.tw/dataset/32500
本国专利技术名词中英对照词库,可以从上面网址下载。档案格式为xml,而且档案很大
,约800mb。
我想把它下载下来,当作电脑中的字典使用。于是写了两组code。
第一组使用ET.iterparse;第二组使用ET.parse。
https://repl.it/@ides13chen/dictionary
书中写说ET.iterparse使用的内存量比较小,但是我执行后查了电脑中的内存使用
量最后到达700mb,和预期的7mb差很多,是我哪里做错了吗?
另外,run了这两组code后,觉得有点慢。感觉xml格式不适合当字典使用?
如果转成数据库档会比较快吗?可以提供建议吗?谢谢。
作者: st1009 (前端攻城师)   2018-06-04 20:27:00
http://codepad.org/bPqMyuly我这种写法抓一笔之后,会把前一笔释放,占用内存应该会小一点,您可以试看看我日前有尝试数据库跑大型xml,后来觉得还是直接python跑会比较快一些,然后如果要建议,我会觉得这类搜寻要优化速*速度可以尝试预处理资料结构,譬如依照编码弄成一颗二元搜寻树
楼主: ides13 (juso)   2018-06-05 06:52:00
谢谢你提供资讯,我做不来二元树,看来只能跑xml了。

Links booklink

Contact Us: admin [ a t ] ucptt.com