对大批量数据处理的一些总结

本文探讨了处理大型数据集时,从直接数据库导入、磁盘读取到内存映射方法的效率对比,重点展示了内存映射与高效数据结构如何显著提升大数据分析系统的性能。通过实例分析,提出升级硬件与编译技术优化策略,最终实现了数据处理速度的大幅提升。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

宽带数据分析系统,一个整个浙江省用户上网的话单解析,每天要处理压缩后文件达到了3G.


要实现的目标:解析数据进行归类,并且导入到相关到表中(oracle数据库中)。

 

尝试方法1:把所有文件导入到数据库,通过表关联建索引的方法,一次处理下来时间=15小时。

尝试方法2:用fopen打开文件,逐行匹配,进行关联解析,=20小时。

尝试方法3:把所有文件导入到内存,对1000多万字典表放人到MAP中,把搜索字段做了key,字典信息全部放在value里面,再进行关联查询。时间=8小时

 

终结下,oracle的存储过程并不像想象的效率这么高。而用fopen在磁盘里面查找数据跟海底捞针效率绝对是最差的。放内存,尤其是hash-MAP使用可以大大的提高效率。

 

当然后面出现了,字典表导入内存超过了2G至内存爆掉。处理办法:升级硬件,操作系统升级到了64位。或者编译程序的时侯编译为大地址。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值