邮编库的数据扩充到百万条数量级
--James Qi 2010年2月21日 (日) 00:12 (CST)
邮编库网站去年初添加了3万多条详细邮编资料,虽然有网友反映一些数据过时,但也没有更好的数据,就一直在先用着。
春节前找到、下载了一个170万条数据的邮政编码数据库,数据是2008年的,虽然已经过了1年多,不算是最新的了,但依然比我原来用的3万多条的数据要新而且全,需要说明的是170万条数据只是地址的数量,实际邮政编码的数量仍然是3万多条,也就是说平均每条邮政编码对应有大约50条左右的地址。
先把原始SQL Server格式让同事帮忙转为Access,然后导出成txt文件,还编了个小vb程序来处理。将新的3万多条数据处理好了以后用xml文件格式导入MediaWiki,覆盖以前的旧数据,这样MySQL数据库的大小也增加了数百兆。
为了让邮编库网站有自己的特点,这次干脆将170万条海量数据全部做成Wiki上的单独页面,搜索引擎收录后更方便网友查找。只是数据量实在太大了,我自己的机器处理大约800M的XML文件数据中都数次反应极慢,后来分成了多个文件来处理。导入MySQL也是一个考验,这个库从1.xG增加到1xG,硬盘空间不足只好删除备份,记录总数达到惊人的6000万条,其中categorylinks、externallinks、langlinks、page、pagelinks、revision、templatelinks、text这些表的记录数都是在100万以上,categorylinks、externallinks、pagelinks、templatelinks这几个表应该可以通过修改模板来进行一些缩减。数据导入的过程也很长,而这些数据被浏览者访问、搜索引擎收录的过程,也可能导致服务器的负载过高,特别是担心MySQL,所以导入完成后,修改网站已有页面以便链接到170万新页面的工作、生成包括170万新页面sitemaps的工作都会稍后做好准备、慎重来进行。
这么大的数据量是我们所有Wiki网站中最大的一个,此前的IP地址查询因为数据量大、运算耗资源被暂停了,不知道这次邮编库添加新数据后能否正常,估计需要几个月以上的时间来观察。这样的数据量别人学都很难,如果能通过一些优化正常运行的话,倒是可以作为一项重要的策略来实施到其它更多网站中。
标签:邮编库、MySQL。 |
相关内容:
|