《大数据分析的案例、方法与挑战.doc》由会员分享,可在线阅读,更多相关《大数据分析的案例、方法与挑战.doc(22页珍藏版)》请在三一办公上搜索。
1、 大数据分析的案例、方法与挑战 DTCC2012 2012.4中山大学海量数据与云计算研究中心黄志洪 数据分析者面临的问题 n数据日趋庞大,无论是入库和查询,都出现性能瓶颈n用户的应用和分析结果呈整合趋势,对实时性和响应时间要求越来越高n使用的模型越来越复杂,计算量指数级上升 n传统技能无法应对大数据:R、SAS、SQL 2012.4 DTCC20122中山大学海量数据与云计算研究中心黄志洪 场景介绍 n信令监测是做什么的?中山大学海量数据与云计算研究中心黄志洪 2012.4 DTCC2012 体系架构 n数据库服务器:HP小型机,128G 2012.4 DTCC2012中山大学海量数据与云计
2、算研究中心黄志洪 数据库设计 n物理上采用ASM n大表全部按时间分区,开始时按小时分区,但由于数据量庞大,后来改成,最后变成每分钟切换1个分区 n采用sqlldr方式入库中山大学海量数据与云计算研究中心黄志洪 15分钟分区 2012.4 DTCC2012 5 入库故障描述 n由于数据量太大,不得不同时启用多个处理机,产生了多个入库节点 n当入库节点分别增加到2节点和4节点以后,sqlldr出现停顿现象 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012AWR报告 n 2012.4DTCC2012中山大学海量数据与云计算研究中心黄志洪AWR报告 n 2012.4 DTCC20
3、12中山大学海量数据与云计算研究中心黄志洪AWR报告 n 2012.4 DTCC2012中山大学海量数据与云计算研究中心黄志洪 关于Buffer Cache2012.4 中山大学海量数据与云计算研究中心黄志洪 DTCC2012Latch2012.4DTCC2012中山大学海量数据与云计算研究中心黄志洪 寻找Buffer busy wait的根源 n Sqlldr和OCI方式同时insertn多个节点同时insert n解决办法 1 放弃使用OCI 2 对sqlldr进行垂直切分,尽量避免同时多进程插入同一张表 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 再看AWR20
4、12.4中山大学海量数据与云计算研究中心黄志洪DTCC2012 新的故障现象 n Sqlldr依然有停顿,次数较为频密而持续时间较短n HWM冲突问题 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 关于HWM2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 针对HWM冲突的优化措施 n对于无法垂直切分的特大表,按照入库节点号作子分区 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 再看AWR n HWM冲突已经被消除 n Sqlldr频密周期性短暂停顿的问题依旧 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC201
5、2 最终问题根源 n AWR报告的提示文件头部竞争n表空间大小与自动扩展是问题根源 n修正表空间设置后问题消失 2012.4DTCC201218中山大学海量数据与云计算研究中心黄志洪 备选方案牺牲实时性换取直接路径插入 n 直接路径插入有什么好处? n为什么没有采用直接路径插入? 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 19 备选方案交换分区2012.4中山大学海量数据与云计算研究中心黄志洪DTCC2012 20 备选方案外部表2012.4中山大学海量数据与云计算研究中心黄志洪DTCC2012 21 使用传统关系型数据库遇到的困难 n All in one,并非专
6、门针对数据分析设计和优化n设计复杂,调优复杂,数据分析师兼任DBA n当数据规模增加时,需要扩展硬件,边际成本指数级上升,存在无法突破的物理瓶颈 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 22 解决方案 n列式数据库,实时数据库等新的数据库技术n分布式集群:Hadoop,NoSQL及其它分布式数据库技术 n混合使用各种专业分析产品 2012.4 DTCC201223中山大学海量数据与云计算研究中心黄志洪 场景:行为指纹识别 n q q q 2012.4 90中山大学海量数据与云计算研究中心黄志洪 DTCC2012 25 基于分布式平台运行海量数据 移动客户数据量达到
7、TB级Oracle数据库中sql语句可以得到结果,但希望进一步提高效率 云化 MapReduce方法 希望尝试多个相似度计算结果 2012.4DTCC2012中山大学海量数据与云计算研究中心黄志洪云计算网络发展的必然结果中山大学海量数据与云计算研究中心黄志洪 2012.4 DTCC2012 Hadoopn Hadoop的主要功能:HDFS和Map-Reducen HDFS实现数据的分布式存储,并且实现冗余备份 n Map-Reduce实现计算任务的分布化,尽量使到某个节点的计算任务主要面对存储在本地的数据,以减少跨节点的网络数据传送 中山大学海量数据与云计算研究中心黄志洪 2012.4 DTC
8、C2012 28HDFS结构示意图2012.4 中山大学海量数据与云计算研究中心黄志洪 DTCC2012 29Map-Reduce示意图中山大学海量数据与云计算研究中心黄志洪 2012.4DTCC2012 30HDFS与Map-Reduce一起工作中山大学海量数据与云计算研究中心黄志洪 2012.4 DTCC2012 31 Hiven基于Hadoop的常用数据分析工具n可以看成是SQL到Map-Reduce的转换器n HiveQL尚未能完全支持SQL 92n外部应用可以通过hive客户端、JDBC、ODBC等方式访问Hive中山大学海量数据与云计算研究中心黄志洪 2012.4 DTCC2012
9、 32 HBasen列式数据库,特别适合作为数据分析的场景,可以减少I/On无真正索引 n自动分区 n增加新节点时自动线性扩展n使用Hbase命令而非SQL n可以通过Java,REST,thrift等接口访问HBase 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 33Hadoop体系图2012.4DTCC201234中山大学海量数据与云计算研究中心黄志洪 NoSQLn NoSQL = Not Only SQLn High performance, Huge Storage, High Scalability && High Availability
10、n NoSQL面向的场景:事务性要求不高,实时性要求不高,查询较为简单,数据海量n可分布化,运行在廉价的PC集群上 n典型的NoSQL产品,通常某种产品只适合某种特定场景,常要配搭使用中山大学海量数据与云计算研究中心黄志洪2012.4 DTCC2012 35 基于Hadoop的用户指纹识别算法 n求某个客户最相似客户的MapReduce化(以相关系数为例):n Map() Input:某客户数值、所有客户数值 将所有客户随机平分到 k台机器 Output: k 个最大相关系数(local) Emit the k 个跟某客户最相似的客户 n Reduce( ) Input: Key: null;
11、 values: k 个最大相关系数(local) Output: 最大相关系数(global) Emit the 最大相关系数、与某客户最相似客户 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 36 数据分析者期待的解决方案 n完美解决性能瓶颈,在可见未来不容易出现新瓶颈n过去所拥有的技能可以平稳过渡。比如SQL、R n转移平台的成本有多高?平台软硬件成本,再开发成本,技能再培养成本,维护成本 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 37 一种新的普适性关联挖掘方法 n海量,不一定是指数据记录多,有时可能是变量很多n观察变量之间是否具有联
12、系的传统回归方法 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 38 传统回归模型的困难 n为什么一定是线性?或某种非线性模型?n过分依赖于分析者的经验 n对于非连续的离散数据难以处理中山大学海量数据与云计算研究中心黄志洪 2012.4 DTCC2012 39 网格方法 nScience上的文章Detecting Novel Associations in Large Data Setsn方法概要:用网格判断数据的集中程度,集中程度意味着是否有关联关系 n方法具有一般性,即无论数据是怎样分布的,不限于特定的关联函数类型,此判断方法都是有效 n方法具有等效性,计算的熵值和
13、噪音的程度有关,跟关联的类型无关 n MIC:the Maximal Information Coefficient n MINE:Maximal Information-based Nonparametric Exploration 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 40 MIC值计算n坐标平面被划分为(x,y)网格G(未必等宽),其中xy<n0.6n在G上可以诱导出自然概率密度函数p(x,y),任何一个方格(box)内的概率密度函数值为这个方格所包含的样本点数量占全体样本点的比例 n计算网格划分G下的 mutual information值 IG2
14、012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 41 MIC值计算 n构造特征矩阵mxy,矩阵的元素mxy=maxIG/log minx,y。max取遍所有可能的(x,y)网格G n MIC=max mxy。Max取遍所有可能的(x,y)对中山大学海量数据与云计算研究中心黄志洪 2012.4 DTCC2012 42MIC值计算n Mxy的计算是个难点,数据科学家构造了一个近似的逼近算法以提高效率 在作者的网站上,可以下载MINE计算MIC的程序(Java和R)以及测试用数据集 实验:WHO数据集,垒球数据集 2012.4 DTCC201243中山大学海量数据与云计算研究中心
15、黄志洪 MIC的性质n如果变量对x,y存在函数关系,则当样本数增加时,MIC必然趋向于1n如果变量对x,y可以由参数方程c(t)=x(t),y(t)所表达的曲线描画,则当样本数增加时,MIC必然趋于1 n如果变量对x,y在统计意义下互相独立,则当样本数增加时,MIC趋于0 2012.4中山大学海量数据与云计算研究中心黄志洪 DTCC2012 44MIC观察2012.4 中山大学海量数据与云计算研究中心黄志洪 DTCC2012 45MIC与线性回归模型对比2012.4DTCC201246中山大学海量数据与云计算研究中心黄志洪 对基因数据集spellman的探索 n数据集包含6223组基因数据n MINE对关联关系的辨认力明显强于以往的方法,例如双方都发现了HTB1,但MINE方法挖出了过去未被发现的HSP12中山大学海量数据与云计算研究中心黄志洪 2012.4 DTCC2012 47 QQ:1829118 微博: DTCC201248 中山大学海量数据与云计算研究中心