海量的数据处理问题,对其进行处理是一项艰巨而复杂的任务
原因有以下几个方面: 一、数据量过大,数据中什么情况都可能存在
如果说有10 条数据,那么大不了每条去逐一检查,人为处理,如果有上百条数据,也可以考虑,如果数据上到千万级别,甚至过亿,那不是手工能解决的了,必须通过工具或者程序进行处理,尤其海量的数据中,什么情况都可能存在,例如,数据中某处格式出了问题,尤其在程序处理时,前面还能正常处理,突然到了某个地方问题出现了,程序终止了
二、软硬件要求高,系统资源占用率高
对海量的数据进行处理,除了好的方法,最重要的就是合理使用工具,合理分配系统资源
一般情况,如果处理的数据过 TB 级,小型机是要考虑的,普通的机子如果有好的方法可以考虑,不过也必须加大 CPU 和内存,就象面对着千军万马,光有勇气没有一兵一卒是很难取胜的
三、要求很高的处理方法和技巧
这也是本文的写作目的所在,好的处理方法是一位工程师长期工作经验的积累,也是个人的经验的总结
没有通用的处理方法,但有通用的原理和规则
那么处理海量数据有哪些经验和技巧呢,我把我所知道的罗列一下,以供大家参考: 一、选用优秀的数据库工具现在的数据库工具厂家比较多,对海量数据的处理对所使用的数据库工具要求比较高,一般使用 Oracle 或者 DB2,微软公司最近发布的SQL Serv er 2005 性能也不错
另外在 BI 领域:数据库,数据仓库,多维数据库,数据挖掘等相关工具也要进行选择,象好的ETL 工具和好的OLAP 工具都十分必要,例如 Informatic,Eassbase 等
笔者在实际数据分析项目中,对每天 6000 万条的日志数据进行处理,使用 SQL Serv er 2000 需要花费 6 小时,而使用 SQL Serv er 2005 则只需要花费 3 小时
二、编写优良的程序代码处理数据离不开优秀的程序代