在本文中,我们将从概念上了解什么是Azure Lake数据库,以及这个解决方案的不同组成部分,然后在接下来的文章中介绍其实际实施情况。
简介
在计算机时代开始的数据旅程中,数据存储和处理有处理能力和存储容量的限制。这些空间的创新为存储越来越多的数据铺平了道路,处理速度越来越快,存储容量也越来越大。规模的增加催生了不同的数据结构建模方式,以适应托管、处理和消费的性质。它从简单的数据结构开始,然后是流行的数据模型或套件,如关系和交易数据库(OLTP)、数据仓库、主数据管理系统、分析数据库(OLTP)、数据集市、运营数据存储、无SQL数据库、数据湖和数据湖屋。这个领域的最新成员是基于云数据湖的数据库。这种数据库的Azure版本被称为Azure湖数据库。
什么是Azure同步湖数据库?
大量的交易催生了数据库管理系统,通常是关系型数据库。当这种数据库的生态体系壮大时,就需要将这些OLTP数据库的数据进行关联。这就为数据仓库模式铺平了道路,在这种模式下,来自业务的每个角落的数据都以一种非规范化的方式被收集。数据在交易型数据库系统中缺乏一致性。这为主数据管理系统在数据仓库中带来标准化的数据铺平了道路。数据仓库有太多的数据,消费者无法按原样消费。这些数据量太大,无法处理高级用户的临时数据分析请求。这就催生了分析性数据存储(OLAP),它预先对数据仓库的数据进行汇总,并允许高级用户将这些数据用于其仪表盘和管理信息系统(MIS)。这就是数据管理的传统历程。
随着数据存储的创新和处理互联网规模数据的需要,像Hadoop这样的框架应运而生,并为数据湖的范式让路。随着云计算的出现,计算和存储隔离的概念被强调,以带来数据架构的稳健性和解耦性。数据湖鼓励以原样格式倾倒数据的概念,并根据需要在所需的数据集上使用计算能力,这与数据库中数据和计算紧密结合的情况不同。这有利于将所有类型的数据库的关系型和无SQL数据库带到一个共同的地方,逻辑上称为数据湖。数据湖成为一个容易囤积数据或倾倒数据的地方。数据仓库已经存在了几十年,而当数据湖被用来从各种数据库中以文件的形式倾倒原始数据时,需要一个解决方案,允许数据仓库和数据湖共存,以利用两个世界的最佳状态。数据仓库允许轻松和管理数据的相关性,而数据湖带来了计算和存储之间的脱钩。这个概念在去年开始以数据湖之家的形式出现。Apache Hudi和Databricks Delta Lake是两种最流行的格式,许多分析性数据库利用它们定位了湖心岛的功能。Azure似乎已经以更直观的方式推出了类似的能力。Azure的数据仓库产品是Azure Synapse Analytics,它支持三种不同类型的计算层,分别是无服务器池、专用SQL池和Apache spark池。在我看来,湖泊数据库是Azure Synapse Analytics中的一项新功能,可以支持在Azure平台上使用Azure Data Lake作为底层存储层,Azure Synapse Analytics作为计算机层,构建一个湖泊房屋。
Azure Synapse Analytics中Azure湖泊数据库的组成部分
下面显示的是Azure湖泊数据库概念性视图的官方图示。构成这个以Azure湖泊数据库为中心的整体解决方案的核心组件是Azure Synapse计算池、用于可视化创建数据湖泊表的数据库模板库、作为底层存储机制的Azure数据湖存储、Azure数据管道(通常使用Azure数据工厂框架创建),以从各种支持的数据源将数据摄入Azure Synapse湖泊数据库中。

让我们逐一了解构成Azure Synapse Analytics上的数据湖馆的这些组件。
Azure数据湖存储- 俗称ADLS,这项服务支持以blob存储的形式存储数据,可以分层组织。它支持许多数据管理功能,如跨可用区复制以实现高可用性和灾难恢复、数据生命周期管理、数据版本、数据共享、数据安全和其他各种功能。这项服务构成了数据湖的基础,它可以被用作各种数据处理和数据消费服务的存储层。下面是ADLS仪表板的截图。

Azure Synapse Analytics- Synapse是Azure在Azure云上提供的数据仓库。使用Azure Synapse分析服务,可以创建不同的计算层,使用不同类型的存储。Synapse无服务器池使用Azure数据湖存储,而专用SQL池和Apache Spark池则使用它们各自的存储层,并在不同的定价层支持不同级别和类型的数据处理。Synapse构成了数据湖之家的计算层,它是数据湖和数据仓库的融合,Synapse带来了与仓库相关的能力。Azure Synapse分析仪表板的快照如下所示。

Azure Synapse湖泊数据库--这是Azure Synapse服务在预览模式下推出的新数据结构(截止到本文的草稿)。这种结构在Azure Synapse无服务器SQL池和Spark池上得到支持。这是在Azure Synapse上创建数据湖之家的关键组件,替代方案是delta湖那种数据结构。湖泊数据库更直观,有一个元数据元素与之相连,其下有一个可视化设计器为元数据表建模。这种结构可以从Azure Synapse分析工作室激活,如下图所示。

数据管道和数据流--在Azure Synapse Analytics上使用Azure Data Factory框架(这是Azure的ETL产品),可以创建数据管道和数据流,可以使用Lake Database作为元数据容器或框架,可以将数据摄入其中。数据消费者也可以使用同样的方法来消费数据,就像人们从任何其他正常的数据库或关系数据库的表中消费数据一样。Azure Synapse Analytics的数据管道和数据流的截图如下。

湖泊数据库是一种定义数据结构的新方式,这些数据将被托管在数据湖(ADLS)上,并由数据仓库(Synapse)进行数据处理,以最终满足所需用例的数据湖屋解决方案。在接下来的文章中,我们将学习如何使用湖泊数据库的不同组件,并探索它所支持的功能。
总结
在这篇文章中,我们按照时间顺序了解了数据库管理系统的历史,它导致了现代数据湖之家的范式。然后,我们从概念上分析了Azure Synapse湖泊数据库的不同组件,再从高层次上探索了湖泊数据库架构图中每个组件的功能。