六加大虚拟内存
如果系统资源有限内存提示不足则可以靠增加虚拟内存来解决笔者在实际项目中曾经遇到针对亿条的数据进行处理内存为GB个P G的CPU对这么大的数据量进行聚合操作是有问题的提示内存不足那么采用了加大虚拟内存的方法来解决在块磁盘分区上分别建立了个M的磁盘分区用于虚拟内存这样虚拟的内存则增加为 * + = M解决了数据处理中的内存不足问题
七分批处理
海量数据处理难因为数据量大那么解决海量数据处理难的问题其中一个技巧是减少数据量可以对海量数据分批处理然后处理后的数据再进行合并操作这样逐个击破有利于小数据量的处理不至于面对大数据量带来的问题不过这种方法也要因时因势进行如果不允许拆分数据还需要另想办法不过一般的数据按天按月按年等存储的都可以采用先分后合的方法对数据进行分开处理
八使用临时表和中间表
数据量增加时处理中要考虑提前汇总这样做的目的是化整为零大表变小表分块处理完成后再利用一定的规则进行合并处理过程中的临时表的使用和中间结果的保存都非常重要如果对于超海量的数据大表处理不了只能拆分为多个小表如果处理过程中需要多步汇总操作可按汇总步骤一步步来不要一条语句完成一口气吃掉一个胖子
九优化查询SQL语句
在对海量数据进行查询处理过程中查询的SQL语句的性能对查询效率的影响是非常大的编写高效优良的SQL脚本和存储过程是数据库工作人员的职责也是检验数据库工作人员水平的一个标准在对SQL语句的编写过程中例如减少关联少用或不用游标设计好高效的数据库表结构等都十分必要笔者在工作中试着对亿行的数据使用游标运行个小时没有出结果这是一定要改用程序处理了
[] [] [] [] []