2.3.3 内存计算
随着内存价格的不断下降,服务器配置的内存容量不断增大,用内存计算来完成大规模数据处理成为可能。与Hadoop Map-Reduce批处理相比,内存计算能够提供高性能的大数据分析处理能力。内存计算是一种体系结构上的解决方法,它可以和各种不同的计算模式相结合,包括批处理、流处理、图计算等。比如Spark是分布式内存计算的一个典型并行计算框架,Spark基于Map-Reduce算法实现的分布式计算,拥有Hadoop Map-Reduce所具有的优点;但不同于Map-Reduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark具有更好的性能,适用于数据挖掘与机器学习等需要迭代的Map-Reduce的算法。
智能电网大数据应用根据业务特点和对处理响应的时间来选择数据处理的方式,针对电网安全在线分析、电网运行监控等业务,数据实时性要求高、需要作出迅速响应,可以采用流处理内存计算;而对于用户用电行为分析等业务,实时性和响应时间要求低,可以采用批处理方式。综合以上分析,数据处理方式对比见表2。
2.4数据分析技术
数据分析是智能电网大数据处理的核心,由于大数据的海量、复杂多样、变化快等特性,大数据环境下的传统小数据分析算法很多已不再适用,需要采用新的数据分析方法或对现有数据分析方法进行改进。
数据挖掘方法主要有分类、关联分析、聚类、异常检测、回归分析等,其中每一类包括众多的算法。分类包括支持向量机、决策树、贝叶斯、神经网络等技术;关联分析包括Apriori、FP-growth等算法;聚类分析分为划分法、层次法、密度法、图论法、模型法等,具体算法如k-means 算法、K-MEDOIDS算法、Clara算法、Clarans算法、SOM神经网络、FCM聚类算法等;异常检测包括基于统计、距离、偏差、密度等方法。在智能电网应用中需要对现有的算法进行优化和并行化改进,实现分布式处理。
机器学习是面向任务解决的基于经验提炼模型实现最优解设计的计算机程序,通过经验学习规律,一般应用在缺少理论模型指导但存在经验观测的领域中。机器学习分为归纳学习、分析学习、类比学习、遗传算法、联接学习、增强学习等。深度学习是机器学习研究中的一个新的领域,2006年由Hinton等提出,其目的在于建立模拟人脑进行分析学习的神经网络,目前深度学习在语音识别、图像识别、机器翻译等领域进行了应用,并取得了较好的效果。
智能电网大数据挖掘主要为结构化数据,同时也存在文本、图像、音频、视频等数据,在智能电网大数据应用中需要针对具体的业务采用合适的数据分析方法。