第6讲大数据架构设计理论与实践Kappa 架构的实现和优缺点.pptxVIP

第6讲大数据架构设计理论与实践Kappa 架构的实现和优缺点.pptx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第十九章大数据架构设计理论与实践Kappa架构的实现和优缺点系统架构设计师第二版

综合知识精讲培训课讲师:邵宗其

考点分析本章主要学习大数据方向软件架构的发展和工作中的实践。根据考试大纲,本小时知识点会涉及案例分析题和论文题(各占25分)。本小时内容侧重于理解性记忆,按照以往的出题规律,部分基础知识点来源于教材,部分考查内容需要灵活运用相关知识点。知识架构如图所示。大数据架构设计理论与实践

Kappa架构的实现以ApacheKafka为例来讲述整个全新架构的过程。部署ApacheKafka,并设置数据日志的保留期(RetentionPeriod)。这里的保留期指的是你希望能够重新处理的历史数据的时间区间。例如,如果你希望重新处理最多一年的历史数据,那就可以把ApacheKafka中的保留期设置为365天。如果你希望能够处理所有的历史数据,那就可以把ApacheKafka中的保留期设置为“永久(Forever)”。如果需要改进现有的逻辑算法,那就表示我们需要对历史数据进行重新处理。需要做的就是重新启动一个ApacheKafka作业实例(Instance)。这个作业实例将从头开始,重新计算保留好的历史数据,并将结果输出到一个新的数据视图中。ApacheKafka的底层是使用LogOffset来判断现在已经处理到哪个数据块了,所以只需要将LogOffset设置为0,新的作业实例就会从头开始处理历史数据。当这个新的数据视图处理过的数据进度赶上了旧的数据视图时,我们的应用便可以切换到从新的数据视图中读取。停止旧版本的作业实例,并删除旧的数据视图。Kappa的实现Kafka

Kappa架构的优缺点Kappa架构的优点在于将实时和离线代码统一起来,方便维护而且统一了数据口径的问题,避免了Lambda架构中与离线数据合并的问题,查询历史数据的时候只需要重放存储的历史数据即可。Kappa优点

Kappa架构的优缺点(1)消息中间件缓存的数据量和回溯数据有性能瓶颈。通常算法需要过去180天的数据,如果都存在消息中间件,无疑有非常大的压力。同时,一次性回溯订正180天级别的数据,对实时计算的资源消耗也非常大。(2)在实时数据处理时,遇到大量不同的实时流进行关联时,非常依赖实时计算系统的能力,很可能因为数据流先后顺序问题,导致数据丢失。(3)Kappa在抛弃了离线数据处理模块的时候,同时抛弃了离线计算更加稳定可靠的特点。Lambda虽然保证了离线计算的稳定性,但双系统的维护成本高且两套代码带来后期运维困难。对于以上Kappa框架存在的几个问题,目前也存在一些解决方案,对于消息队列缓存数据性能的问题,Kappa+框架提出使用HDFS来存储中间数据。针对Kappa框架展示层能力不足的问题,也有人提出了混合分析系统的解决方案。Kappa缺点

Kappa架构的变形Kappa+是Uber提出流式数据处理架构,它的核心思想是让流计算框架直接读HDFS里的数据仓库数据,一并实现实时计算和历史数据backfll计算,不需要为backfll作业长期保存日志或者把数据拷贝回消息队列。Kappa+将数据任务分为无状态任务和时间窗口任务,无状态任务比较简单,根据吞吐速度合理并发扫描全量数据即可,时间窗口任务的原理是将数据仓库数据按照时间粒度进行分区存储,窗口任务按时间先后顺序一次计算一个partition的数据,partition内乱序并发,所有分区文件全部读取完毕后,所有source才进入下一个partition消费并更新watermark。事实上,Uber开发了Apachehudi框架来存储数据仓库数据,hudi支持更新、删除已有parquet数据,也支持增量消费数据更新部分,从而系统性解决了存储的问题。图19-11是完整的Uber大数据处理平台,其中Hadoop→Spark→用户查询的流程涵盖了Kappa+数据处理架构。将不同来源的数据通过Kafka导入到Hadoop中,通过HDFS来存储中间数据,再通过spark对数据进行分析处理,最后交由上层业务进行查询。Kappa+架构

Kappa架构的优缺点Lambda和Kappa架构都还有展示层的困难点,结果视图如何支持热点数据查询分析,一个解决方案是在Kappa基础上衍生数据分析流程。如图19-12所示,在基于使用Kafka+Flink构建Kappa流计算数据架构,针对Kappa架构分析能力不足的问题,再利用Kafka对接组合Elastic-Search实时分析引擎,部分弥补其数据分析能力。但是ElasticSearch也只适合对合理数据量级的热点数据进行索引,无法覆

您可能关注的文档

文档评论(0)

邵宗其 + 关注
实名认证
文档贡献者

信息系统项目管理师持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年07月25日上传了信息系统项目管理师

1亿VIP精品文档

相关文档