搜档网
当前位置:搜档网 › 大数据架构的介绍及分析

大数据架构的介绍及分析

大数据架构的介绍及分析
大数据架构的介绍及分析

大数据架构的介绍及分析

数据分析工作虽然隐藏在业务系统背后,但是具有非常重要的作用,数据分析的结果对决策、业务发展有着举足轻重的作用。随着大数据技术的发展,数据挖掘、数据探索等专有名词曝光度越来越高,但是在类似于Hadoop系列的大数据分析系统大行其道之前,数据分析工作已经经历了长足的发展,尤其是以BI 系统为主的数据分析,已经有了非常成熟和稳定的技术方案和生态系统,对于BI 系统来说,大概的架构图如下:

可以看到在BI系统里面,核心的模块是Cube,Cube是一个更高层的业务模型抽象,在Cube之上可以进行多种操作,例如上钻、下钻、切片等操作。大部分BI系统都基于关系型数据库,关系型数据库使用SQL语句进行操作,但是SQL 在多维操作和分析的表示能力上相对较弱,所以Cube有自己独有的查询语言MDX,MDX表达式具有更强的多维表现能力,所以以Cube为核心的分析系统基本占据着数据统计分析的半壁江山,大多数的数据库服务厂商直接提供了BI套装软件服务,轻易便可搭建出一套Olap分析系统。不过BI的问题也随着时间的推移逐渐显露出来:

BI系统更多的以分析业务数据产生的密度高、价值高的结构化数据为主,对于非结构化和半结构化数据的处理非常乏力,例如图片,文本,音频的存储,分析。

由于数据仓库为结构化存储,在数据从其他系统进入数据仓库这个东西,我

们通常叫做ETL过程,ETL动作和业务进行了强绑定,通常需要一个专门的ETL团队去和业务做衔接,决定如何进行数据的清洗和转换。

随着异构数据源的增加,例如如果存在视频,文本,图片等数据源,要解析数据内容进入数据仓库,则需要非常复杂等ETL程序,从而导致ETL变得过于庞大和臃肿。

当数据量过大的时候,性能会成为瓶颈,在TB/PB级别的数据量上表现出明显的吃力。

数据库的范式等约束规则,着力于解决数据冗余的问题,是为了保障数据的一致性,但是对于数据仓库来说,我们并不需要对数据做修改和一致性的保障,原则上来说数据仓库的原始数据都是只读的,所以这些约束反而会成为影响性能的因素。

ETL动作对数据的预先假设和处理,导致机器学习部分获取到的数据为假设后的数据,因此效果不理想。例如如果需要使用数据仓库进行异常数据的挖掘,则在数据入库经过ETL的时候就需要明确定义需要提取的特征数据,否则无法结构化入库,然而大多数情况是需要基于异构数据才能提取出特征。

在一系列的问题下,以Hadoop体系为首的大数据分析平台逐渐表现出优异性,围绕Hadoop体系的生态圈也不断的变大,对于Hadoop系统来说,从根本上解决了传统数据仓库的瓶颈的问题,但是也带来一系列的问题:从数据仓库升级到大数据架构,是不具备平滑演进的,基本等于推翻重做。

大数据下的分布式存储强调数据的只读性质,所以类似于Hive,HDFS 这些存储方式都不支持update,HDFS的write操作也不支持并行,这些特性导致其具有一定的局限性。

基于大数据架构的数据分析平台侧重于从以下几个维度去解决传统数据仓库做数据分析面临的瓶颈:

分布式计算:分布式计算的思路是让多个节点并行计算,并且强调数据本地性,尽可能的减少数据的传输,例如Spark通过RDD的形式来表现数据的计算逻辑,可以在RDD上做一系列的优化,来减少数据的传输。

分布式存储:所谓的分布式存储,指的是将一个大文件拆成N份,每一份独立的放到一台机器上,这里就涉及到文件的副本,分片,以及管理等操作,分布式存储主要优化的动作都在这一块。

检索和存储的结合:在早期的大数据组件中,存储和计算相对比较单一,但是目前更多的方向是在存储上做更多的手脚,让查询和计算更加高效,对于计算来说高效不外乎就是查找数据快,读取数据快,所以目前的存储不单单的存储数据内容,同时会添加很多元信息,例如索引信息。像类似于parquet和carbondata 都是这样的思想。

总的来说,目前围绕Hadoop体系的大数据架构大概有以下几种:

传统大数据架构

之所以叫传统大数据架构,是因为其定位是为了解决传统BI的问题,简单来说,数据分析的业务没有发生任何变化,但是因为数据量、性能等问题导致系统无法正常使用,需要进行升级改造,那么此类架构便是为了解决这个问题。可以看到,其依然保留了ETL的动作,将数据经过ETL动作进入数据存储。

优点:简单,易懂,对于BI系统来说,基本思想没有发生变化,变化的仅仅是技术选型,用大数据架构替换掉BI的组件。

缺点:对于大数据来说,没有BI下如此完备的Cube架构,虽然目前有kylin,但是kylin的局限性非常明显,远远没有BI下的Cube的灵活度和稳定度,因此对业务支撑的灵活度不够,所以对于存在大量报表,或者复杂的钻取的场景,需要太多的手工定制化,同时该架构依旧以批处理为主,缺乏实时的支撑。

适用场景:数据分析需求依旧以BI场景为主,但是因为数据量、性能等问

题无法满足日常使用。

流式架构

在传统大数据架构的基础上,流式架构非常激进,直接拔掉了批处理,数据全程以流的形式处理,所以在数据接入端没有了ETL,转而替换为数据通道。经过流处理加工后的数据,以消息的形式直接推送给了消费者。虽然有一个存储部分,但是该存储更多的以窗口的形式进行存储,所以该存储并非发生在数据湖,而是在外围系统。

优点:没有臃肿的ETL过程,数据的实效性非常高。

缺点:对于流式架构来说,不存在批处理,因此对于数据的重播和历史统计无法很好的支撑。对于离线分析仅仅支撑窗口之内的分析。

适用场景:预警,监控,对数据有有效期要求的情况。

Lambda架构

Lambda架构算是大数据系统里面举足轻重的架构,大多数架构基本都是Lambda架构或者基于其变种的架构。Lambda的数据通道分为两条分支:实时流和离线。实时流依照流式架构,保障了其实时性,而离线则以批处理方式为主,保障了最终一致性。什么意思呢?流式通道处理为保障实效性更多的以增量计算为主辅助参考,而批处理层则对数据进行全量运算,保障其

最终的一致性,因此Lambda最外层有一个实时层和离线层合并的动作,此动作是Lambda里非常重要的一个动作,大概的合并思路如下:

优点:既有实时又有离线,对于数据分析场景涵盖的非常到位。

缺点:离线层和实时流虽然面临的场景不相同,但是其内部处理的逻辑却是相同,因此有大量荣誉和重复的模块存在。

适用场景:同时存在实时和离线需求的情况。

Kappa架构

Kappa架构在Lambda 的基础上进行了优化,将实时和流部分进行了合并,将数据通道以消息队列进行替代。因此对于Kappa架构来说,依旧以流处理为主,但是数据却在数据湖层面进行了存储,当需要进行离线分析或者再次计算的时候,则将数据湖的数据再次经过消息队列重播一次则可。

优点:Kappa架构解决了Lambda架构里面的冗余部分,以数据可重播的超凡脱俗的思想进行了设计,整个架构非常简洁。

缺点:虽然Kappa架构看起来简洁,但是施难度相对较高,尤其是对于数据重播部分。

适用场景:和Lambda类似,改架构是针对Lambda的优化。

Unifield架构

以上的种种架构都围绕海量数据处理为主,Unifield架构则更激进,将机器学习和数据处理揉为一体,从核心上来说,Unifield依旧以Lambda 为主,不过对其进行了改造,在流处理层新增了机器学习层。可以看到数据在经过数据通道进入数据湖后,新增了模型训练部分,并且将其在流式层进行使用。同时流式层不单使用模型,也包含着对模型的持续训练。

优点:Unifield架构提供了一套数据分析和机器学习结合的架构方案,非常好的解决了机器学习如何与数据平台进行结合的问题。

缺点:Unifield架构实施复杂度更高,对于机器学习架构来说,从软件包到硬件部署都和数据分析平台有着非常大的差别,因此在实施过程中的难度系数更高。

适用场景:有着大量数据需要分析,同时对机器学习方便又有着非常大的需求或者有规划。

总结

以上几种架构为目前数据处理领域使用比较多的几种架构,当然还有非常多其他架构,不过其思想都会或多或少的类似。数据领域和机器学习领域会持续发展,以上几种思想或许终究也会变得过时。

大数据技术架构解析

技术架构解析大数作者:匿名出处:论2016-01-22 20:46大数据数量庞大,格式多样化。大量数据由家庭、制造工厂和办公场所的各种设备、互联网事务交易、社交网络的活动、自动化传感器、移动设备以及科研仪器等生成。它的爆炸式增长已超出了传统IT基础架构的处理能力,给企业和社会带来严峻的数据管理问题。因此必须开发新的数据架构,围绕“数据收集、数据管理、数据分析、知识形成、智慧行动”的全过程,开发使用这些数据,释放出更多数据的隐藏价值。 一、大数据建设思路 1)数据的获得 大数据产生的根本原因在于感知式系统的广泛使用。随着技术的发展,人们已经有能力制造极其微小的带有处理功能的传感器,并开始将这些设备广泛的布置于社会的各个角落,通过这些设备来对整个社会的运转进行监控。这些设备会源源不断的产生新数据,这种数据的产生方式是自动的。因此在数据收集方面,要对来自网络包括物联网、社交网络和机构信息系统的数据附上时空标志,去伪存真,尽可能收集异源甚至是异构的数据,必要时还可与历史数据对照,多角度验证数据的全面性和可信性。 2)数据的汇集和存储 数据只有不断流动和充分共享,才有生命力。应在各专用数据库建设的基础上,通过数据集成,实现各级各类信息系统的数据交换和数据共享。数据存储要达到低成本、低能耗、高可靠性目标,通常要用到冗余配置、分布化和云计算技术,在存储时要按照一定规则对数据进行分类,通过过滤和去重,减少存储量,同时加入便于日后检索的标签。 3)数据的管理 大数据管理的技术也层出不穷。在众多技术中,有6种数据管理技术普遍被关注,即分布式存储与计算、内存数据库技术、列式数据库技术、云数据库、非关系型的数据库、移动数据库技术。其中分布式存储与计算受关注度最高。上图是一个图书数据管理系统。 4)数据的分析 数据分析处理:有些行业的数据涉及上百个参数,其复杂性不仅体现在数据样本本身,更体现在多源异构、多实体和多空间之间的交互动态性,难以用传统的方法描述与度量,处理的复杂度很大,需要将高维图像等多媒体数据降维后度量与处理,利用上下文关联进行语义分析,从大量动态而且可能是模棱两可的数据中综合信息,并导出可理解的内容。大数据的处理类型很多,主要的处理模式可以分为流处理和批处理两种。批处理是先存储后处理,而流处理则是直接处理数据。挖掘的任务主要是关联分析、聚类分析、分类、预测、时序模式和偏差分析等。 5)大数据的价值:决策支持系统 大数据的神奇之处就是通过对过去和现在的数据进行分析,它能够精确预测未来;通过对组织内部的和外部的数据整合,它能够洞察事物之间的相关关系;通过对海量数据的挖掘,它能够代替人脑,承担起企业和社会管理的职责。 6)数据的使用 大数据有三层内涵:一是数据量巨大、来源多样和类型多样的数据集;二是新型的数据处理和分三是运用数据分析形成价值。大数据对科学研究、经济建设、社会发展和文化生活等各个领;析技术 域正在产生革命性的影响。大数据应用的关键,也是其必要条件,就在于?屔与经营的融合,当然,这里的经营的内涵可以非常广泛,小至一个零售门店的经营,大至一个城市的经营。 二、大数据基本架构 基于上述大数据的特征,通过传统IT技术存储和处理大数据成本高昂。一个企业要大力发展大数据应用首先需要解决两个问题:一是低成本、快速地对海量、多类别的数据进行抽取和存储;二是使用新的技术对数据进行分析和挖掘,为企业创造价值。因此,大数据的存储和处理与云计算技术密不可分,在当前的技

大数据平台架构~巨衫

1.技术实现框架 1.1大数据平台架构 1.1.1大数据库是未来提升业务能力的关键要素 以“大数据”为主导的新一波信息化浪潮正席卷全球,成为全球围加速企业技术创新、推动政府职能转变、引领社会管理变革的利器。目前,大数据技术已经从技术研究步入落地实施阶段,数据资源成为未来业务的关键因素。通过采集和分析数据,我们可以获知事物背后的原因,优化生产/生活方式,预知未来的发展动态。 经过多年的信息化建设,省地税已经积累了丰富的数据资源,为下一步的优化业务、提升管理水平,奠定了坚实的基础。 未来的数据和业务应用趋势,大数据才能解决这些问题。 《1.巨杉软件SequoiaDB产品和案例介绍 v2》P12 “银行的大数据资产和应用“,说明税务数据和业务分析,需要用大数据解决。 《1.巨杉软件SequoiaDB产品和案例介绍 v2》P14 “大数据与传统数据处理”,说明处理模式的差异。 1.1.2大数据平台总体框架 大数据平台总体技术框架分为数据源层、数据接口层、平台架构层、分析工具层和业务应用层。如下图所示:

(此图要修改,北明) 数据源层:包括各业务系统、服务系统以及社会其它单位的结构化数据和非结构化数据; 数据接口层:是原始数据进入大数据库的入口,针对不同类型的数据,需要有针对性地开发接口,进行数据的缓冲、预处理等操作; 平台架构层:基于大数据系统存储各类数据,进行处理?; 分析工具层:提供各种数据分析工具,例如:建模工具、报表开发、数据分析、数据挖掘、可视化展现等工具; 业务应用层:根据应用领域和业务需求,建立分析模型,使用分析工具,发现获知事物背后的原因,预知未来的发展趋势,提出优化业务的方法。例如,寻找服务资源的最佳配置方案、发现业务流程中的短板进行优化等。 1.1.3大数据平台产品选型 针对业务需求,我们选择巨杉数据库作为大数据基础平台。

大数据处理平台构架设计说明书

大数据处理平台及可视化架构设计说明书 版本:1.0 变更记录

目录 1 1. 文档介绍 (3) 1.1文档目的 (3) 1.2文档范围 (3) 1.3读者对象 (3) 1.4参考文献 (3) 1.5术语与缩写解释 (3) 2系统概述 (4) 3设计约束 (5) 4设计策略 (6) 5系统总体结构 (7) 5.1大数据集成分析平台系统架构设计 (7) 5.2可视化平台系统架构设计 (11) 6其它 (14) 6.1数据库设计 (14) 6.2系统管理 (14) 6.3日志管理 (14)

1 1. 文档介绍 1.1 文档目的 设计大数据集成分析平台,主要功能是多种数据库及文件数据;访问;采集;解析,清洗,ETL,同时可以编写模型支持后台统计分析算法。 设计数据可视化平台,应用于大数据的可视化和互动操作。 为此,根据“先进实用、稳定可靠”的原则设计本大数据处理平台及可视化平台。 1.2 文档范围 大数据的处理,包括ETL、分析、可视化、使用。 1.3 读者对象 管理人员、开发人员 1.4 参考文献 1.5 术语与缩写解释

2 系统概述 大数据集成分析平台,分为9个层次,主要功能是对多种数据库及网页等数据进行访采集、解析,清洗,整合、ETL,同时编写模型支持后台统计分析算法,提供可信的数据。 设计数据可视化平台 ,分为3个层次,在大数据集成分析平台的基础上实现大实现数据的可视化和互动操作。

3 设计约束 1.系统必须遵循国家软件开发的标准。 2.系统用java开发,采用开源的中间件。 3.系统必须稳定可靠,性能高,满足每天千万次的访问。 4.保证数据的成功抽取、转换、分析,实现高可信和高可用。

大数据下的数据分析平台架构

大数据下的数据分析平台架构 随着互联网、移动互联网和物联网的发展,谁也无法否认,我们已经切实地迎来了一个海量数据的时代,数据调查公司IDC预计2011年的数据总量将达到1.8万亿GB,对这些海量数据的分析已经成为一个非常重要且紧迫的需求。 作为一家互联网数据分析公司,我们在海量数据的分析领域那真是被“逼上梁山”。多年来在严苛的业务需求和数据压力下,我们几乎尝试了所有可能的大数据分析方法,最终落地于Hadoop平台之上。 Hadoop在可伸缩性、健壮性、计算性能和成本上具有无可替代的优势,事实上已成为当前互联网企业主流的大数据分析平台。本文主要介绍一种基于Hadoop平台的多维分析和数据挖掘平台架构。 大数据分析的分类 Hadoop平台对业务的针对性较强,为了让你明确它是否符合你的业务,现粗略地从几个角度将大数据分析的业务需求分类,针对不同的具体需求,应采用不同的数据分析架构。 ?按照数据分析的实时性,分为实时数据分析和离线数据分析两种。 实时数据分析一般用于金融、移动和互联网B2C等产品,往往要求在数秒内返回上亿行数据的分析,从而达到不影响用户体验的目的。要满足这样的需求,可以采用精心设计的传统关系型数据库组成并行处理集群,或者采用一些内存计算平台,或者采用HDD的架构,这些无疑都需要比较高的软硬件成本。目前比较新的海量数据实时分析工具有EMC的Greenplum、SAP的HANA等。 对于大多数反馈时间要求不是那么严苛的应用,比如离线统计分析、机器学习、搜索引擎的反向索引计算、推荐引擎的计算等,应采用离线分析的方式,通过数据采集工具将日志数据导入专用的分析平台。但面对海量数据,传统的ETL工具往往彻底失效,主要原因是数据格式转换的开销太大,在性能上无法满足海量数据的采集需求。互联网企业的海量数据采集工具,有Facebook开源的Scribe、LinkedIn开源的Kafka、淘宝开源的Timetunnel、Hadoop的Chukwa等,均可以满足每秒数百MB的日志数据采集和传输需求,并将这些数据上载到Hadoop中央系统上。 ?按照大数据的数据量,分为内存级别、BI级别、海量级别三种。 这里的内存级别指的是数据量不超过集群的内存最大值。不要小看今天内存的容量,Facebook缓存在内存的Memcached中的数据高达320TB,而目前的PC服务器,内存也可以超过百GB。因此可以采用一些内存数据库,将热点数据常驻内存之中,从而取得非常快速的分析能力,非常适合实时分析业务。图1是一种实际可行的MongoDB分析架构。

深入浅出解析大数据平台架构

目录: 什么是大数据 Hadoop介绍-HDFS、MR、Hbase 大数据平台应用举例-腾讯 公司的大数据平台架构 “就像望远镜让我们能够感受宇宙,显微镜让我们能够观测微生物一样,大数据正在改变我们的生活以及理解世界的方式……”。 大数据的4V特征-来源 公司的“大数据” 随着公司业务的增长,大量和流程、规则相关的非结构化数据也爆发式增长。比如: 1、业务系统现在平均每天存储20万张图片,磁盘空间每天消耗100G; 2、平均每天产生签约视频文件6000个,每个平均250M,磁盘空间每天消耗1T; …… 三国里的“大数据” “草船借箭”和大数据有什么关系呢?对天象的观察是基于一种对风、云、温度、湿度、光照和所处节气的综合分析这些数据来源于多元化的“非结构”类型,并且数据量较大,只不过这些数据输入到的不是电脑,而是人脑并最终通过计算分析得出结论。

Google分布式计算的三驾马车 Google File System用来解决数据存储的问题,采用N多台廉价的电脑,使用冗余(也就是一份文件保存多份在不同的电脑之上)的方式,来取得读写速度与数据安全并存的结果。 Map-Reduce说穿了就是函数式编程,把所有的操作都分成两类,map与reduce,map用来将数据分成多份,分开处理,reduce将处理后的结果进行归并,得到最终的结果。 BigTable是在分布式系统上存储结构化数据的一个解决方案,解决了巨大的Table的管理、负载均衡的问题。 Hadoop体系架构 Hadoop核心设计

HDFS介绍-文件读流程 Client向NameNode发起文件读取的请求。 NameNode返回文件存储的DataNode的信息。 Client读取文件信息。 HDFS介绍-文件写流程

大数据技术架构解析

大数据数量庞大,格式多样化。大量数据由家庭、制造工厂和办公场所的各种设备、互联网事务交易、社交网络的活动、自动化传感器、移动设备以及科研仪器等生成。它的爆炸式增长已超出了传统IT基础架构的处理能力,给企业和社会带来严峻的数据管理问题。因此必须开发新的数据架构,围绕“数据收集、数据管理、数据分析、知识形成、智慧行动”的全过程,开发使用这些数据,释放出更多数据的隐藏价值。 一、大数据建设思路 1)数据的获得 大数据产生的根本原因在于感知式系统的广泛使用。随着技术的发展,人们已经有能力制造极其微小的带有处理功能的传感器,并开始将这些设备广泛的布置于社会的各个角落,通过这些设备来对整个社会的运转进行监控。这些设备会源源不断的产生新数据,这种数据的产生方式是自动的。因此在数据收集方面,要对来自网络包括物联网、社交网络和机构信息系统的数据附上时空标志,去伪存真,尽可能收集异源甚至是异构的数据,必要时还可与历史数据对照,多角度验证数据的全面性和可信性。 2)数据的汇集和存储 数据只有不断流动和充分共享,才有生命力。应在各专用数据库建设的基础上,通过数据集成,实现各级各类信息系统的数据交换和数据共享。数据存储要达到低成本、低能耗、高可靠性目标,通常要用到冗余配置、分布化和云计算技术,在存储时要按照一定规则对数据进行分类,通过过滤和去重,减少存储量,同时加入便于日后检索的标签。 3)数据的管理 大数据管理的技术也层出不穷。在众多技术中,有6种数据管理技术普遍被关注,即分布式存储与计算、内存数据库技术、列式数据库技术、云数据库、非关系型的数据库、移动数据库技术。其中分布式存储与计算受关注度最高。上图是一个图书数据管理系统。 4)数据的分析 数据分析处理:有些行业的数据涉及上百个参数,其复杂性不仅体现在数据样本本身,更体现在多源异构、多实体和多空间之间的交互动态性,难以用传统的方法描述与度量,处理的复杂度很大,需要将高维图像等多媒体数据降维后度量与处理,利用上下文关联进行语义分析,从大量动态而且可能是模棱两可的数据中综合信息,并导出可理解的内容。大数据的处理类型很多,主要的处理模式可以分为流处理和批处理两种。批处理是先存储后处理,而流处理则是直接处理数据。挖掘的任务主要是关联分析、聚类分析、分类、预测、时序模式和偏差分析等。 5)大数据的价值:决策支持系统 大数据的神奇之处就是通过对过去和现在的数据进行分析,它能够精确预测未来;通过对组织内部的和外部的数据整合,它能够洞察事物之间的相关关系;通过对海量数据的挖掘,它能够代替人脑,承担起企业和社会管理的职责。 6)数据的使用 大数据有三层内涵:一是数据量巨大、来源多样和类型多样的数据集;二是新型的数据处理和分析技术;三是运用数据分析形成价值。大数据对科学研究、经济建设、社会发展和文化生活等各个领

大数据 技术架构解析

大数据技术架构解析 作者:匿名出处:论坛2016-01-22 20:46 大数据数量庞大,格式多样化。大量数据由家庭、制造工厂和办公场所的各种设备、互联网事务交易、社交网络的活动、自动化传感器、移动设备以及科研仪器等生成。它的爆炸式增长已超出了传统IT基础架构的处理能力,给企业和社会带来严峻的数据管理问题。因此必须开发新的数据架构,围绕“数据收集、数据管理、数据分析、知识形成、智慧行动”的全过程,开发使用这些数据,释放出更多数据的隐藏价值。 一、大数据建设思路 1)数据的获得 大数据产生的根本原因在于感知式系统的广泛使用。随着技术的发展,人们已经有能力制造极其微小的带有处理功能的传感器,并开始将这些设备广泛的布置于社会的各个角落,通过这些设备来对整个社会的运转进行监控。这些设备会源源不断的产生新数据,这种数据的产生方式是自动的。因此在数据收集方面,要对来自网络包括物联网、社交网络和机构信息系统的数据附上时空标志,去伪存

真,尽可能收集异源甚至是异构的数据,必要时还可与历史数据对照,多角度验证数据的全面性和可信性。 2)数据的汇集和存储 数据只有不断流动和充分共享,才有生命力。应在各专用数据库建设的基础上,通过数据集成,实现各级各类信息系统的数据交换和数据共享。数据存储要达到低成本、低能耗、高可靠性目标,通常要用到冗余配置、分布化和云计算技术,在存储时要按照一定规则对数据进行分类,通过过滤和去重,减少存储量,同时加入便于日后检索的标签。 3)数据的管理

4)数据的分析

5)大数据的价值:决策支持系统

大数据的神奇之处就是通过对过去和现在的数据进行分析,它能够精确预测未来;通过对组织内部的和外部的数据整合,它能够洞察事物之间的相关关系;通过对海量数据的挖掘,它能够代替人脑,承担起企业和社会管理的职责。 6)数据的使用

大数据处理框架选型分析

大数据处理框架选型分析

前言 说起大数据处理,一切都起源于Google公司的经典论文:《MapReduce:Simplied Data Processing on Large Clusters》。在当时(2000年左右),由于网页数量急剧增加,Google公司内部平时要编写很多的程序来处理大量的原始数据:爬虫爬到的网页、网页请求日志;计算各种类型的派生数据:倒排索引、网页的各种图结构等等。这些计算在概念上很容易理解,但由于输入数据量很大,单机难以处理。所以需要利用分布式的方式完成计算,并且需要考虑如何进行并行计算、分配数据和处理失败等等问题。 针对这些复杂的问题,Google决定设计一套抽象模型来执行这些简单计算,并隐藏并发、容错、数据分布和均衡负载等方面的细节。受到Lisp和其它函数式编程语言map、reduce思想的启发,论文的作者意识到许多计算都涉及对每条数据执行map操作,得到一批中间key/value对,然后利用reduce操作合并那些key值相同的k-v对。这种模型能很容易实现大规模并行计算。 事实上,与很多人理解不同的是,MapReduce对大数据计算的最大贡献,其实并不是它名字直观显示的Map和Reduce思想(正如上文提到的,Map和Reduce思想在Lisp等函数式编程语言中很早就存在了),而是这个计算框架可以运行在一群廉价的PC机上。MapReduce的伟大之处在于给大众们普及了工业界对于大数据计算的理解:它提供了良好的横向扩展性和容错处理机制,至此大数据计算由集中式过渡至分布式。以前,想对更多的数据进行计算就要造更快的计算机,而现在只需要添加计算节点。 话说当年的Google有三宝:MapReduce、GFS和BigTable。但Google三宝虽好,寻常百姓想用却用不上,原因很简单:它们都不开源。于是Hadoop应运而生,初代Hadoop的MapReduce和

车联网大数据平台架构设计

车联网大数据平台架构设计-软硬件选型 1.软件选型建议 数据传输 处理并发链接的传统方式为:为每个链接创建一个线程并由该线程负责所有的数据处理业务逻辑。这种方式的好处在于代码简单明了,逻辑清晰。而由于操作系统的限制,每台服务器可以处理的线程数是有限的,因为线程对CPU的处理器的竞争将使系统整体性能下降。随着线程数变大,系统处理延时逐渐变大。此外,当某链接中没有数据传输时,线程不会被释放,浪费系统资源。为解决上述问题,可使用基于NIO的技术。 Netty Netty是当下最为流行的Java NIO框架。Netty框架中使用了两组线程:selectors与workers。其中Selectors专门负责client端(列车车载设备)链接的建立并轮询监听哪个链接有数据传输的请求。针对某链接的数据传输请求,相关selector会任意挑选一个闲置的worker线程处理该请求。处理结束后,worker自动将状态置回‘空闲’以便再次被调用。两组线程的最大线程数均需根据服务器CPU处理器核数进行配置。另外,netty内置了大量worker 功能可以协助程序员轻松解决TCP粘包,二进制转消息等复杂问题。 IBM MessageSight MessageSight是IBM的一款软硬一体的商业产品。其极限处理能力可达百万client并发,每秒可进行千万次消息处理。 数据预处理 流式数据处理 对于流式数据的处理不能用传统的方式先持久化存储再读取分析,因为大量的磁盘IO操作将使数据处理时效性大打折扣。流式数据处理工具的基本原理为将数据切割成定长的窗口并对窗口内的数据在内存中快速完成处理。值得注意的是,数据分析的结论也可以被应用于流式数据处理的过程中,即可完成模式预判等功能还可以对数据分析的结论进行验证。 Storm Storm是被应用最为广泛的开源产品中,其允许用户自定义数据处理的工作流(Storm术语为Topology),并部署在Hadoop集群之上使之具备批量、交互式以及实时数据处理的能力。用户可使用任意变成语言定义工作流。 IBM Streams IBM的Streams产品是目前市面上性能最可靠的流式数据处理工具。不同于其他基于Java 的开源项目,Streams是用C++开发的,性能也远远高于其他流式数据处理的工具。另外IBM 还提供了各种数据处理算法插件,包括:曲线拟合、傅立叶变换、GPS距离等。 数据推送 为了实现推送技术,传统的技术是采用‘请求-响应式’轮询策略。轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出请求,然后由服务器返回最新的数据给客户端的浏览器。这种传统的模式带来很明显的缺点,即浏览器需要不断的向服务器发出请求,然而HTTP request 的header是非常长的,里面包含的数据可能只是一个很小的值,这样会占用很多的带宽和服务器资源。

大数据架构的介绍及分析

大数据架构的介绍及分析 数据分析工作虽然隐藏在业务系统背后,但是具有非常重要的作用,数据分析的结果对决策、业务发展有着举足轻重的作用。随着大数据技术的发展,数据挖掘、数据探索等专有名词曝光度越来越高,但是在类似于Hadoop系列的大数据分析系统大行其道之前,数据分析工作已经经历了长足的发展,尤其是以BI 系统为主的数据分析,已经有了非常成熟和稳定的技术方案和生态系统,对于BI 系统来说,大概的架构图如下: 可以看到在BI系统里面,核心的模块是Cube,Cube是一个更高层的业务模型抽象,在Cube之上可以进行多种操作,例如上钻、下钻、切片等操作。大部分BI系统都基于关系型数据库,关系型数据库使用SQL语句进行操作,但是SQL 在多维操作和分析的表示能力上相对较弱,所以Cube有自己独有的查询语言MDX,MDX表达式具有更强的多维表现能力,所以以Cube为核心的分析系统基本占据着数据统计分析的半壁江山,大多数的数据库服务厂商直接提供了BI套装软件服务,轻易便可搭建出一套Olap分析系统。不过BI的问题也随着时间的推移逐渐显露出来: BI系统更多的以分析业务数据产生的密度高、价值高的结构化数据为主,对于非结构化和半结构化数据的处理非常乏力,例如图片,文本,音频的存储,分析。 由于数据仓库为结构化存储,在数据从其他系统进入数据仓库这个东西,我

们通常叫做ETL过程,ETL动作和业务进行了强绑定,通常需要一个专门的ETL团队去和业务做衔接,决定如何进行数据的清洗和转换。 随着异构数据源的增加,例如如果存在视频,文本,图片等数据源,要解析数据内容进入数据仓库,则需要非常复杂等ETL程序,从而导致ETL变得过于庞大和臃肿。 当数据量过大的时候,性能会成为瓶颈,在TB/PB级别的数据量上表现出明显的吃力。 数据库的范式等约束规则,着力于解决数据冗余的问题,是为了保障数据的一致性,但是对于数据仓库来说,我们并不需要对数据做修改和一致性的保障,原则上来说数据仓库的原始数据都是只读的,所以这些约束反而会成为影响性能的因素。 ETL动作对数据的预先假设和处理,导致机器学习部分获取到的数据为假设后的数据,因此效果不理想。例如如果需要使用数据仓库进行异常数据的挖掘,则在数据入库经过ETL的时候就需要明确定义需要提取的特征数据,否则无法结构化入库,然而大多数情况是需要基于异构数据才能提取出特征。 在一系列的问题下,以Hadoop体系为首的大数据分析平台逐渐表现出优异性,围绕Hadoop体系的生态圈也不断的变大,对于Hadoop系统来说,从根本上解决了传统数据仓库的瓶颈的问题,但是也带来一系列的问题:从数据仓库升级到大数据架构,是不具备平滑演进的,基本等于推翻重做。 大数据下的分布式存储强调数据的只读性质,所以类似于Hive,HDFS 这些存储方式都不支持update,HDFS的write操作也不支持并行,这些特性导致其具有一定的局限性。 基于大数据架构的数据分析平台侧重于从以下几个维度去解决传统数据仓库做数据分析面临的瓶颈: 分布式计算:分布式计算的思路是让多个节点并行计算,并且强调数据本地性,尽可能的减少数据的传输,例如Spark通过RDD的形式来表现数据的计算逻辑,可以在RDD上做一系列的优化,来减少数据的传输。

大数据平台技术框架选型资料

大数据平台框架选型分析 一、需求 城市大数据平台,首先是作为一个数据管理平台,核心需求是数据的存和取,然后因为海量数据、多数据类型的信息需要有丰富的数据接入能力和数据标准化处理能力,有了技术能力就需要纵深挖掘附加价值更好的服务,如信息统计、分析挖掘、全文检索等,考虑到面向的客户对象有的是上层的应用集成商,所以要考虑灵活的数据接口服务来支撑。 二、平台产品业务流程

三、选型思路 必要技术组件服务: ETL >非/关系数据仓储>大数据处理引擎>服务协调>分析BI >平台监管 四、选型要求 1.需要满足我们平台的几大核心功能需求,子功能不设局限性。如不满足全部,需要对未满足的其它核心功能的开放使用服务支持 2.国内外资料及社区尽量丰富,包括组件服务的成熟度流行度较高

3.需要对选型平台自身所包含的核心功能有较为深入的理解,易用其API或基于源码开发 4.商业服务性价比高,并有空间脱离第三方商业技术服务 5.一些非功能性需求的条件标准清晰,如承载的集群节点、处理数据量及安全机制等 五、选型需要考虑 简单性:亲自试用大数据套件。这也就意味着:安装它,将它连接到你的Hadoop安装,集成你的不同接口(文件、数据库、B2B等等),并最终建模、部署、执行一些大数据作业。自己来了解使用大数据套件的容易程度——仅让某个提供商的顾问来为你展示它是如何工作是远远不够的。亲自做一个概念验证。 广泛性:是否该大数据套件支持广泛使用的开源标准——不只是Hadoop和它的生态系统,还有通过SOAP和REST web服务的数据集成等等。它是否开源,并能根据你的特定问题易于改变或扩展?是否存在一个含有文档、论坛、博客和交流会的大社区? 特性:是否支持所有需要的特性?Hadoop的发行版本(如果你已经使用了某一个)?你想要使用的Hadoop生态系统的所有部分?你想要集成的所有接口、技术、产品?请注意过多的特性可能会大大增加复杂性和费用。所以请查证你是否真正需要一个非常重量级的解决方案。是否你真的需要它的所有特性? 陷阱:请注意某些陷阱。某些大数据套件采用数据驱动的付费方式(“数据税”),也就是说,你得为自己处理的每个数据行付费。因为我们是在谈论大数据,所以这会变得非常昂贵。并不是所有的大数据套件都会生成本地Apache Hadoop代码,通常要在每个Hadoop 集群的服务器上安装一个私有引擎,而这样就会解除对于软件提供商的独立性。还要考虑你使用大数据套件真正想做的事情。某些解决方案仅支持将Hadoop用于ETL来填充数据至数据仓库,而其他一些解决方案还提供了诸如后处理、转换或Hadoop集群上的大数据分析。ETL仅是Apache Hadoop和其生态系统的一种使用情形。

大数据处理技术参考架构

大数据处理技术参考 架构 二〇一五年十二月

目录

1.背景 随着大数据时代的到来,数据由海量拓展为多样,在注重计算速度的同时更加关注挖掘有价值的数据。以IOE体系为核心的数据计算和存储方式越来越不能满足目前大数据处理在性能和成本上的综合 要求。为适应对大数据处理的要求,众多的分布式计算平台随之兴起,在对众多分布式计算平台进行权衡的同时,增强自主创新能力,以满足人民银行对信息技术安全可控的要求。 在核心应用自主研发、核心知识自主掌控的氛围下,保障大数据技术达到灵活可用的目标,确保数据和信息的有效、及时,确保信息系统的可靠、灵活。同时,充分的利用开源产品透明公开的关键信息,做到对技术细节的掌控和验证,开源产品的特点也更能够激发开发者的热情并推进技术的快速变革。 在“互联网+”的战略布局下,当利用信息通信技术把互联网和包括金融行业在内的相关行业结合起来时,能够更加合理和充分的利用大数据技术促进互联网金融的健康发展。当前互联网金融的格局中,由传统金融机构和非金融机构组成。传统金融机构的发展方向主要为传统金融业务的互联网创新以及电商化创新、手机APP服务等;非金融机构的发展方向则主要是指利用互联网技术进行金融运作的 电子商务企业、P2P模式的网络借贷平台,众筹模式的网络投资平台或掌上理财服务,以及第三方支付平台等。在金融行业新兴业态下,

为促进互联网金融的健康发展,为全面提升互联网金融服务能力和普惠水平,为有效防范互联网金融风险及其外溢效应而提供技术支撑。 在金融领域,新生业态层出不穷,金融机构日益多样化,金融资产的流动性快速上升,金融体系的关联度、复杂度大幅提高。金融业的快速发展和创新,使货币政策操作环境、传导渠道发生重大变化。在数据的处理分析上,对原有的宏观审慎分析框架及其有效性、准确性提出了挑战。

数据分析架构及方法

数据分析架构及方法 一、数据分析曾存在的缺点 在今天的各类型企业中,数据分析岗位已经基本得到普及和认可,这个岗位的核心任务往往是支撑运营和营销,将企业内部的数据,客户的数据进行分析和总结,形成以往工作情况的量化表现,以及客户的行为趋势或特征等。 如果从更宏观的角度来认识数据分析岗位的话,每一个数据分析人员都明白,其实数据分析岗位要达到的目标就是希望通过数据来发现潜在的规律,进而帮助预测未来,这一点同数据挖掘的目标一致。那么为什么在大多数公司都已经具备的数据分析岗位基础上,今天却还是在反复提到数据挖掘这个概念,我们就需要来看看数据分析都有哪些是没有做到的内容。 1、数据分散 多数数据分析岗位在公司中的岗位设置是隶属在单一业务部门中作为一个支撑岗,只有少数的公司是将数据分析作为一个独立的部门。其差异性在于,前者的数据分析所能分析的内容仅限于自身部门所输出的指标,比如投诉部门只看投诉处理过程中的数据,销售部门只看销售过程中的数据,一旦涉及到需要将各类指标汇总分析的情况,这种组织架构就会带来极大的负面影响,由于不同部门具备自己部门指标导出的权限,且与其他部门的配合并不影响绩效任务,所以这种跨部门采集数据的过程往往效率奇低。而数据分析最关键的就在于汇集更多的数据和更多的维度来发现规律,所以以往的数据分析多是做最基础的对比分析以及帕累托分析,少有使用算法来对数据进行挖掘的动作,因为越少的指标以及越少的维度将会使得算法发挥的效果越差。 2、指标维度少 在以往的企业中,数字化管理更多的体现在日常运维工作中,对于客户端的数据采集虽然从很早以前就已经开展,CRM系统的诞生已经有很久的时间了,但是一直以来客户端的数据维度却十分缺失,其原因在于上述这些途径所获得的数据多为客户与企业产生交互之后到交互结束之间的数据,但是这段时间只是这个客户日常生活中很少的一部分内容,客户在微博,微信上的行为特点,关注的领

多图技术贴:深入浅出解析大数据平台架构

目录: ?什么是大数据 ?Hadoop介绍-HDFS、MR、Hbase ?大数据平台应用举例-腾讯 ?公司的大数据平台架构 “就像望远镜让我们能够感受宇宙,显微镜让我们能够观测微生物一样,大数据正在改变我们的生活以及理解世界的方式……”。 大数据的4V特征-来源 公司的“大数据” 随着公司业务的增长,大量和流程、规则相关的非结构化数据也爆发式增长。比如: 1、业务系统现在平均每天存储20万图片,磁盘空间每天消耗100G;

2、平均每天产生签约视频文件6000个,每个平均250M,磁盘空间每天消耗1T; …… 三国里的“大数据” “草船借箭”和大数据有什么关系呢?对天象的观察是基于一种对风、云、温度、湿度、光照和所处节气的综合分析这些数据来源于多元化的“非结构”类型,并且数据量较大,只不过这些数据输入到的不是电脑,而是人脑并最终通过计算分析得出结论。 Google分布式计算的三驾马车

?Google File System用来解决数据存储的问题,采用N多台廉价的电脑,使用冗余(也就是一份文件保存多份在不同的电脑之上)的方式,来取得读写速度与数据安全并存的结果。 ?Map-Reduce说穿了就是函数式编程,把所有的操作都分成两类,map 与reduce,map用来将数据分成多份,分开处理,reduce将处理后的结果进行归并,得到最终的结果。 ?BigTable是在分布式系统上存储结构化数据的一个解决方案,解决了巨大的Table的管理、负载均衡的问题。 Hadoop体系架构 Hadoop核心设计

HDFS介绍-文件读流程

Client向NameNode发起文件读取的请求。NameNode返回文件存储的DataNode的信息。Client读取文件信息。 HDFS介绍-文件写流程

数据分析系统的总体架构(多维数据库)

多维数据库的概念并不复杂,(图四:pic4.jpg)举一个例子:我们想描述2003年4月份可乐在北部地区销售额10万元时,牵扯到几个角度:时间、产品、地区。这些叫做维度。至于销售额,叫做度量值。当然,还有成本、利润等。 这样一个模型,可以用一个三维的立方体来描述,每个维度分别代表了时间、产品和地区,立方体上的单元代表了度量值。 进一步,维度可以分为不同的层次,因此这个模型也可以回答诸如“2003年第一季度日用品在南方的销售情况”等。 扩展一下我们的想象,除了时间、产品和地区,我们还可以有很多维度,例如客户的性别、职业、销售部门、促销方式等等。实际上,使用中的多维数据库可能是一个8维或者15维的立方体。 虽然结构上15维的立方体很复杂,但是概念上非常简单,不是吗? 数据分析系统的总体架构分为四个部分:源系统、数据仓库、多维数据库、客户端(图五:pic5.jpg) * 源系统:包括现有的所有OLTP系统,搭建BI系统并不需要您更改现有系统。 * 数据仓库:数据大集中,通过数据抽取,把数据从源系统源源不断地抽取出来,可能每天一次,或者每3个小时一次,当然是自动的。数据仓库依然建立在关系型数据库上,往往符合叫做“星型结构”的模型。 * 多维数据库:数据仓库的数据经过多维建模,形成了立方体结构,每一个立方体描述了一个业务主题,例如销售、库存或者财务。 * 客户端:好的客户端软件可以把多维立方体中的信息丰富多彩地展现给用户。 实际案例:在下面的案例中,我们利用Oracle 9i搭建了数据仓库,Microsoft Analysis Service 2005搭建了多维数据库,ProClarity 6.1 做为客户端分析软件。 分解树好象一个组织图。当它被展开时,通过在选定条目的重复下钻,分解树展示了您想获得的整个路径。此外,您还可以在较低级别选择一个条目并创建一个含有更加详细信息的新的分解树。 分解树在回答以下问题时很有效: * 在指定的产品组内,哪种产品有最高的销售额? * 在特定的产品种类内,各种产品间的销售额分布如何? * 哪个销售人员完成了最高百分比的销售额? 在图六(pic6.jpg)中,可以对2001年个季度的销售额和所占百分比一目了然。任意一层分解树都可以根据不同维度随意展开,在该分解树中,在大区这一层是按国家展开,在国家这一层是按产品分类展开。 投影图使用散点图的格式,显示2个或3个度量值之间的关系。数据点的集中预示两个变量之间存在强的相关关系,而稀疏分布的数据点可能显示不明显的关系。 投影图很适合分析大量的数据。在显示因果关系方面有明显效果,比如例外的数据点就可以考虑进一步研究,因为它们落在“正常”的点群范围之外。 在图七中(pic7.jpg)各色各样的数据点代表不同产品,可以看出网络设备集中于右下区域

大数据处理技术参考架构

大数据处理技术参考架构 二〇一五年十二月

目录 1.背景 (1) 2.技术目标 (2) 3.技术要求 (2) 4.大数据处理业务场景 (3) 5.大数据处理技术对比 (4) 5.1.MPP与H ADOOP&S PARK技术对比 (4) 5.2.H ADOOP&S PARK技术优势 (6) 5.3.H ADOOP框架对比 (6) 5.4.H ADOOP使用情况 (7) 5.5.H ADOOP血缘关系 (8) 5.6.行业大数据应用场景对比分析 (12) 6.大数据处理参考架构 (13) 6.1.参考架构 (13) 6.2.与J AVA EE体系对比 (14) 6.3.参考架构运行状态 (15) 7.总结与思考 (16) 附录:名词解释 (18)

1.背景 随着大数据时代的到来,数据由海量拓展为多样,在注重计算速度的同时更加关注挖掘有价值的数据。以IOE体系为核心的数据计算和存储方式越来越不能满足目前大数据处理在性能和成本上的综合要求。为适应对大数据处理的要求,众多的分布式计算平台随之兴起,在对众多分布式计算平台进行权衡的同时,增强自主创新能力,以满足人民银行对信息技术安全可控的要求。 在核心应用自主研发、核心知识自主掌控的氛围下,保障大数据技术达到灵活可用的目标,确保数据和信息的有效、及时,确保信息系统的可靠、灵活。同时,充分的利用开源产品透明公开的关键信息,做到对技术细节的掌控和验证,开源产品的特点也更能够激发开发者的热情并推进技术的快速变革。 在“互联网+”的战略布局下,当利用信息通信技术把互联网和包括金融行业在内的相关行业结合起来时,能够更加合理和充分的利用大数据技术促进互联网金融的健康发展。当前互联网金融的格局中,由传统金融机构和非金融机构组成。传统金融机构的发展方向主要为传统金融业务的互联网创新以及电商化创新、手机APP服务等;非金融机构的发展方向则主要是指利用互联网技术进行金融运作的电子商务企业、P2P模式的网络借贷平台,众筹模式的网络投资平台或掌上理财服务,以及第三方支付平台等。在金融行业新兴业态下,为促进互联网金融的健康发展,为全面提升互联网金融服务能力和普惠水平,为有效防范互联网金融风险及其外溢效应而提供技术支撑。 在金融领域,新生业态层出不穷,金融机构日益多样化,金融资产的流动性快速上升,金融体系的关联度、复杂度大幅提高。金融业的快速发展和创新,使货币政策操作环境、传导渠道发生重大变化。在数据的处理分析上,对原有的宏观审慎分析框架及其有效性、准确性提出了挑战。

大数据平台架构

1. 技术实现框架 1.1大数据平台架构 1.1.1大数据库是未来提升业务能力的关键要素 以“大数据”为主导的新一波信息化浪潮正席卷全球,成为全球范围内加速企业技术创新、推动政府职能转变、引领社会管理变革的利器。目前,大数据技术已经从技术研究步入落地实施阶段,数据资源成为未来业务的关键因素。通过采集和分析数据,我们可以获知事物背后的原因,优化生产/生活方式,预知未来的发展动态。 经过多年的信息化建设,省地税已经积累了丰富的数据资源,为下一步的优化业务、提升管理水平,奠定了坚实的基础。 未来的数据和业务应用趋势,大数据才能解决这些问题。 《1.巨杉软件SequoiaDB产品和案例介绍v2》P12 “银行的大数据资产和应用“,说明税务数据和业务分析,需要用大数据解决。 《1.巨杉软件SequoiaDB产品和案例介绍v2》P14 “大数据与传统数据处理”,说明处理模式的差异。 1.1.2大数据平台总体框架 大数据平台总体技术框架分为数据源层、数据接口层、平台架构层、分析工具层和业务应用层。如下图所示:

(此图要修改,北明) 数据源层:包括各业务系统、服务系统以及社会其它单位的结构化数据和非结构化数据; 数据接口层:是原始数据进入大数据库的入口,针对不同类型的数据,需要有针对性地开发接口,进行数据的缓冲、预处理等操作; 平台架构层:基于大数据系统存储各类数据,进行处理?; 分析工具层:提供各种数据分析工具,例如:建模工具、报表开发、数据分析、数据挖掘、可视化展现等工具; 业务应用层:根据应用领域和业务需求,建立分析模型,使用分析工具,发现获知事物背后的原因,预知未来的发展趋势,提出优化业务的方法。例如,寻找服务资源的最佳配置方案、发现业务流程中的短板进行优化等。 1.1.3大数据平台产品选型 针对业务需求,我们选择巨杉数据库作为大数据基础平台。

最新大数据平台技术框架选型分析

大数据平台技术框架 选型分析

大数据平台框架选型分析 一、需求 城市大数据平台,首先是作为一个数据管理平台,核心需求是数据的存和取,然后因为海量数据、多数据类型的信息需要有丰富的数据接入能力和数据标准化处理能力,有了技术能力就需要纵深挖掘附加价值更好的服务,如信息统计、分析挖掘、全文检索等,考虑到面向的客户对象有的是上层的应用集成商,所以要考虑灵活的数据接口服务来支撑。 二、平台产品业务流程

三、选型思路 必要技术组件服务: ETL >非/关系数据仓储>大数据处理引擎>服务协调>分析BI >平台监管

四、选型要求 1.需要满足我们平台的几大核心功能需求,子功能不设局限性。如不满足全部,需要对未满足的其它核心功能的开放使用服务支持 2.国内外资料及社区尽量丰富,包括组件服务的成熟度流行度较高 3.需要对选型平台自身所包含的核心功能有较为深入的理解,易用其API或基于源码开发 4.商业服务性价比高,并有空间脱离第三方商业技术服务

5.一些非功能性需求的条件标准清晰,如承载的集群节点、处理数据量及安全机制等 五、选型需要考虑 简单性:亲自试用大数据套件。这也就意味着:安装它,将它连接到你的Hadoop安装,集成你的不同接口(文件、数据库、B2B等等),并最终建模、部署、执行一些大数据作业。自己来了解使用大数据套件的容易程度——仅让某个提供商的顾问来为你展示它是如何工作是远远不够的。亲自做一个概念验证。 广泛性:是否该大数据套件支持广泛使用的开源标准——不只是Hadoop和它的生态系统,还有通过SOAP和REST web服务的数据集成等等。它是否开源,并能根据你的特定问题易于改变或扩展?是否存在一个含有文档、论坛、博客和交流会的大社区? 特性:是否支持所有需要的特性?Hadoop的发行版本(如果你已经使用了某一个)?你想要使用的Hadoop生态系统的所有部分?你想要集成的所有接口、技术、产品?请注意过多的特性可能会大大增加复杂性和费用。所以请查证你是否真正需要一个非常重量级的解决方案。是否你真的需要它的所有特性? 陷阱:请注意某些陷阱。某些大数据套件采用数据驱动的付费方式(“数据税”),也就是说,你得为自己处理的每个数据行付费。因为我们是在谈论大数据,所以这会变得非常昂贵。并不是所有的大数据套件都会生成本地Apache Hadoop代码,通常要在每个Hadoop集群的服务器上安装一个私有引擎,而这样就会解除对于软件提供商的独立性。还要考虑你使用大数据套件真正想做的事情。某些解决方案仅支持将Hadoop用于ETL来填充数据至数据仓库,而其他一些解决方案还提供了诸如后处理、转换或Hadoop集群上的大数据分析。ETL仅是Apache Hadoop和其生态系统的一种使用情形。 六、方案分析

大数据平台架构剖析

大数据平台架构剖析

数据分析工作虽然隐藏在业务系统背后,但是具有非常重要的作用,数据分析的结果对决策、业务发展有着举足轻重的作用。随着大数据技术的发展,数据挖掘、数据探索等专有名词曝光度越来越高,但是在类似于Hadoop系列的大数据分析系统大行其道之前,数据分析工作已经经历了长足的发展,尤其是以BI系统为主的数据分析,已经有了非常成熟和稳定的技术方案和生态系统,对于BI系统来说,大概的架构图如下: 可以看到在BI系统里面,核心的模块是Cube,Cube是一个更高层的业务模型抽象,在Cube之上可以进行多种操作,例如上钻、下钻、切片等操作。大部分BI系统都基于关系型数据库,关系型数据库使用SQL语句进行操作,但是SQL在多维操作和分析的表示能力上相对较弱,所以Cube有自己独有的查询语言MDX,MDX表达式具有更强的多维表现能力,所以以Cube为核心的分析系统基本占据着数据统计分析的半壁江山,大多数的数据库服务厂商直接提供了BI套装软件服务,轻易便可搭建出一套Olap 分析系统。不过BI的问题也随着时间的推移逐渐显露出来: BI系统更多的以分析业务数据产生的密度高、价值高的结构化数据为主,对于非结构化和半结构化数据的处理非常乏力,例如图片,文本,音频的存储,分析。

?由于数据仓库为结构化存储,在数据从其他系统进入数据仓库这个东西,我们通常叫做ETL过程,ETL动作和业务进行了强绑定,通常需要一个专门的ETL团队去和业务做衔接,决定如何进行数据的清洗和转换。 ?随着异构数据源的增加,例如如果存在视频,文本,图片等数据源,要解析数据内容进入数据仓库,则需要非常复杂等ETL程序,从而导致ETL变得过于庞大和臃肿。 ?当数据量过大的时候,性能会成为瓶颈,在TB/PB级别的数据量上表现出明显的吃力。?数据库的范式等约束规则,着力于解决数据冗余的问题,是为了保障数据的一致性,但是对于数据仓库来说,我们并不需要对数据做修改和一致性的保障,原则上来说数据仓库的原始数据都是只读的,所以这些约束反而会成为影响性能的因素。 ?ETL动作对数据的预先假设和处理,导致机器学习部分获取到的数据为假设后的数据,因此效果不理想。例如如果需要使用数据仓库进行异常数据的挖掘,则在数据入库经过ETL的时候就需要明确定义需要提取的特征数据,否则无法结构化入库,然而大多数情况是需要基于异构数据才能提取出特征。

相关主题