你想,百度作为一家国内知名的搜索引擎公司,过去20年里,提供的服务就是基于海量的互联网数据,为用户提供更精准的信息搜索、查询服务,也就是说,百度有着深厚的大数据应用经验。而百度智能云也正在将这样的大数据服务能力赋能到千行百业。
对于这一点,如果你参加了百度智能云在上海举办的“2021云智技术论坛-智能大数据专场”,感受会更深。会议以“云智一体,让大数据发挥大价值”为主题,从智能数据挖掘到隐私计算、再到数据安全,全方位揭示大数据的各个课题。现场,百度智能云大数据工程技术负责人牛献会与会嘉宾分享了“云原生湖仓架构,构建企业大数据基础设施”的主题演讲,并解读了云原生湖仓架构Palo如何为数据存储与治理带来全新思路。
可以说,云原生之下,百度智能云湖仓架构正在让数据价值迸发!
云智一体,让发挥大数据价值更得心应手
俨然,我们已经进入到了大数据时代。
全球数据呈现爆发式增长,海量数据的汇聚不仅给经济发展、社会进步带来了新机遇,还影响着企业发展的方向和速度。当前,企业的大数据处理场景可分为三类:类是数据的可视化BI分析;第二类是日志数据分析与追踪;第三类是数据科学与机器学习。
综合来看,上述三类数据业务基本占据了企业投入的80%,甚至90%。而且也能看出,企业对数据的需求已经不再只是简单存储,而是要通过存储、分析、治理并挖掘出其中的有价值的数据,再反哺到业务,持续推动业务优化升级,终给业务带来更大的商业价值。
在这一过程中,云智一体给企业带来的价值进一步凸显。百度副总裁谢广军表示,“数据价值挖掘就需要云与智的结合,今年百度智能云也发布了‘以云计算为基础,以AI为引擎,赋能千行百业’的新战略,具体来讲就是以云计算为基础,这是企业数字化转型的基座,以AI为引擎是指通过大数据AI的技术赋能行业,进而助推产业的智能化升级。”
必然融合的“湖”与“仓”
先来简单介绍下数据仓与数据湖。
数据仓库本身并不生产任何数据,同时自身也不“消费”任何数据,数据主要来源于外部,并且开放给外部应用,此前,不少企业会选择底层通过ETL工具对接各类数据源进行数据整合,上层数据应用进行数据消费,为业务提供分析决策工具和数据科学应用。
而数据湖依托于可扩展、低成本分布式存储或云对象存储,可以存储结构化、半结构化、关系型等各种数据。它就像是一个大型仓库存储企业多样化原始数据,实现任意来源、任意速度、任意规模、任意类型数据的全量获取、全量存储、多模式处理与全生命周期管理,拥有强大的信息处理能力。但是同样也存在问题,数据湖缺少数据管理能力,以及对数据质量的保障等。也就是说,虽然管理了不少数据,但是哪些数据有价值?无从判断。
但现在,随着企业数字化转型的加速,企业日常运营中产生的数据量呈指数级增长,且数据的类型更加多样化,数据的应用场景日益繁杂,以及基于实时数据的快速决策越来越普及,单一的数据仓库或者数据湖解决方案满足不了用户对数据挖掘和使用的需求。
可以看出,数据仓库易管理、数据质量高,而数据湖则可纳管更多数据,且探索性和灵活性更强。如何将两种方式的优势结合起来呢?
于是湖仓一体架构成为当下架构演变热的趋势。它不仅能实现数据管理的需求,还能以低成本、高扩展、强弹性满足企业在数据运营、价值挖掘、运维等方面的要求。
一句话总结,云原生时代,湖仓一体架构已成为必然选择。
云原生为基础,Palo应运而生
云原生是近几年很热的概念,它是数仓基础架构的一个基本的演变方向。
传统数据仓库是基于物理服务器或云上托管服务器的模式,而在云原生的情况下可以更多去应用云的基础服务,包括存储服务、网络服务以及更完善、更智能的监控服务,充分利用了云的弹性计算、存储以及安全等能力。同时,云原生能够以灵活的方式满足客户数据弹性扩缩容、上云下云的需求,重要的一点是能极大降低客户的使用和运维成本。但目前很多用户对云原生的使用还仅仅停留在起步阶段,只是把机房从传统的IDC搬到云的机房上去。
百度智能云以湖仓一体架构满足客户上云需求,比如在存储上,百度智能云BOS是业界领先的数据湖对象存储;在计算上,BMR是灵活、高性价比的托管大数据处理,还包括新型数据仓库Palo。综合来看,百度智能云云原生湖仓架构以云为基础,能为客户提供弹性、低成本的数据存储和按需伸缩的计算资源。
当然,虽然说低成本是企业对上云的关键诉求,但是同时也要求性能不打折。百度智能云的优势就在于此,能在低成本的基础上保障各种数据处理,具备灵活性、数据分析高性能性、以及异构数据源融合分析等特性。还有一点很重要,那就是当前客户希望以一套架构,一个平台完成所有数据价值挖掘的过程,在这方面,百度智能云就扮演着一体化的数据治理开发平台的重要角色,以统一元数据为抓手,一站式完成数据集成、治理、开发、分析、服务。
现场,牛献会以百度数据仓库Palo为例展开深入解读。Palo是基于开源Apache Doris构建的企业级MPP云数据仓库,它更像是一个独立的分布式系统,可有效地支持在线实时数据分析。
在架构上来看,Palo与常见的分布式存储系统的架构有些不同。常见的分布式系统中一般metaserver做元数据信息管理的,会管理着所有datanode上的数据分布、数据恢复、数据负载均衡等。比如用户使用client可以与metaserver通讯修改元数据,同时会从metaserver处拉取metadata缓存在本地,数据的读写直接通过本地缓存的metadata找到所在的datanode,与datanode通讯进行数据的读写。
再来看Palo,Palo主要有FE(Frontend)和BE(Backend)这两类系统进程,其中FE可以理解为Palo的管控节点,主要负责用户请求的介入、查询计划的解析、元数据的存储以及集群管理等工作,BE主要负责数据存储以及查询计划的执行,这两类系统进程都可以横向拓展,而不需要依赖任何第三方系统(如HDFS、ZooKeeper等),这样高度集成的架构设计也极大简化了一款分布式系统的运维成本。同时Palo在FE进程中实现了MySQL兼容协议层,这样用户通过标准MySQL客户端或其他各类工具即可便捷连接到Palo,并且Palo还支持标准SQL语言,不论是简单的单表聚合、排序过滤或复杂的多表关联、子查询、窗口函数、自定义函数等,都可以通过SQL快速完成,极大减少用户的使用成本。
正如牛献会介绍,百度智能云数据库Palo除了具备简单易用、高效查询、实时数导入、智能物化视图等优势外,还有一个很重要的特点就是稳定可靠,精简的系统架构降低了系统复杂度和运维成本,也提升了系统的稳定性和健壮性。Palo中的数据和元数据是多副本存储,天然避免了因为单节点故障导致的系统不可用,节点的宕机、下线或集群的升级、扩缩容都不会影响线上业务的正常运转。
综合来看,在互联网、制造业等行业,百度智能云Palo都可以助力企业实现降本增效,加速数据赋能。
持续升级的数仓结构,大数据未来可期
持续扩展云原生,这是湖仓架构的发展方向,也是百度智能云要追求的目标。
当前,百度智能云以综合的大数据服务能力赋能行业与客户,可实现数据湖智能化治理与开发,满足客户从数据集成、管理、治理、开发、分析、 服务全生命周期的管理。归纳起来,就是百度智能云AI产品研发部总架构师马如悦所说的,“洞察过去,让数据说话,告诉我们过去的情况,为业务下一步行动提供决策依据。预测未来,根据已有数据发现规律,自动加工,智能预测,为业务的未来赋能。”
而随着云原生需求越来越多,百度智能云的云原生技术也会越来越丰富,比如BOS对象存储、弹性虚拟机、弹性容器的功能会更完善并形成有效协同,持续满足客户按需付费的需求,极大的节约存储和计算成本。
面向未来,百度智能云将继续秉承着开源开放,安全可靠的理念,将更多的客户纳入其中,加速大数据时代的数据处理能力,不断优化湖仓数据结构,优化Palo产品,以云原生为基础,实现与客户的协同创新。
来源 https://zhuanlan.zhihu.com/p/420061915