大文件读取,极端点,超大也无妨

本文详细描述了一次将MongoDB数据文件转换并导入MySQL数据库的过程,包括使用工具AccessView进行文件转换,以及如何处理不同类型的MongoDB文件(如 mdb、ns 和 x[x]),最终通过手动读取和解析数据实现数据迁移。讨论了数据转换中的挑战和解决方案,特别关注了文件大小限制和内存溢出问题。

              最近做一个项目,经理给了我TT多数据,让我做数据转换并导入有效Mysql,说是mongo的纯数据文件,直接从数据库热拷贝下来的,让我赶快转换完成.

             由于那几天业务繁忙,也来不及打开看,想了下,说干就干
              1.搭建对应服务器导出规律文档再导入Mysql或者程序读取插入数据
              2.找相关转化工具转化为可读有规律文档再导入或者程序控制插入
              3.直接读取插入数据
            
              一根筋似的搞了个rockmongdb 类似phpMyadmin的可视化软件管理mongo数据 在导入数据的时候傻了。
               打开给我的压缩包文件,里面果然是热拷贝的数据文件.Mdb文件也是mongodb 数据文件,心里骂了他万遍,然后尝试的其他的方法   插一脚(*.mdb是Access数据库文件存储 *.ns *.x [x是数字] 一个是索引文件 一个是数据填充文件才是mongodb的真正有效文件存储 是bson格式的存储方式 及json的扩展方式不仅存放普通的连二进制也能存储 牛逼吧      c#应用的应该对bson格式熟悉吧) 
              
              第三种方式读出来全是xxoo文件 我看不懂 更别提读取分析有效数据了,第一种方法直接pass,
于是我在度娘的帮助下找到两个工具  access2mysql(微软的产品吧  要出钱   我没钱 pass)  accessView (快打开GB级别文件不带卡壳的)全部转换为office文档 你懂得
               直接导入肯定不行的啊 全是Mb大的文件,于是就只能读取了 但是读我还是很牛逼 直接file_get_contents 读取  直接内存溢出 别说我386的机器了  更伤不起

                于是我只能让他一行一行的读 一行一行的分析了 快速写好程序  

           





   数据质量应该还是蛮大的半个多小时 才转换100多w  基本纯索引哦        

   第一次遇到这样的大文件数据转换提取 ,  闲来无事 ,有好的方法请多多指教

转载于:https://my.oschina.net/yanzhiwei/blog/118704

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值