做数据采集,千万级别的数据,如何一次性的存入到数据库中,相关内容位ole对象,长二进制
我们也和你类似有个类似的场景,最开始用mongodb存数据,mongodb性能很好,但是,它太吃资源了,而且可能是我们使用的不对,动不动死掉,数据备份还麻烦,简直要了老命了,后来我们直接自己按时间写文件,虽然不甚理想,但是比mongodb事情顺多了,所以mark下,看看能不能学习到更好的方案
文件是要存的,但是也需要往数据库里面存
使用sqlite就足够了,本人亲自测试 单表20亿行数据 没出现任何问题
采集过程 先建立一个内存库 往内存库里存
根据一定的条件 把内存里的数据往硬盘里导
模运算是个好东西 可以根据某些id 取模 来计算出存放的位置来 这样分表分库都可以实现无限制储存 而且又能保证不重复
我用的是Access
@默默者: access不要去深入研究 只是用来入门还可以,入门了立马转sqlite
因为access跟sqlite相比 就好比一个2块钱的塑料玩具车 跟 跑车比,没有可比性.深入研究也是浪费时间
以后数据大了 就扛不住了
使用SQLlite放这么多数据,风险太大了吧,万一文件损坏呢。
@会长: 以前用access坏过一次 就再也不用access了
自从用sqlite从来没坏过 sqlite不会那么容易坏的
再说了 数据多了 肯定要备份的 因为就算不怕文件坏 我还怕硬盘坏呢
我对硬盘突然坏掉的担心 要 大于sqlite文件突然坏掉的担心