华为云DWS实时数仓解决方案:简化数据链路,加速数据效能,驱动全场景分析

举报
azu 发表于 2024/09/12 16:48:03 2024/09/12
【摘要】 DWS实时数仓将不断拓展其应用场景,覆盖更多行业与领域。无论是智慧城市、智能制造还是远程医疗等前沿领域,DWS实时数仓都将以其高效、灵活、智能的特点为企业带来全新的数据价值挖掘方式。我们相信,DWS实时数仓作为企业数字化转型的重要驱动力,将助力企业在激烈的市场竞争中脱颖而出。

一、实时数仓介绍

实时数仓是一种现代化的数据仓库系统,其核心优势在于能够处理和分析实时数据。随着信息技术和数据科学的飞速发展,企业对实时数据分析和决策支持的需求愈发迫切。实时数仓能够实时或近实时地反映数据变化,为企业提供最新的业务指标和深度洞察,从而支持快速决策。因此,它已成为数据领域的重要概念和不可或缺的工具。

二、实时数仓的架构

实时数仓的两个常见架构是Lambda架构和Kappa架构:

(1) Lambda架构:Lambda架构的核心理念是“流批一体化”。随着机器性能和数据框架的不断完善,用户其实并不关心底层是如何运行的,无论是批处理还是流式处理,只要能够按照统一的模型返回结果即可,这正是Lambda架构诞生的原因。如今,许多应用如Spark和Flink都支持这种结构。数据进入平台后,可以选择批处理运行,也可以选择流式处理运行,但无论选择哪种方式,数据的一致性都是相同的。

(2) Kappa架构:尽管Lambda架构的理念很好,但在实际应用中可能会面临数据复杂性大大增加的问题。为了解决这一问题,有人提出了用一套架构解决所有问题的设想,而流行的做法就是基于流计算来实现。通过加大流计算的“时间窗口”,可以实现逻辑意义上的批处理操作,从而简化架构并降低数据复杂性。

三、实时数仓面临的挑战

尽管实时数仓在现代数据管理中扮演着重要角色,但其构建和运营过程中仍面临诸多挑战:

  • 实时性挑战:实时数仓要求从数据接入、清洗、整合、加工到查询的整个过程都需控制在极短的时间内完成,以满足业务对实时数据的需求。这要求系统具备高速的数据处理能力,包括数据采集、处理和查询等各个环节。同时,低延迟也是实时数仓面临的一大挑战,特别是在需要实时响应的业务场景中。

  • 数据质量挑战:实时数仓中的数据需要保证高度的准确性,因为实时数据往往直接用于业务决策。任何数据错误都可能导致错误的决策结果,从而给企业带来损失。此外,数据一致性也是实时数仓需要关注的重要方面,以确保不同数据源之间的数据不会发生冲突或不一致的情况。

  • 性能挑战:实时数仓需要支持超大的数据量和超高的RPS(每秒记录数)实时写入。在大数据场景下,如何保持高性能的写入和查询成为了一个巨大的挑战。同时,随着数据量的不断增长,实时数仓还需要具备良好的扩展性,以应对未来可能出现的性能瓶颈。

  • 运维挑战:实时数仓的运维复杂度较高,因为涉及多个组件和多个环节的监控和管理。运维人员需要具备丰富的经验和专业的技能,以应对各种突发情况和性能问题。同时,为了降低运维成本和提高运维效率,实时数仓还需要建立完善的运维管理体系和自动化运维工具。

四、DWS提供的实时数仓解决方案

在传统的实时数仓建设中,由于上游数据源的不一致性,企业通常需要采用Flume、Canal、Logstash等不同的数据采集工具,并通过消息队列Kafka将数据写入数据仓库,且在实际业务环境中,通常需要HBase、Druid、Hive、ClickHouse等不同的存储引擎和计算引擎配合来满足业务的实时需求。这一过程涉及众多组件,数据链路较长,维护成本高昂。

然而,DWS与Flink的深度融合改变了这一现状。DWS实时数仓解决方案支持数仓模型的分层和增量加工,这为企业带来了诸多优势。首先,它能够实现数据的实时入库、出库和查询,确保数据的新鲜度。其次,DWS统一了批流处理逻辑,一站式支持批处理、流处理、交互式查询和点查等多种场景,进一步简化了数据生产线的架构复杂度。

1. 与Flink流计算生态深度融合,简化链路,简化运维

DWS统一数仓以一替N,利用Flink强大的实时处理能力和DWS的Binlog能力,可以快速构建实时数仓,整个服务层由DWS统一数仓完成,简化诸多存储与计算组件。其次DWS通过与Flink的结合,数据采集组件与消息队列合并到计算层Flink中,整体任务链路都可以通过Flink SQL来驱动,从而实现了数据链路的再度简化。

这一变革不仅降低了维护成本,还减少了故障点和传输瓶颈,进一步提高了数据的实效性。同时,更少的组件意味着架构变得更加清晰简单,维护也变得更加方便。

2. 数据处理效率飞跃,秒级/毫秒级查询,T+0/T+0.x处理时效

DWS通过gds-kafka全托管直连DN入库的方式,实现了性能的显著提升。这一特性使得数据能够更快地进入数仓,为实时分析提供了有力支持。通过物化视图、预聚合表等能力,数据可以在不出库的情况下自动实现增量计算。这一特性极大地提高了数据处理的效率,降低了数据处理的复杂度。

  • gds-kafka全托管直连DN入库:

传统的flink入库存在两大痛点问题:用户需维护入库的flink jar,运维成本高;多并发sink写CN,CN存在负载瓶颈,严重影响入库性能的提升。

面对以上痛点问题,DWS提供了针对性解决方案,通过全托管实时入库服务,用户无需维护flink代码;CN不再成为瓶颈,入库性能大幅提升,随集群规模近线性扩展。

  • 物化视图:

物化视图是DWS实时数仓的重要特性之一。它允许用户将查询结果作为物理表存储在数仓中,从而加速后续的查询操作。DWS能够实时捕获并处理数据源中的增量数据。当数据发生变化时,系统能够识别这些变化,并仅对发生变化的数据进行重新计算,从而更新物化视图。这种增量处理方式不仅提高了数据处理的效率,还降低了资源消耗,使得物化视图在实时数据仓库环境中更加实用和高效。此外,物化视图还可以代替部分分层加工的逻辑,通过预先计算和存储复杂查询的结果,用户在查询数据时可以直接从物化视图中获取,而无需编写复杂的查询语句或进行多层数据加工,提高数据查询与处理效率。

  • Turbo引擎:

Turbo引擎是DWS针对传统列存执行引擎的主要性能瓶颈点做出的独创性突破,通过数据格式优化、自研Hash算法、根据运行态数据特征定制数据处理算法、算子算法重构等手段实现性能倍增目标。DWS 9.1.0版本发布性能白皮书显示开箱性能整体相较8.3.0版本提升一倍。

  • Hstore技术:

当用户需要捕获数据库事件用于数据增量导出Flink等第三方组件,并协同完成数据加工等任务时,DWS实时数仓中的HStore表提供了Binlog功能,通过消费Binlog数据来实现上下游的数据同步,同时提供了小批量实时入库的能力,可以大幅提高数据加工的效率。

五、未来展望

展望未来,DWS实时数仓解决方案将继续深化与Flink等先进流计算技术的融合, 引领数据仓库领域的新一轮变革。DWS实时数仓将不断优化其存储与计算引擎,以支持更大规模的数据处理需求。Turbo引擎等创新技术的持续迭代将推动数据处理性能的进一步提升,满足企业对数据实时性的极致追求。同时,HStore表等高级特性的广泛应用将促进数据增量同步与加工的效率,为复杂业务场景下的数据应用提供有力支持。随着AI技术的不断发展,DWS实时数仓也将更加注重智能化与自动化,优化查询路径、预测数据趋势、识别异常数据等,为企业提供更精准、更智能的数据洞察。

DWS实时数仓将不断拓展其应用场景,覆盖更多行业与领域。无论是智慧城市、智能制造还是远程医疗等前沿领域,DWS实时数仓都将以其高效、灵活、智能的特点为企业带来全新的数据价值挖掘方式。我们相信,DWS实时数仓作为企业数字化转型的重要驱动力,将助力企业在激烈的市场竞争中脱颖而出。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。