1、华为FusionInsight方案介绍,Content,大数据趋势和挑战,FusionInsight特性介绍,FusionInsight概述,数据库和大数据技术历史回顾,数据库时代伴随PC发展,数据仓库时代伴随Intenet和企业信息化发展,大数据时代伴随云计算发展,SQL,NoSQLNewSQL,简化数据处理和编程,集中数据管理和分析,探索数据价值,人工管理,1970,关系数据库理论IBM Edgar Codd,1973,Berkeley Ingres,IBM System R,1980s,Oracle,DB2,SQL标准,MS SQL,Sysbase,ER模型,PostgreSQL,199
2、2,MySQL,1996,Teradat,1997,Orale7,2010,SAP HANA正式发布,2008,Sybase IQ,Netezza,2005,2003,Greenplum,2000,EMC引爆MPP收购潮,AmazonSimpleDB,AmazonEMR,2012,2013,AmazonDynamoDB,AmazonRedshift(ParAccel),Exadata,GFS 论文,MR论文,BigTable论文,MongoDB,Apache Hadoop,Hbase,2006,Hive,Cloudera,SQL on Hadoop(Impala/Hawq),Stream on
3、 Hadoop,Spark(IM MR),Shark,DynamoDB论文,Cassandra,行业趋势:大数据投资初具规模,加速增长,大数据投资在加速(58%-64%),电信领域:61已投资或计划投资大数据,互联网大数据技术演进:从查询、分析到智能,分布式存储+ 查询 + 批处理,交互式分析 + 增量刷新 + 图计算,智能分析+云服务,Pipeline计算Flume,Spanner,批量和流式计算融合云服务Cloud DataFlow,流计算MillWheel,分析云服务Prediction API(推荐、分类、预测等),Google Brain(深度学习DNN,语音识别、图像识别等),网页
4、搜索应用驱动Google建立低成本高扩展文件系统、支持K/V网页数据的查询、批处理构建索引,社交网络数据搜索应用驱动Google建立增量查询框架、社交图谱分析和交互式分析技术,智能搜索应用驱动Google建立以Google大脑为代表的智能分析技术,Google大数据架构1.0Web应用时代(2003),Google大数据架构2.0社交网络时代(2010),Google大数据架构3.0智能大脑时代,大数据与分析逐渐渗透到企业各个方面,随着数据成为企业的核心资产,推动商业创新。数据分析逐渐渗透到企业的各处并推动业务发展,需要全方位的大数据技术平台,数据科学分析技术复杂和对技能要求高,业务分析将会决
5、定商业变革,企业大数据应用演进:数据成为企业的核心资产,推动商业创新,业务价值,信息应用成熟度,信息支撑业务以降低成本为目的数据管理改造离线分析关注查询和报表,信息管理企业关注数据的多样化和实时性提供各种分析实时分析数据挖掘数据安全,信息指导决策运营数据数据即服务分析即服务开放数据,信息促进创新认知计算深度计算,金融企业正从第一阶段进入第二阶段,领先的电信运营商正从第二阶段进入第三阶段,互联网公司正在开展,大数据现在和未来将深刻的改变运营商,烟囱数据平台向混合负载的、开放的、统一大数据处理平台转型,目标:从烟囱式多个平台向融合大数据平台,建立统一的数据采集与整合大数据处理、计算及数据服务能力,
6、降低大数据使用成本通过集中各领域数据,方便创新,让数据产生更大价值支持多种大数据负载共用数据和基础设施,批处理/实时,统一数据平台(基础设施复用),离线分析,近线分析,实时分析,内存分析,现网烟囱业务系统,数据采集,辅助运营系统,数据采集,数据采集,建模挖掘,目标系统演进,MIS应用系统,建模挖掘,Smartcare应用,建模挖掘,无线,核心网,电软,辅助运营系统,MIS应用系统,Smartcare应用,新业务,挑战:数据割裂不集中:O侧网络数据,聚焦业务质量监控和VIP保障,但缺少用户经分数据;MR数字轨迹采集用户精准位置轨迹(100米),但缺少用户上网偏好及用户经分数据,传统企业对数据平台
7、的诉求向互联网靠齐,在大数据和移动互联网时代,传统企业在数据规模和访问量的快速增长,使得技术选择上,向互联网公司靠齐,传统数据平台,大数据平台,数据处理技术分布式演进趋势:Hadoop成为开放的事实标准,SMP,Hadoop,特点:Share Everything结构化、关系型Flash Cache+分布式块存储+IB,SMP+MPP混合,MPP,特点:Share Nothing开放,、全球生态结构化、半结构化、非结构化高性能、实时,特点:Share Nothing结构化、关系型通用的硬件,特点:单机、Scale up性能存在瓶颈扩展性差,内存计算兴起,Hadoop生态系统持续壮大,实时化:内
8、存计算兴起,Hadoop生态系统持续扩大,AMPlab开发的Spark,提供迭代式内存计算模型,非常适合用于数据挖掘算法的并行化预计Spark将成为编写和分享数据挖掘算法的标准平台Spark目前已经成为Apache顶级项目,Hadoop 2.0发布支持多种计算模型调度的Yarn,实现多种计算模型在同一个集群中并存,将帮助Hadoop进一步巩固大数据生态圈。HDFS和Yarn成为Hadoop核心平台性组建,不断吸收更多组建集成到Hadoop。,融入,业界大数据分析:大数据平台参考架构,商业理解:分解业务问题/理解数据,数据科学:数据方法体系,算法和工具,技术实践:大数据相关平台技术,不断迭代,以
9、业务问题为出发点,围绕商业理解-数据科学-技术实践才能形成系统的数据价值发现,数据分析师是核心角色,平台/算法都是他的工具。,数据价值发现是一个系统工程,数据分析师是不可替代的,平台,算法,数据分析师,大数据应用挑战,Hadoop,开放、统一数据处理,混合负载稳定、可靠、安全高效、高可扩展,快速上线:易安装部署,升级和配置低维护成本:可靠、安全、问题快速定位主动运维:主动进行健康/风险/效率监控分析,运维工程师,开发工程师,快速上手、高效开发典型场景最好免代码开发无缝集成到已有系统和支撑移动互联网应用环境,数据集成工程师,快速加载,数据加载速度始终是瓶颈数据整理复杂,工作量占大数据项目的70如
10、何管理数据资产和质量,传统分析方法面临大数据的挑战海量数据分析的及时性、效率和实时应用当前技能要求搞,需要业务驱动的一站式甚至one-Click的闭环解决方案,数据分析师,Content,大数据趋势和挑战,FusionInsight特性介绍,FusionInsight概述,HIVE/Impala,HDFS/HBase,M/R,Spark,Porter,Miner,DataFarm,Hadoop,Storm,Solr,系统管理,Farmer,服务治理,Manager,Hadoop API,Plugin API,OpenAPI/SDK,应用服务层,REST/SNMP/Syslog,Data,Inf
11、ormation,Knowledge,wisdom,Yarn/ Zookeeper,FusionInsight架构概述,安全管理,MPP DB,FusionInsight的Hadoop层提供大数据处理环境,基于社区开源软件增强,按照场景选择业界最佳实践 FusionInsight的DataFarm层提供支撑端到端数据洞察,构建数据到信息到知识到智慧的数据供应链, 其中包括相对独立的数据集成服务Porter,数据挖掘服务Miner和数据服务框架FarmerFusionInsight Manager是一个分布式系统管理框架,管理员可以从单一接入点操控分布式集群,包括系统管理(OM/NTP/灾备)、
12、数据安全管理和数据治理,为行业业务负载优化的统一大数据处理平台,FusionInsight用100开源的核心支持混合负载,从批量、交互查询、数据挖掘,到实时流和查询等各种场景开放式存储格式(Rcfile/ORCfile/Parquet),以避免锁定私有文件格式所有的组件都通过Manager提供的插件框架来按需安装,强大内核开发团体提供电信级的开源支撑能力,会使用Hadoop,会定位周边问题,会定位内核级问题(拔尖的个人),定位内核级问题的团队(依赖团队而不是精英个人),能够独立完成支撑关键业务特性的内核级开发,能够带领社区,引领社区完成面向未来的内核级特性开发,能够创建新的社区顶级项目,并且得
13、到生态系统认可,Top1 of IT Solution vender, Top4 of the world,2013 contribution ranking,强大的Hadoop内核团队支持的开发与产品交付能力,电信级运营支撑能力,电信级可靠性系统可靠性,系统可靠性:业务无单点: OMS,HDFS,HBASE,YARN,HIVE,OOZIE,HUE,ZOOKEEPER,BOOKEEPER采用主备,负荷分担方式实现服务无单点故障管理节点HA:OMS节点及所有业务组件中心管理节点实现HA跨DC容灾/备份:HBase集群通过HLOG准实时复制,HDFS/Hive集群通过 BackupAdmin异步复
14、制实现跨数据中心灾备第三方备份系统集成 :数据可以灵活的备份在外部系统如NAS、磁带库,只是和NBU等备份软件集成,1,1,1,1,1,1,2,2,3,3,1,3,4,4,电信级可靠性-数据可靠性,数据可靠性:OS层可靠性加固: RAID/OS写缓存保护实现掉电数据保护Raid策略: OS,OMS,NameNode,ZK 及HDFS数据节点采用不同硬盘分区及Raid策略,兼顾性能情况下保证数据可靠性快速故障检测: 结合华为存储产品经验,尽快发现故障硬盘,降低MTTR,提高数据可靠性硬盘热插拔:支持在线集群硬盘更换不影响业务,降低MTTR.第三方备份系统集成 :数据可以灵活的备份在外部系统如NA
15、S、磁带库,只是和NBU等备份软件集成跨数据中心数据备份:HBase集群通过HLOG准实时复制,HDFS/Hive集群通过 BackupAdmin异步复制实现跨数据中心灾备,3,3,3,4,6,5,7,8,6,6,5,8,4,7,可靠运维关键技术,5,6,可运营的安全体系,易安装:向导式操作,Step by step引导完成安装;自动环境准备,内置脚本完成操作系统配置分布式并行安装,10分钟完成集群安装。,易运维:向导式安装配置,易配置:模板化配置:配置参数整合为模板,配置简单明了关联配置自动同步,避免配置修改引发的多处人工修改,易运维:全系统可定制的实时运行监控,Storm,易开发,Def
16、Input:public void open(Map conf, TopologyContext context, SpoutOutputCollector collector) public void nextTuple() public void declareOutputFields(OutputFieldsDeclarer declarer) Def logic:public void execute(Tuple tuple, BasicOutputCollector collector) public void declareOutputFields(OutputFieldsDecl
17、arer ofd) Def Output: public void execute(Tuple tuple, BasicOutputCollector collector) public void declareOutputFields(OutputFieldsDeclarer ofd) Def Topology:public static void main(String args) throws Exception ,Def Input:Create Input Stream kafkareaderDef logic:Insert into filterstr select * from
18、kafkareader where name=“HUAWEI”;Def Output:Create Output Stream kafkawriterDef Topology:Submit application test;,Storm原生API,HBase,CQL:,CQL SDK,Storm API,FusionInsight 基于Storm提供CQL语言,降低流处理业务的开发门槛,Recoverable Connection Manager,Schema Data,Enhance Hbase SDK,Hbase DesignTools,FusionInsight 提供HBase的表设计工
19、具,提供连接池管理以及增强的SDK,来简化复杂数据表的业务开发,try table = new HTable(conf, TABLE); / 1. Generate RowKey. . / 2. Create Put instance. Put put = new Put(rowKey); / 3. Convert columns into qualifiers(Need to consider merging cold columns). / 3.1. Add hot columns. . / 3.2. Merge cold columns. . put.add(COLUMN_FAMILY,
20、 Bytes.toBytes(QA), hotCol); / 3.3. Add cold columns. put.add(COLUMN_FAMILY, Bytes.toBytes(QB), coldCols); / 4. Put into HBase. table.put(put); catch (IOException e) / Handle IOE. Need to re-create connections under some scenarios.,try table = new ClusterTable(conf, CLUSTER_TABLE); / 1. Create CTRow
21、 instance. CTRow row = new CTRow(); / 2. Add columns. . / 3. Put into HBase. table.put(TABLE, row); catch (IOException e) / Does not care connection re-creation.,HBase原生API,增强API,HBase API,数据集成工具Porter,提供数据采集、转换、加载,并提供FTP client,方便任何客户端以FTP方式与Hadoop集群交换数据,Porter,全流程的产品资料,FusionInsight Farmer:大数据应用使能
22、器,大数据实时应用使能器,支撑企业快速开发基于大数据平台的应用。,1、分布式大数据服务框架和标准服务(如推荐)二次开发SDK,透明化访问Hadoop,聚焦业务逻辑高可靠的分布式处理框架,去中心化的负载均衡能力,和服务实例的弹性伸缩能力基于Activiti的服务编排支持应用的灰度发布隔离的轻量级应用容器2、多协议接入和缓冲简化应用集成高性能的多协议接入部件,通过ALB隐藏内部拓扑细节高性能、高可靠消息队列部件热点数据redis加速,FusionInsight Miner:基于分布式内存计算的数据分析平台,华为算法库提升FusionInsight Miner性能,通过华为优化的算法库HiGraph
23、相比开源MLLIB提速3X以上,Porter用来简化大数据的数据集成除了开源的Sqoop2支持的DB和HDFS外, porter还支持从SFTP, FTP和NAS进行数据导入和导出除了Sqoop2支持的HDFS外, porter还支持数据注入到HBASE并提供功能丰富的rowkey生产机制Sql请求和响应可以通过SFTP和FTP提交, 实现和现有系统的无缝集成轻量汇总的Sql和结果可以通过 SFTP和FTP提交, 并且能够自动调度按天/按月调度。,FusionInsight Porter:大数据全能搬运工,Content,大数据趋势和挑战,FusionInsight特性介绍,FusionIns
24、ight概述,组件功能需求,非功能性需求,1,2,FTP接入HDFS,HDFS作为Hadoop的基础存储设施,实现了一个分布式、高容错、可线性扩展的文件系统。访问HDFS的首选方式是Java API,这要求客户端程序进行改造,适应HDFS的接口(虽然可以通过FUSE挂载HDFS文件系统,或者通过libhdfs提供的C接口访问HDFS,但访问效率都远低于Java API方式)。FTP作为成熟的文件传输协议,在各硬件平台/各OS平台上得到最广泛的支持,通过FTP接口访问HDFS,可以为现有应用提供高效便捷的对接接口。, 兼容性支持标准FTP协议功能,如文件上传、文件下载、目录查看、目录创建、目录删
25、除、文件权限修改等。, 安全性与现有Hadoop的安全认证体系无缝集成。支持FTPS加密协议,防止信息泄露。, 高性能单CPU核可提供数百MB/s的吞吐量。支持部署多个FTP Server,进一步提升文件上/下载性能。,HDFS 海量小文件存储优化,应用场景价值:O域数据的5分钟入库,产生大量小文件(最小10K),存6个月,文件总量5000万(内部还要3副本)HDFS一般用来存128M大小文件,不适合小文件存储。解决方案目标:384G内存的Master节点,支持管理6亿个文件(当前只支持6000万的文件数)不影响忙时系统读写速度,闲时做合并方案:小文件直接写入HDFS中,后台启动FGCServ
26、ice延时合并,小文件的元数据存储在KVStore中用户价值接口完全兼容开源接口HDFS的NameNode性能提升(减少FSImage膨胀)提升硬件资源利用率,降成本提升HDFS性能可靠性(大量小文件,在集群规模小是会造成DataNode的block太多,造成读写性能下降厉害,甚至异常),App,HDFS Client,写,读,接口不变,指定文件系统类型,HDFS Federation,应用场景Federation支持上层应用使用多个独立的基于NameNode/Namespace的文件系统。这些NameNode之间相互独立且不需要互相协调,各自分工管理自己的区域。解决方案一个namespace
27、使用一个block pool管理数据块,每个block pool内部自治,不会与其他block pool交流 。命名空间管理: Federation中存在多个命名空间,可以使用Client Side Mount Table对命名空间划分和管理。用户价值【扩展性】支持NameNode/Namespace水平扩展,后向兼容,结构简单。【性能】文件操作的性能不再制约于单个namenode的吞吐量,支持多个namenode。【隔离性】可按照应用程序的用户和种类分离Namespace volume,进而增强了隔离性,Namespace-1,Namespace-k,Namespace-n,Client-1
28、,Client-k,Client-n,HFS(HBase FileStream),HFS方案出现的背景:无论是HDFS,还是HBase,均不适合小文件的存储方案:如果将小文件直接存储在HDFS中,会给NameNode带来极大的压力; 而如果将小文件直接存储在HBase中,也将会给HBase的Compaction带来较大的压力,浪费大量的IO资源。HFS的出现,就是为了解决在Hadoop中存储小文件的问题。HFS方案的特点:既可以存储小文件,又可以存储与文件相关的元数据描述信息例如,对于图片信息,不仅仅可以存储图片本身,还可以存储针对这些图片的一些描述信息,例如,拍摄地点,拍摄时间,备注信息等等
29、提供了统一且友好的访问API:对于文件,提供了用户习惯的File Stream访问接口对于文件元数据信息,通过HBase接口进行访问能够基于文件的大小,灵活的选择最佳的存储方案:较小的文件,直接使用HBase的MOB方案进行存储较大的文件,直接存储在HDFS中,SQL接入HBase,Phoenix是构建在HBase之上的一个SQL中间层,可实现毫秒级SQL在线查询。Phoenix查询引擎会将SQL查询转换为一个或多个HBase Scan,并编排执行以生成标准的JDBC结果集,适用于10M-100M行规模的简单查询。Phoenix特性:嵌入式的JDBC驱动,包括元数据API 可以通过多个行键或是
30、键/值单元对列进行建模 DDL、DML支持 遵循ANSI SQL标准 支持简单的Hash Join,HBase支持可视化建模,问题:HBase开发中开发人员需要关心如下问题:如何建表?如何拼凑和解析Rowkey ?设计几个列族合理?如何设计列?冷热列如何处理?对开发人员提了较高的要求,业务代码开发量大。解决方案: 通过可视化建模帮助DBA进行建模设计,降低HBase的使用门槛。实现人员分工:DBA关注数据表建模,Developer关注用户表名和用到的列。,HBase二级索引,目标行,数据扫描区域,无索引:“Scan + Filter”,扫描大量数据,二级索引:两次IO定位到数据,索引Regio
31、n与数据Region伴生,统一机制处理HBase原生API接口几乎无改动,对用户友好基于Coprocessor机制插件化实现,易升级面向写优化,支持实时写入,二级索引方案,注:已开源于Phoenix项目,支持Join的HBase框架 CTBase(聚簇表),Transaction表记录,AccountInfo 表记录,设计思想:通过HBase内部机制的运用实现一个对象下多个用户表数据在物理上的相邻存放,从而达到:在基于行和列的HBase上可以实现出类似MongoDB的嵌套数据结构功能数据入库前预计算关联,而不是在查询时再关联,查询时延相比传统方法 5100倍提升. 提供表设计工具和封装的API
32、,让用户可以用传统关系型数据库开发方式在HBase上开发复杂多表业务.,Transaction表,AccountInfo表,CTBase表,一个多表Join例子的实现:select a.account_id, a.amount, b.account_name, b.account_balance from Transactions a left join AccountInfo b on a.account_id = b.account_id where a.account_id = “xxxxxxx”;,User Data,HBase冷字段合并(应用透明的),HBase KeyValues,
33、ID,Name,Phone,ColA,ColB,ColC,ColD,A,B,C,D,问题:在HBase列数增多导致数据膨胀率较高,查询性能低下;应用层自己合并冷数据列,使得开发复杂度提升,还需要维护相关元数据信息特性功能: 提供对应用透明的冷字段合并特性支持实时写入接口及批量导入接口,ColE,ColF,ColG,ColH,Spark:内存迭代计算,shuffle enhancement引入sort-based shuffle实现,降低文件句柄和内存使用,并提升性能Netty-based传输,减少context-switching和memory copy开销, SparkSQL数据源增强 &
34、External Source APIFormat: 提供流行的列存格式支持 - Parquet/ORCfileSource: 允许用户使用通用API适配外部数据源接口,便于对接HBase等,华为积极参与spark社区贡献,主导Spark SQL升级支持hive 0.13,其中合入社区patch 150+,公司贡献在社区排名第三。,社区贡献:,高性能内存迭代计算框架基于DAG运行引擎和内存数据计算。比传统MR提供更快的计算速度以及不弱的可靠性,支持多语言快速开发应用提供以下语言支持Java、Scala、Python,内存计算一站式解决方案支持离线批处理任务,典型的如ETL支持SQL查询(Spa
35、rk SQL)支持流处理(Spark Streaming)高性能的机器学习算法库(MLLib),增强特性:,Spark框架:,Spark技术栈:,SparkSQL更丰富语法、更高的性能,SQL parser:实现插件式的SQL Parser,基于插件接口实现SQL99语法解析。Logical Plan:新增SQL99LogicalPlans,支持SQL99逻辑计划。元数据管理:使用Hive metastore进行元数据管理,与社区演讲发现对齐。性能提升:原则上重用社区的优化器,必要时增加SQL99OptimizerRules,新增and/or优化,inner join优化,hive index
36、优化,应用场景价值:SQL是一个常用的分析语言,客户接受度较高,电信场景对SQL诉求也较明确。解决方案方案:基于插件式方案构建基于Spark SQL框架的差异化语法解析器和性能优化器用户价值实现标准SQL的TPC-DS用例99个全部通过。满足客户常用的标准SQL诉求。,SparkSQL更多的数据源,应用场景价值:大数据分析经常需要跨大数据源,同时要利用多种分析工R、python、图计算、机器学习,需要一个统一的分析引擎对接多种数据源。解决方案1.对单数据源,支持计算下压以单机方式对接Oracle2.支持跨数据源分析,在Spark中做汇总计算2.Data source接口扩展用户价值提升端到端深
37、度分析效率,高性能,易开发,安全性,高可靠,Nimbus HA,解决Nimbus单点问题Supervisor/Worker:无状态,自动恢复,用户角色控制访问及操作权限,包括拓扑信息访问支持HTTPS、角色使用Kerbrose认证,百万TPS/Node动态扩容,CQL语言,面向业务开发人员丰富的数据处理算子:窗口、过滤,计算,转换,拆分等,丰富内嵌函数灵活扩展:自定义函数,自定义输入/输出,Def Input:Create Input Stream kafkareaderDef logic:Insert into filterstr select * from kafkareader wher
38、e name=“HUAWEI”;Def Output:Create Output Stream kafkawriterDef Topology:Submit application test;,Storm:毫秒级流处理平台,基于应用场景选择最适合的流处理技术,Batch,Streaming,Mini-Batch,Spark-Streaming,Storm,Spark Streaming:微批流式计算适用于在Spark集群上同时提供更低时延要求的微批流处理处理,如KPI统计等(当小批量时间设置小于30s的时候,Spark Streaming的性能还不够好)Storm:事件驱动模式的实时计算适用于
39、更低时延要求(毫秒级),高并发的实时事件处理场景,1 node,Mini-batch is set to 5s,采用通用的SQL标准接口,全面兼容传统的数据库SQL和Hadoop的HQL全面支持传统应用的接口JDBC、ODBC,并提供丰富的扩展接口如PL/C,PL/Jaca,PL/Python交互式查询性能达到或超越Impala灵活的存储格式HDFS(ORC、Parquet),HBase(KV),Elk与Impala性能对比,TPC-H(单位:秒/查询N)测试环境: 4 节点: 2 *8 core CPUs, 96GB RAM, 6 7200rps SATA 盘, 10GE网卡, HDFS 3
40、副本.,全面超越Impala,大部份指标是impala两倍,Elk: 交互式SQL on Hadoop,Impala:并行SQL查询引擎,MPP架构SQL查询引擎基于C+开发,运行时动态生成优化代码,内存计算,比传统MR效率更高,提供交互式即席查询能力(毫秒至分钟级别),多接口支持,兼容SQL语法,易开发提供JDBC/ODBC开发接口,impala-shell命令行客户端,兼容HiveSQL、SQL-92标准,部分兼容SQL-2003标准,增强特性1. 可靠性增强:所有管理组件实现了主备切换能力2. 负载能力增强:集群提供了负载均衡能力,负载能力强,Impala架构:,impala-shell
41、,Farmer:大数据访问最佳实践,集群应用平台,大数据访问最佳实践大数据RESTful服务化最佳方案异步使用大数据最佳方案安全访问大数据最佳方案异构系统对接大数据最佳方案,集群应用平台提供集群下的服务化提供集群下的同步、异步调用方案低成本、高性能的负载均衡遗留系统接入服务化集群访问网络隔离的服务化集群加固、易用的Redis集群,高效、可靠的集群运维图形化的集群应用部署完整的监控、告警,一键式集群日志收集配置和应用分离,适配生产、测试集群不中断业务进行应用服务的升级不中断业务进行应用服务的扩容,高性能无中心节点的分布式架构灵活配置索引存储位置,确保性能最佳,高安全Kerberos认证资源访问鉴
42、权,易集成纯JAVA开发RESTful接口,易安装全图形向导式安装配置,Solr:Hadoop全文检索,Miner:数据挖掘服务,HiGraph-分布式机器学习算法库,图计算广泛的用于推荐系统,广告系统等中,并广泛的被互联网公司采用,谁和谁可能是朋友?哪些人可能是同事?哪个人在这个社交圈中是最具影响力?哪个交换机故障对数据中心拓扑产生什么样的影响?,Content,大数据趋势和挑战,FusionInsight 2.3 特性介绍,FusionInsight概述,组件功能需求,非功能性需求,1,2,可靠性:系统,系统可靠性:业务无单点: OMS,HDFS,HBASE,YARN,HIVE,OOZIE
43、,HUE,ZOOKEEPER,BOOKEEPER采用主备,负荷分担方式实现服务无单点故障管理节点HA:OMS节点及所有业务组件中心管理节点实现HA跨DC容灾/备份:HBase集群通过HLOG准实时复制,HDFS/Hive集群通过 BackupAdmin异步复制实现跨数据中心灾备第三方备份系统集成 :数据可以灵活的备份在外部系统如NAS、磁带库,只是和NBU等备份软件集成,1,1,1,1,1,1,2,2,3,3,1,3,4,4,可靠性:数据,数据可靠性:OS层可靠性加固: RAID/OS写缓存保护实现掉电数据保护Raid策略: OS,OMS,NameNode,ZK 及HDFS数据节点采用不同硬盘
44、分区及Raid策略,兼顾性能情况下保证数据可靠性快速故障检测: 结合华为存储产品经验,尽快发现故障硬盘,降低MTTR,提高数据可靠性硬盘热插拔:支持在线集群硬盘更换不影响业务,降低MTTR.第三方备份系统集成 :数据可以灵活的备份在外部系统如NAS、磁带库,只是和NBU等备份软件集成跨数据中心数据备份:HBase集群通过HLOG准实时复制,HDFS/Hive集群通过 BackupAdmin异步复制实现跨数据中心灾备,3,3,3,4,6,5,7,8,6,6,5,8,4,7,可靠性:运维,Hadoop cluster,NAS,异地灾备表级别集群在线备份,用于在线业务故障灾备,数据恢复,批量导出,本
45、地备份支持库级别本地备份、批量导出和数据恢复,支持全量、增量两种模式。用于集群故障、人为误操作导致的数据丢失,可靠性:集群备份与容灾,可靠性:组网隔离,应用场景Hadoop是全分布式计算系统,要求业务节点之间全互联。这样管理平面、数据平面和维护平面之间完全互联互通,会带来可靠性、安全性的风险。解决方案FusionInsight支持将网络划分为三级:集群业务平面、集群管理平面和集群外维护网络,彼此之间实施物理隔离。用户价值避免业务平面的高负载阻塞集群管理通道阻止外部攻击者通过管理通道入侵实际业务数据,可靠性:NameNode并行加载,应用场景价值:HDFS NameNode在文件数达到5000万
46、时, FSImage 膨胀厉害,故障重启和部分配置生效重启场景耗时30-40分钟解决方案目标:在单NameNode 场景,5000万文件数, NameNode重启时间不超过15分钟方案:实现NameNode启动过程中FSImage并行加载优化block信息上报的锁机制用户价值HDFS的NameNode启动性能、可靠性提升,并行加载,可靠性:Spark skewedJoin算法,应用场景价值:Spark是内存计算,对内存消耗较大,对磁盘IO的消耗相对少,所以在内存受限的场景,如何利用磁盘的能力提升Spark计算的性能和可靠性是很有必要的。解决方案1. 实现skewedJoin 算法:merge过
47、程中数据被溢出到磁盘中保证可靠,在内存不足时充分利用磁盘IO能力提升性能用户价值提升Spark计算的性能和可靠性,两种join最主要的区别,就是在merge过程中数据能不能被溢出到磁盘中保证可靠,在内存不足时充分利用磁盘IO能力提升性能,5,6,安全:可运营的安全体系( STRIDE ),安全: 充分的安全预防措施,符合华为全球销售的安全红线,以最近版本为例:总工作量中,25%用于加固平台的安全性,STRIDE安全威胁分析,安全设计,安全编码、安全编码规范、代码安全检视、代码安全编译、代码静态扫描,产品安全测试,ICSL安全测试,安全漏洞修复,Appscan、AWVS Web安全工具扫描Nessus系统漏洞扫描 Codenomicon 畸形报文攻击测试 SecureCAT Tomcat/数据库加固项扫描,第三方安全测试(比如CSEC),代码、日志中敏感信息扫描(明文密码等) 不安全加密算法扫描 常规安全测试用例集覆盖测试 发散式渗透测试,