158文章网欢迎您
您的位置:158文章网 > 范文示例 > 用电大数据平台架构设计方案(ppt)

用电大数据平台架构设计方案(ppt)

作者:158文章网日期:

返回目录:范文示例

今天小编给各位分享平台设计方案的知识,文中也会对其通过用电大数据平台架构设计方案(ppt)和大数据平台有哪些架构等多篇文章进行知识讲解,如果文章内容对您有帮助,别忘了关注本站,现在进入正文!

内容导航:
  • 用电大数据平台架构设计方案(ppt)
  • 大数据平台有哪些架构
  • 设计一个大数据实时分析平台要怎么做呢?
  • 如何设计企业级大数据分析平台
  • 一、用电大数据平台架构设计方案(ppt)

    来源公众号:方案经理 选编:悟道方案网

    选编:悟道方案网 用电-悟道方案网_智慧城市方案设计平台

    一、大数据平台有哪些架构

    01

    传统大数据架构

    之所以叫传统大数据架构,是因为其定位是为了解决传统BI的问题。

    优点:

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

    缺点:

    对于大数据来说,没有BI下完备的Cube架构,对业务支撑的灵活度不够,所以对于存在大量报表,或者复杂的钻取的场景,需要太多的手工定制化,同时该架构依旧以批处理为主,缺乏实时的支撑。

    适用场景:

    数据分析需求依旧以BI场景为主,但是因为数据量、性能等问题无法满足日常使用。

    02

    流式架构

    在传统大数据架构的基础上,直接拔掉了批处理,数据全程以流的形式处理,所以在数据接入端没有了ETL,转而替换为数据通道。

    优点:

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

    缺点:

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

    适用场景:

    预警,监控,对数据有有效期要求的情况。

    03

    Lambda架构

    大多数架构基本都是Lambda架构或者基于其变种的架构。Lambda的数据通道分为两条分支:实时流和离线。

    优点:

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

    缺点:

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

    适用场景:

    同时存在实时和离线需求的情况。

    04

    Kappa架构

    在Lambda 的基础上进行了优化,将实时和流部分进行了合并,将数据通道以消息队列进行替代。

    优点:

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

    缺点:

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

    适用场景:

    和Lambda类似,改架构是针对Lambda的优化。

    05

    Unifield架构

    以上的种种架构都围绕海量数据处理为主,Unifield架构则将机器学习和数据处理揉为一体,在流处理层新增了机器学习层。

    优点:

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

    缺点:

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

    适用场景:

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

    大数据时代各种技术日新月异,想要保持竞争力就必须得不断地学习。写这些文章的目的是希望能帮到一些人了解学习大数据相关知识 。加米谷大数据,大数据人才培养机构,喜欢的同学可关注下,每天花一点时间学习,长期积累总是会有收获的。

    二、设计一个大数据实时分析平台要怎么做呢?

    PetaBase-V作为Vertica基于亿信分析产品的定制版,提供面向大数据的实时分析服务,采用无共享大规模并行架构(MPP),可线性扩展集群的计算能力和数据处理容量,基于列式数据库技术,使 PetaBase-V 拥有高性能、高扩展性、高压缩率、高健壮性等特点,可完美解决报表计算慢和明细数据查询等性能问题。
    大数据实时分析平台(以下简称PB-S),旨在提供数据端到端实时处理能力(毫秒级/秒级/分钟级延迟),可以对接多数据源进行实时数据抽取,可以为多数据应用场景提供实时数据消费。作为现代数仓的一部分,PB-S可以支持实时化、虚拟化、平民化、协作化等能力,让实时数据应用开发门槛更低、迭代更快、质量更好、运行更稳、运维更简、能力更强。
    整体设计思想
    我们针对用户需求的四个层面进行了统一化抽象:
    统一数据采集平台
    统一流式处理平台
    统一计算服务平台
    统一数据可视化平台
    同时,也对存储层保持了开放的原则,意味着用户可以选择不同的存储层以满足具体项目的需要,而又不破坏整体架构设计,用户甚至可以在Pipeline中同时选择多个异构存储提供支持。下面分别对四个抽象层进行解读。
    1)统一数据采集平台
    统一数据采集平台,既可以支持不同数据源的全量抽取,也可以支持增强抽取。其中对于业务数据库的增量抽取会选择读取数据库日志,以减少对业务库的读取压力。平台还可以对抽取的数据进行统一处理,然后以统一格式发布到数据总线上。这里我们选择一种自定义的标准化统一消息格式UMS(Unified Message Schema)做为 统一数据采集平台和统一流式处理平台之间的数据层面协议。
    UMS自带Namespace信息和Schema信息,这是一种自定位自解释消息协议格式,这样做的好处是:
    整个架构无需依赖外部元数据管理平台;
    消息和物理媒介解耦(这里物理媒介指如Kafka的Topic, Spark Streaming的Stream等),因此可以通过物理媒介支持多消息流并行,和消息流的自由漂移。
    平台也支持多租户体系,和配置化简单处理清洗能力。
    2)统一流式处理平台
    统一流式处理平台,会消费来自数据总线上的消息,可以支持UMS协议消息,也可以支持普通JSON格式消息。同时,平台还支持以下能力:
    支持可视化/配置化/SQL化方式降低流式逻辑开发/部署/管理门槛
    支持配置化方式幂等落入多个异构目标库以确保数据的最终一致性
    支持多租户体系,做到项目级的计算资源/表资源/用户资源等隔离
    3)统一计算服务平台
    统一计算服务平台,是一种数据虚拟化/数据联邦的实现。平台对内支持多异构数据源的下推计算和拉取混算,也支持对外的统一服务接口(JDBC/REST)和统一查询语言(SQL)。由于平台可以统一收口服务,因此可以基于平台打造统一元数据管理/数据质量管理/数据安全审计/数据安全策略等模块。平台也支持多租户体系。
    4)统一数据可视化平台
    统一数据可视化平台,加上多租户和完善的用户体系/权限体系,可以支持跨部门数据从业人员的分工协作能力,让用户在可视化环境下,通过紧密合作的方式,更能发挥各自所长来完成数据平台最后十公里的应用。
    以上是基于整体模块架构之上,进行了统一抽象设计,并开放存储选项以提高灵活性和需求适配性。这样的RTDP平台设计,体现了现代数仓的实时化/虚拟化/平民化/协作化等能力,并且覆盖了端到端的OLPP数据流转链路。
    具体问题和解决思路
    下面我们会基于PB-S的整体架构设计,分别从不同维度讨论这个设计需要面对的问题考量和解决思路。
    功能考量主要讨论这样一个问题:实时Pipeline能否处理所有ETL复杂逻辑?
    我们知道,对于Storm/Flink这样的流式计算引擎,是按每条处理的;对于Spark Streaming流式计算引擎,按每个mini-batch处理;而对于离线跑批任务来说,是按每天数据进行处理的。因此处理范围是数据的一个维度(范围维度)。
    另外,流式处理面向的是增量数据,如果数据源来自关系型数据库,那么增量数据往往指的是增量变更数据(增删改,revision);相对的批量处理面向的则是快照数据(snapshot)。因此展现形式是数据的另一个维度(变更维度)。
    单条数据的变更维度,是可以投射收敛成单条快照的,因此变更维度可以收敛成范围维度。所以流式处理和批量处理的本质区别在于,面对的数据范围维度的不同,流式处理单位为“有限范围”,批量处理单位为“全表范围”。“全表范围”数据是可以支持各种SQL算子的,而“有限范围”数据只能支持部分SQL算子。
    复杂的ETL并不是单一算子,经常会是由多个算子组合而成,由上可以看出单纯的流式处理并不能很好的支持所有ETL复杂逻辑。那么如何在实时Pipeline中支持更多复杂的ETL算子,并且保持时效性?这就需要“有限范围”和“全表范围”处理的相互转换能力。
    设想一下:流式处理平台可以支持流上适合的处理,然后实时落不同的异构库,计算服务平台可以定时批量混算多源异构库(时间设定可以是每隔几分钟或更短),并将每批计算结果发送到数据总线上继续流转,这样流式处理平台和计算服务平台就形成了计算闭环,各自做擅长的算子处理,数据在不同频率触发流转过程中进行各种算子转换,这样的架构模式理论上即可支持所有ETL复杂逻辑。
    2)质量考量
    上面的介绍也引出了两个主流实时数据处理架构:Lambda架构和Kappa架构,具体两个架构的介绍网上有很多资料,这里不再赘述。Lambda架构和Kappa架构各有其优劣势,但都支持数据的最终一致性,从某种程度上确保了数据质量,如何在Lambda架构和Kappa架构中取长补短,形成某种融合架构,这个话题会在其他文章中详细探讨。
    当然数据质量也是个非常大的话题,只支持重跑和回灌并不能完全解决所有数据质量问题,只是从技术架构层面给出了补数据的工程方案。关于大数据数据质量问题,我们也会起一个新的话题讨论。
    3)稳定考量
    这个话题涉及但不限于以下几点,这里简单给出应对的思路:
    高可用HA
    整个实时Pipeline链路都应该选取高可用组件,确保理论上整体高可用;在数据关键链路上支持数据备份和重演机制;在业务关键链路上支持双跑融合机制
    SLA保障
    在确保集群和实时Pipeline高可用的前提下,支持动态扩容和数据处理流程自动漂移
    弹性反脆弱
    ? 基于规则和算法的资源弹性伸缩
    ? 支持事件触发动作引擎的失效处理
    监控预警
    集群设施层面,物理管道层面,数据逻辑层面的多方面监控预警能力
    自动运维
    能够捕捉并存档缺失数据和处理异常,并具备定期自动重试机制修复问题数据
    上游元数据变更抗性
    ?上游业务库要求兼容性元数据变更
    ? 实时Pipeline处理显式字段
    4)成本考量
    这个话题涉及但不限于以下几点,这里简单给出应对的思路:
    人力成本
    通过支持数据应用平民化降低人才人力成本
    资源成本
    通过支持动态资源利用降低静态资源占用造成的资源浪费
    运维成本
    通过支持自动运维/高可用/弹性反脆弱等机制降低运维成本
    试错成本
    通过支持敏捷开发/快速迭代降低试错成本
    5)敏捷考量
    敏捷大数据是一整套理论体系和方法学,在前文已有所描述,从数据使用角度来看,敏捷考量意味着:配置化,SQL化,平民化。
    6)管理考量
    数据管理也是一个非常大的话题,这里我们会重点关注两个方面:元数据管理和数据安全管理。如果在现代数仓多数据存储选型的环境下统一管理元数据和数据安全,是一个非常有挑战的话题,我们会在实时Pipeline上各个环节平台分别考虑这两个方面问题并给出内置支持,同时也可以支持对接外部统一的元数据管理平台和统一数据安全策略。
    以上是我们探讨的大数据实时分析平台PB-S的设计方案。

    三、如何设计企业级大数据分析平台

    统企业的OLAP几乎都是基于关系型数据库,在面临“大数据”分析瓶颈,甚至实时数据分析的挑战时,在架构上如何应对?本文试拟出几个大数据OLAP平台的设计要点,意在抛砖引玉。
      突破设计原则
      建设企业的大数据管理平台(Big Data Management Platform),第一个面临的挑战来自历史数据结构,以及企业现有的数据库设计人员的观念、原则。数据关系、ACID在关系数据库几十年的统治时期是久得人心,不少开发人员都有过为文档、图片设计数据表,或将文档、图片序列化为二进制文件存入关系数据库的经历。在BDMP之上,我们需要对多种不同的格式的数据进行混合存储,这就必须意识到曾经的原则已经不再适用——One size dosen’t fit all,新的原则——One size fits a bunch.
      以下是我列出的一些NoSQL数据库在设计上的模式:
      文档数据库:数据结构是类JSON,可以使用嵌入(Embed)或文档引用(Reference)的方式来为两个不同的文档对象建立关系;
      列簇数据库:基于查询进行设计,有宽行(Wild Rows)和窄行(Skinny Rows)的设计决策;
      索引数据库:基于搜索进行设计,在设计时需要考虑对对每个字段内容的处理(Analysis)。
      搜索和查询的区别在于,对返回内容的排序,搜索引擎侧重于文本分析和关键字权重的处理上,而查询通常只是对数据进行单列或多列排序返回即可。
      数据存储的二八原则
      不少企业在解决海量数据存储的问题上,要么是把关系数据库全部往Hadoop上一导入,要么是把以前的非结构化数据如日志、点击流往NoSQL数据库中写入,但最后往往发现前者还是无法解决大数据分析的性能瓶颈,后者也无法回答数据如何发挥业务价值的问题。
      在数据的价值和使用上,其实也存在着二八原则:
      20%的数据发挥着80%的业务价值;
      80%的数据请求只针对20%的数据。
      目前来看,不管是数据存储处理、分析还是挖掘,最完整和成熟的生态圈还是基于关系型数据库,比如报表、联机分析等工具;另外就是数据分析人员更偏重于查询分析语言如SQL、R、Python数据分析包而不是编程语言。
      企业大数据平台建设的二八原则是,将20%最有价值的数据——以结构化的形式存储在关系型数据库中供业务人员进行查询和分析;而将80%的数据——以非结构化、原始形式存储在相对廉价的Hadoop等平台上,供有一定数据挖掘技术的数据分析师或数据工程师进行下一步数据处理。经过加工的数据可以以数据集市或数据模型的形式存储在NoSQL数据库中,这也是后面要讲到的“离线”与“在线”数据。
      理解企业的数据处理需求
      数据库到数据仓库,是事务型数据到分析型数据的转变,分析型数据需要包括的是:分析的主题、数据的维度和层次,以及数据的历史变化等等。而对大数据平台来说,对分析的需求会更细,包括:
      查询:快速响应组合条件查询、模糊查询、标签
      搜索:包括对非结构化文档的搜索、返回结果的排序
      统计:实时反映变化,如电商平台的在线销售订单与发货计算出的库存显示
      挖掘:支持挖掘算法、机器学习的训练集
      针对不同的数据处理需求,可能需要设计不同的数据存储,还需要考虑如何快速地将数据复制到对应的存储点并进行合适的结构转换,以供分析人员快速响应业务的需求。
      离线数据与在线数据
      根据不同的企业业务,对“离线”的定义其实不一样,在这里离线数据特指在业务场景中适用于“历史数据”的部分。常见的历史数据查询分析一般来自于特定时间段,设计上需要考虑的是将数据存入历史库中时,建立时间索引。另一种情况是某种业务问题的定位或分析,在数据量巨大的情况下,基于Hadoop或Spark等框架编写分析算法并直接在平台上运行,可以大大节约数据导出导入、格式转换与各种分析工具对接的时间。

      在线数据处理按照存储和分析的先后顺序,可分为批处理(先存储后分析)和流处理(先分析后存储)两类。Cassandra数据库的设计采用上数据追加写入模式,可以支持实时批处理;流式计算平台则有Apache Storm、Yahoo S4等开源框架,商业平台有Amazon Kenisis(部署在云端)。企业的实时分析需求往往有特定的应用场景,需要对业务和现行系统有深入的理解才能设计出一个合理的架构。

    关于平台设计方案的问题,通过《设计一个大数据实时分析平台要怎么做呢?》、《如何设计企业级大数据分析平台》等文章的解答希望已经帮助到您了!如您想了解更多关于平台设计方案的相关信息,请到本站进行查找!

    本文标签:平台设计方案(1)

    相关阅读

    • 用电大数据平台架构设计方案(ppt)

    • 158文章网范文示例
    • 今天小编给各位分享平台设计方案的知识,文中也会对其通过用电大数据平台架构设计方案(ppt)和大数据平台有哪些架构等多篇文章进行知识讲解,如果文章内容对您有帮助,别忘了关
    关键词不能为空

    范文示例_作文写作_作文欣赏_故事分享_158文章网