写点什么

构建切实有效的湖仓一体架构

  • 2021-03-07
  • 本文字数:2281 字

    阅读完需:约 7 分钟

构建切实有效的湖仓一体架构

数据仓库曾一直做为决策支持系统的支撑平台。数据仓库使用良好设计的模式规范数据,例如星形模型、雪花模型和正常范式等。

 

时至二十一世纪的头十年,在三个方面上发生了翻天覆地的变化:

  1. 数据的定义发生了改变。数据的类型更加多样化,可归为非结构化和半结构化数据。

  2. 云计算不断推陈出新。云技术的创新正产生经济影响,数据存储的成本得以降低。

  3. 处理能力得到了提升。付出以往的部分代价,就能处理更多的数据。

在所有进展中,称为“黄色小象”的 Hadoop 一定值得一提。Hadoop 是一种分布式计算框架,支持对非结构化数据的存储和处理。

 

Hadoop 生态系统迅速演进,进而出现了称为“数据湖”的非结构化数据存储和处理新范式。

 

事情总是两面的,数据仓库和数据湖的共存提出了一些挑战。数据仓库无法生成数据所需的洞察。另一方面,数据湖由于缺乏结构和治理,会迅速沦为“数据沼泽”。两种技术渐行渐远。

 

进入本世纪第二个十年,专家们提出了一种两全其美融合的新架构模式,称为“湖仓一体”(Data Lakehouse)架构模式。

 

下面介绍湖仓一体的各组件。

湖仓一体的定义



上图列出了数据湖和数据仓库各自的优缺点。

 

湖仓一体架构力图结合数据仓库的弹性和数据湖的灵活性。人们创建数据仓库来支持商业智能,主要用例包括编制报表、发布下游数据集市(Data Marts),以及支持自助式商业智能等。数据湖的概念来自于数据科学对数据的探索,主要用例包括通过快速实验创建和检验假设,以及利用半结构化和非结构化数据等。

 

如何结合数据仓库和数据湖的优点,同时最大程度地减少每种模式自身的弊端?由此提出了湖仓一体范式。



湖仓一体具有以下五个关键特性:

 

  1. 支持分析结构化和非结构化数据;

  2. 适用于分析师和数据科学家,不仅支持报表,而且支持机器学习和人工智能相关用例;

  3. 数据可治理,避免产生沼泽;

  4. 架构鲁棒安全,确保利益相关者能正确访问以数据为中心的安全架构;

  5. 以合理代价实现有效扩展。

湖仓一体的概念架构

为介绍湖仓一体范式,下面给出其概念架构。



上图给出的概念架构中,各核心组件通过有效的组织,形成了全新的湖仓一体范式。

 

  • 支持结构化和非结构化数据。无论是类关系数据库那样静态存储,还是以实时数据流方式提供,数据均可转化为洞察。

  • 数据抽取(Data ingestion)服务提供多种抽取方式,将数据抽取到数据湖中,既可以满足批处理需求,也可以满足流式加载需求。一条经验法则是,数据抽取中不做任何数据转换。

  • 抽取的数据存储在数据湖的原始数据区域,该区域也称为“青铜层”(bronze layer)。数据依照源数据结构进行管理,实现源数据和下游分析的解耦。

  • 数据处理(data processing)服务处理原始数据区域中的数据,执行清洗、归并、复杂业务逻辑等操作,并进一步准备好适用于人工智能、商业智能等下游分析的数据格式。

  • 数据同时周期性地临时存放在已清洗数据区域,该区域也称为“白银层”(silver layer)。已清洗数据区域避免对数据重复做多次处理。处理完成的数据最终存储在已处理数据区域,该区域也称为“黄金层”(gold layer)。

  • 至此,数据都存储在数据湖中,可用于即席分析、机器学习和报表等多种用例。但数据湖不利于结构化报表或自助式商业智能,而数据仓库在此类需求上表现出色。这需要数据存储同时提供数据仓库能力。

  • 数据编目(Data cataloging)服务确保所有源数据、数据湖和数据仓库中的数据、数据处理流水线管道以及从湖仓一体中抽取的输出都做了适当的编目,防止湖仓一体变成数据沼泽。例如,对 Facebook 这样规模的数据做编目,可从中获取湖仓一体的所有数据内容、数据间的关联关系,以及数据转换的世系信息。

  • 数据分析(Analytics)服务提供多种数据用途。数据科学家可创建分析沙箱,运行实验和假设测试。数据分析人员可创建沙箱,触发快速查询并对数据执行即席分析。人工智能和机器学习人员可运行和维护模型。商业智能为用户提供了具有丰富可视化效果的自助式商业智能。

五个架构原则

建立真实有效湖仓一体架构,应遵循如下五个关键原则:

  1. 计算和存储的解耦:首要原则是加入解耦和存储。存储便宜且持久,计算昂贵且短暂。计算和存储的解耦,可使系统灵活地按需升级并扩展计算服务。

  2. 目标驱动的存储层:数据以多种形态和形式呈现,因此数据的存储方式应具灵活性,以适应数据的不同形态和用途。灵活性包括根据数据的种类及提供方式不同,提供关系层、图数据层、文档层以及 Blob 等多模态存储层。

  3. 模块化的体系架构:该原则源自于 SOA,确保数据处于核心地位,以围绕数据开展所需服务为关键。基于数据开展数据抽取、处理、编目和分析等不同类型的服务,而不是借助流水线将数据提供给服务。

  4. 聚焦于功能,而非技术:该原则体现了灵活性。功能的变化缓慢,但技术的变革日新月异。因此一定要聚焦于组件所完成的功能,进而可轻易追随技术的发展而替换旧技术。

  5. 活动编目(Active cataloging):该项基本原则是避免数据湖沦为数据沼泽的关键。编目上需具有明确的治理原则,有助于确保数据充分记录到数据湖中。编目内容可遵循如下经验法则:

  • 对所有需抽取到数据湖中的数据做编目;

  • 对所有存储在数据湖和服务层的数据做编目;

  • 对源数据转化到服务层的数据世系做编目。

总结

数据是复杂的,并且在不断地发展。业务也在迅速地变化,需求同样再不断地变化,架构必须具备能适应所有变化的灵活性,上述五个架构原则有助于建立切实有效的湖仓一体架构。谨记:

 

内核规范,边缘灵活。

扩展阅读:

作者简介

Pradeep Menon,微软数据和人工智能分析师。

 

原文链接: Making Data Lakehouse real yet effective

2021-03-07 15:525322

评论

发布
暂无评论
发现更多内容

有趣的 Go HttpClient 超时机制

捉虫大师

Go HTTP 11月月更

Pytorch实现经典模型AlexNet模型

Studying_swz

深度学习 11月月更

更快更稳更易用: Flink 自适应批处理能力演进

Apache Flink

大数据 flink

一个程序员眼中的裁员潮

HoneyMoose

Baklib|信息管理和知识管理是如何影响你的业务的?

Baklib

知识管理

IM开源项目OpenIM部署文档-从准备工作到nginx配置

Geek_1ef48b

JS in CSS:一键支持响应式布局

iofod jude

前端 后端 低代码 iofod

Go易错集锦、优秀开源包、实战案例合集

Go学堂

Go 内容合集 签约计划第二季 技术专题合集

数据分析er看过来,五款工具有你需要的

葡萄城技术团队

数据分析 前端 数据可视化

教学:制作 GitHub 同步近期博客卡片

小鑫同学

前端 Github' 11月月更

网络安全之命令执行漏洞复现

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

当前API安全产品现状

阿泽🧸

API 11月月更

官宣|Apache Flink 1.16 发布公告

Apache Flink

web前端面试技巧-如何自我介绍?如何应对hr?

肥晨

前端面试 面试技巧 11月月更

【愚公系列】2022年11月 微信小程序-app.json配置属性之requiredBackgroundModes

愚公搬代码

11月月更

2022-11-15:这里有 n 个航班,它们分别从 1 到 n 进行编号。 有一份航班预订表 bookings , 表中第 i 条预订记录 bookings[i] = [firsti, lasti,

福大大架构师每日一题

算法 rust 福大大

算法题学习---两个链表的第一个公共结点

桑榆

算法题 11月月更

IM即时通讯私有化部署,WorkPlus助力企业构建安全办公环境

BeeWorks

基于Jmeter的百万级tps性能测试实践

环信

Jmeter 性能测试

如何在SpringBoot项目中,实现记录用户登录的IP地址及归属地信息?

wljslmz

日志 IP springboot 登录 11月月更

OpenSergo 流量路由:从场景到标准化的探索

阿里巴巴云原生

阿里云 微服务 云原生

Baklib|我的企业是不是需要一个维基页面呢?

Baklib

维基

Baklib|SaaS产品,实现企业流程数字化

Baklib

SaaS

漫画|微信群聊的程序员们

肥晨

程序员生活 11月月更 程序员漫画

数据指标体系搭建步骤

穿过生命散发芬芳

11月月更 数据指标体系

【LeetCode】数组元素积的符号Java题解

Albert

算法 LeetCode 11月月更

简单组合逻辑电路

芯动大师

Verilog LED数码管 11月月更

Docker Compose快速部署多容器服务实战

闫同学

Docker 容器 11月月更

分布式系统设计之常见的负载均衡算法

闫同学

负载均衡 11月月更 分布式系统设计

裁员潮血洗硅谷是坏事还是好事

HoneyMoose

组织赋能,统一企业门户实现高效化、移动化协作

BeeWorks

构建切实有效的湖仓一体架构_架构_Pradeep Menon_InfoQ精选文章