从 GaussDB(DWS) 的技术演进,看数据仓库的积淀与新生

新闻资讯   2023-07-12 13:33   58   0  

作者 | 付秋伟

数据驱动着现代商业的发展。今天,无论在制造、零售、物流,还是在互联网、金融等行业,数据都变得比以往任何时候更为重要。

海量且多样的数据浪潮对数据处理和分析提出了更高的要求,也使得数据仓库走向了多元化的发展之路,传统数仓、数据集市、实时数仓等相继诞生。此外,随着云计算的兴起和渗透,云数仓成为了数仓技术演进的新阶段,并且逐渐成为了众多企业的共同选择。

与时俱进的“数据仓库”

“数据仓库”的概念并非近些年才出现,关于它的起源,众说纷纭,有一种说法指出“数据仓库”的概念最早可以追溯到上世纪 60 年代,当时的数据主要是手工处理的纸质文档和统计报表;80 年代中后期,随着计算机技术和数据库技术的飞速发展,数据仓库开始逐渐成为企业级分析的重要工具;直到 90 年代 Bill Inmon 推出《建立数据仓库》,正式定义了数据仓库的概念——数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的、不可修改的数据集合;进入 21 世纪后,数据仓库开始与大数据、数据挖掘、机器学习、云计算等技术的相结合,走上了集成发展之路。

随着技术的不断发展和产业实践的深入,数据仓库逐渐成为了企业信息管理中不可或缺的部分。在实际应用中,数据仓库已经被广泛应用于各个领域,如客户关系管理、商业智能、金融风险评估等。例如,在客户关系管理方面,数据仓库可以帮助企业更好地了解其客户,从而提高客户满意度和忠诚度。在商业智能方面,数据仓库可以帮助企业快速地分析大量的数据,从而为企业决策提供支持;在金融风险评估方面,数据仓库可以帮助银行和金融机构更好地评估风险和制定策略等等。

一些大型科技公司,基于自身业务诉求,也走上了数据仓库的研发之路。比如华为云早在 2011 年就开始做数据仓库——GaussDB(DWS) 的预研,在经受了海量自有业务数据的考验后,于 2015 年推向市场,面向金融、政府传统一体机等企业级核心数仓场景提供服务,2017 年 DWS 上云,进一步提升了服务能力与服务范畴。

据华为云数仓 GaussDB(DWS) 资深产品专家黄海燕介绍,GaussDB(DWS) 是华为云数据生产线上的一个明星产品,是支持实时入库、实时分析、批量运算、交互式查询的一站式分析平台,具备传统数仓的超大规模、高性能、高并发等优势,同时也具备云原生数仓的存算分离、弹性伸缩、Serverless、湖仓一体和数智融合等能力。

历时 12 年,从内到外、从本地部署到云端服务,GaussDB(DWS) 逐渐探索出了适应云时代多场景需求的云数仓之路。

GaussDB(DWS) 的 Serverless 之路

2017 年,华为云开始加速拓展业务,推出了更多云计算服务,GaussDB(DWS) 也全面上云。上云之后带来的最直接的价值在于可以减少客户企业的硬件投资和运维成本,提高整体的运营效益。但是由于企业的业务规模不同,负载差异非常大。黄海燕表示,小一点的可能只有几十 GB 的数据集,大的则有数百 TB 甚至更多的数据集。业务规模的差异对数仓服务的弹性也提出了更高的要求。

针对这个问题,华为云 GaussDB(DWS) 在一开始就将数仓服务传统的一体机模式转换成了弹性计算服务 ECS+ 弹性存储服务 EVS 上的存算分离模式,实现了计算存储独立的扩容和扩展,能够实现计算升降配、存储弹性扩容,同时也支持在数据扩容之间的数据重分布,且不影响业务的中断。

随着业务场景的不断深入, ECS+EVS 弹性扩展的方式在面对一些数据量大但计算要求不高的场景,比如车联网、互联网日志、企业核心数仓的长周期历史数据时,依然存在掣肘。

对此, GaussDB(DWS) 团队在 ECS+EVS 的基础上又做了一层对象存储 OBS 的冷数据管理,将车联网、长周期历史数据等放到 OBS 上,在不扩展计算的情况下,通过这种方式实现冷热数据的管理,进而达到计算和存储的平衡。最终集成为 ECS+EVS+OBS 冷热数据管理的方式,DWS 基于本地盘进行性能加速,将 OBS 作为冷数据区,数据存储异构扩展至 OBS,利用分层存储的方式,实现数据按需选择存储和计算引擎、冷热数据迁移动态切换等,进而在不影响数仓体验的前提下,达到成本最优。

“后来我们发现 ECS+EVS+OBS 冷热数据管理的方式依然有覆盖不到的场景,比如说有一些场景它需要在跑批量的时候同时能够跑并发的查询,还希望一份数据实现多样化的分析和存储。因为有一部分热数据在 EVS 上,很多时候没有办法高效地扩展分析,所以后面我们把所有的数据都放在 OBS 上,原来的 EVS 作为数据的缓存,OBS 数据可以供多个集群、数据湖或者是 AI 去分析,再通过原先的 EVS 转换成一个角色,做数据分析加速。可以理解成我们同时支持了三种模式,这三种模式不是相互替代的关系,而是各有其应用的场景和特点。”黄海燕提到。

基于上述三种 Serverless 模式, GaussDB(DWS) 成功为 1700+ 客户提供了不同业务场景下的数据仓库服务。黄海燕表示:“现在云上有很多弹性的场景,比如说互联网,在我们归纳来说我们认为有两大类的弹性场景”。

首先是长周期的弹性场景,主要有几种类型:第一种是在固定的时间点上有一个潮汐波动,比如“双十一”、“618”这类促销节点;第二种是随着企业规模的扩大,用户量、数据量、计算量也会递增;第三种是业务具备明显的长周期时间特征,比如银行在月末、季末、年末有结算的需求,计算量会比平时要大,游戏行业在周末时业务量会比平时更大。

其次是短周期的,即短期内有多样化的诉求。比如银行 00:00-8:00 是批量的运行高峰,8:00-18:00 在批量运行的同时会有一些对报表、经营数据的交互式查询,18:00 后是业务的低峰期,整体呈现一个潮汐波动。

Serverless 的极致弹性扩缩容,很好地满足了长、短周期弹性场景下的业务需求,但是存算分离的架构也可能会带来网络开销变大、数据处理效率变低、性能下降等问题,对此 GaussDB(DWS) 团队也做出了较多的探索。

首先,在 ECS+EVS+OBS 的模式下,数据统一存放在 OBS 上,EVS 充当缓存(磁盘缓存 + 内存缓存)的角色,由于磁盘缓存相对而言成本较低,且大小可控,所以 GaussDB(DWS) 做了一个大比例的磁盘缓存,用户可以根据对性能或者成本的要求调整比例,理论上如果要追求极致性能,可以不断调大磁盘缓存,直到满足业务需求。

其次是计算下推,把查询的逻辑直接下推到 OBS,用户如果要从 OBS 上查数据,直接从源端进行数据过滤,从而减少网络传输对内存的占用,带来性能的提升。

最后是 I/O 管控,GaussDB(DWS)  采用多个 I/O 调度的代理和线程,直接从 OBS 上 Load 数,充分把 OBS 的带宽利用起来,避免负载低时 OBS 用不上,负载高时互相争抢的问题,进而实现性能的最大化。

除了在 Serverless 方向的探索外,GaussDB(DWS) 在湖仓一体与数智融合上同样取得了一些突破。

“湖仓一体 + 数智融合”的未来畅想

对于“湖仓一体”的探索,华为云做的比较早,只不过当时主要是通过外表技术实现数据共享,比如对于 Spark 或 Hive 的表,在数仓里建一张外表和它对应,从而查询 Spark 和 Hive 里的数据。但是这种方式随着数据规模的增加,维护成本也会倍增。

外表技术本质上只能访问数据,并不知道元数据长什么样,如果元数据内容统一的话,对用户来讲就不需要建这个外表。基于这个思路,GaussDB(DWS) 引入了 External schema 的概念,通过创建一个 External schema,然后以 schema.table 的方式去访问 Hive 和 Spark 的元数据,和正常 SQL 一致,还可以和 DWS 的内表做关联分析,从而使得 GaussDB(DWS) 的优化器能力和执行引擎能力更强。

“未来华为云这边,整个 EI 平台会建立一个 Lake Formation 的统一存储管理的组件服务,它会统一管起来所有的数仓和数据湖里面的各种组件的元数据,真正实现元数据意义上的共享,元数据的共享是比数据共享难度更高,或者说是真正有更大价值的东西。”华为云数仓 GaussDB(DWS) 技术专家齐天表示。

此外,为了解决多种数据库插件或引擎的调度问题,GaussDB(DWS) 还提供了一个叫做 External  Connection 的能力,可以直接调用外部的计算引擎,用于计算共享数据或者是它们的自有数据,从而用一个或者一套引擎实现计算的统一。数据共享、元数据共享以及计算统一,是 GaussDB(DWS) 数仓一体的三大技术特征,并由此打破数据孤岛效应,解决企业的 IT 资源分散、数据不通、应用孤立等问题。

在实现多平台的数据拉通之后,面向未来,华为云数仓又提出了“数智融合”的概念。据了解,数智融合本质上是把数据和 AI 这两条原本完全割裂的生产线融合到一起,从而实现 1+1>2 的效能。

当前 GaussDB(DWS) 对数智融合的探索主要在两大场景:一是对于批量数据,GaussDB(DWS) 可以将它们存储在 OBS 上,通过 OBS 实现和 AI 之间的数据共享,从而在不影响数仓体验的前提下,融入 AI 的自动化批量数据处理的能力;二是即席查询场景,GaussDB(DWS) 针对数据访问的插件做了优化,进而让 AI 生产线能够更好、更快速地从中获取数据等。

纵观数据仓库的演进之路,不难看出,从诞生的那一刻起,它就不断在与新技术、新场景相融合,并获得生机,从而持续释放数据的价值,推动产业发展。GaussDB(DWS) 的全面 Serverless 化、湖仓一体和数智融合等特征,是华为云对于新时代数据仓库技术演进方向的重要判断,同样也是数据仓库技术顺应时代、发展迭代的结果。随着 AI 新时代的到来,数智融合之后的数据仓库技术又将会迸发出怎样的力量,值得期待。

文章引用微信公众号"InfoQ",如有侵权,请联系管理员删除!

博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。