数据湖技术之发展现状篇

一. 大数据处理架构:

        大数据处理架构的发展过程具体可以分为三个主要阶段:批处理架构、混合处理架构(Lambda、Kappa架构)、湖仓一体。首先是随着Hadoop生态相关技术的大量应用,批处理架构应运而生,借助离线计算引擎的能力很好的满足了业务对大规模数据分析处理场景的需求。

        随着业务场景越来越多样化,对数据实效性方面有了更高的要求,诞生了一些新的架构模式,比如说Lambda、Kappa等,很好的解决了批处理架构的数据实效性瓶颈问题。但是这些架构本身也带来一些新的问题,比如说Lambda架构会有两条链路,增加业务维护以及资源成本,同时也会导致有口径不一致的风险问题。

        随着数据湖技术生态不断的发展与成熟,越来越多的公司选择了构建湖仓一体的这样一种较新的处理架构模式, 可以很好的解决原有架构的一些问题,同时也带来很多新的能力,比如说库表schema高效变更,支持mysql CDC等等,另外也在处理效率上有较大的提升效果,所以逐步推广应用湖仓一体会很好的帮忙业务们进行强本增效。整体阶段如下图:

二. 数据湖技术发展现状:

整体发展现状如下图所示:

        目前主流应用的数据湖技术主要有三种:Hudi、Iceberg、DeltaLake。国内各大厂应用较多的是Iceberg与Hudi, 两个技术发展的各有千秋,Hudi在CDC场景支持以及小文件压缩管理方面做的比较好一些,但是在与flink集成以及元数据变更能力等方面支持的不够完善, 而Iceberg在元数据变更等方面做的更完善,但是由于机制的不同,Iceberg在小文件压缩处理以及CDC场景支持的不够高效和稳定,所以可以根据业务场景选择应用不同的框架。

        湖仓一体(Lakehouse)作为大数据最前沿的技术,目前正在快速发展当中。如下图所示,根据Gartner在2023年发布技术成熟度曲,Lakehouse技术即将处于热门关注期,后期有较大的发展潜力。

在具体建设与应用过程中,也发现了数据湖技术面临的一些问题,主要有几个方面,如下图所示:

可以看到湖仓一体技术架构还需要逐步地完善与改进,某些方面存在一些问题,如果能更稳定和高效地支持业务去简化链路与提升收益,解决痛点问题,大面积推广新架构落地才会事半功倍。

 

三. 总结:

        虽然目前现状是数据湖仓的技术演进不是非常快,但是湖仓一体、流批一体等概念都已经被炒得火热,且流批一体已成为目前行业内公认数据湖仓最具价值的能力,引入数据湖的公司势必会越来越多。在未来,希望携手大家一起发展数据湖新技术,让数据湖生态更丰富、更完善,让业务可以构建更便捷、更高效、更稳定的数据链路。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/652543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python在无人飞天航母

Python在无人飞天航母研发开发中发挥着重要的作用。无人飞天航母是一种未来战争装备,可以完成各种任务,包括反潜、侦查、打击、支援等。Python作为一种高级编程语言,具有以下重要性: 快速原型开发:Python具有简洁的语法…

中国新能源汽车持续跑出发展“加速度”,比亚迪迎来向上突破

2023年已经过去,对于汽车圈而言,2023年是中国车市的分水岭,在这一年,中国汽车工业70年以来首次进入全球序列,自主品牌强势霸榜,销量首次超过合资车。要知道,这是自大众于1984年进入中国市场成立…

sql server 2008 安装问题

1、sql server 2008 安装程序支持文件后安装界面就消失: 打开cmd以管理员身份运行 复制或者手动输入以下命令:secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose运行完成后,重新安装 卸载需删除注册表这几个…

【面试】测试开发面试题

帝王之气,定是你和万里江山,我都护得周全 文章目录 前言1. 网络原理get与post的区别TCP/IP各层是如何传输数据的IP头部包含哪些内容TCP头部为什么有浮动网络层协议1. 路由协议2. 路由信息3. OSPF与RIP的区别Cookie与Session,Token的区别http与…

计算方法实验1:熟悉MATLAB 环境

一、问题描述 熟悉MATLAB 环境。 二、实验目的 了解Matlab 的主要功能,熟悉Matlab 命令窗口及文件管理,Matlab 帮助系统。掌握命令行的输入及编辑,用户目录及搜索路径的配置。了解Matlab 数据的特点,熟悉Matlab 变量的命名规则&a…

Android 基础技术——m3u8格式与mp4格式的区别

笔者希望做一个系列,整理 Android 基础技术,本章是关于 m3u8格式与mp4格式的区别 m3u8是苹果公司推出的视频播放标准,是m3u的一种,只是编码格式采用的是UTF-8。 m3u8准确来说是一种索引文件,使用m3u8文件实际上是通过它…

什么是Java中的NIO?NIO与IO有什么区别?

什么是Java中的NIO?NIO与IO有什么区别? Java NIO,全称New IO,是Java 1.4版本中引入的一种新的IO处理方式。NIO与IO虽然有相同的作用和目的,但实现方式却大不相同。在传统的IO中,数据读取和写入是以字节流或…

MAVEN(1)

分模块开发与设计 分模块开发意义 将原始模块按照功能拆分成若干个子模块,方便模块间相互调用,接口共享 步骤示例 这里以之前开发的SpringMVC_ssm中的domain模块为例 第一步、创建Maven模块 父项改为none,文件存储位置需要做出相应调整 …

Android App开发-简单控件(3)——常用布局

3.3 常用布局 本节介绍常见的几种布局用法,包括在某个方向上顺序排列的线性布局,参照其他视图的位置相对排列的相对布局,像表格那样分行分列显示的网格布局,CommonLayouts以及支持通过滑动操作拉出更多内容的滚动视图。 3.3.1 线…

flink源码分析 - 简单解析命令行参数

flink版本: flink-1.11.2 提取主类代码位置: org.apache.flink.api.java.utils.MultipleParameterTool#fromArgs 代码逻辑比较简单,此处不再赘述,在此记录方便后续使用 完整代码: /** Licensed to the Apache Software Foundation (ASF) under one* o…

浅聊 DNS 和 host

我们先来了解一下访问一个网站的基本流程 我们访问一个网站,自然就是访问网站的服务器,但是访问一个网站的服务器,自然要知道它的地址,服务器的地址就是一串数字,如 也就是我们说的 ip 地址,输入 i…

Redis的数据类型

目录 string 1.编码方式 2.应用场景 3.常用命令 hash 1.编码方式 2.应用场景 3.常用命令 list 1.编码方式 2.应用场景 3.常用命令 set 1.编码方式 2.应用场景 3.常用命令 zset 1.编码方式 2.应用场景 3.常用命令 如何理解Redis的编码方式 embs…

MySQL设计开发使用规范

数据库设计 库名 【强制】库的名称格式: 业务系统名称、业务系统名称子系统名。如: aimall , aimall_op【强制】创建数据库时必须显式指定字符集,并且字符集只能是是utf8或者utf8mb4【建议】库的名称必须控制在20个字符以内【强制】单实例表个数必须控制在2000个以内【强制】…

以太网交换基础VLAN原理与配置

目录 7.以太网交换基础 7.1.以太网协议 7.2.以太网帧介绍 7.3.以太网交换机 7.4.同网段数据通信全过程 8.VLAN原理与配置 8.1.VLAN的基本概念 8.2.VLAN的应用 7.以太网交换基础 7.1.以太网协议 以太网是当今现有局域网(Local Area Network,LAN)采用的最通用的通信协议…

Linux进程间通信方法和代码示例

Linux进程间通信(IPC, Inter-Process Communication)包括了多种不同的技术,例如管道(pipe)、信号(signal)、共享内存(shared memory)、消息队列(message queu…

SpringBoot自定义全局异常处理器

文章目录 一、介绍二、实现1. 定义全局异常处理器2. 自定义异常类 三、使用四、疑问 一、介绍 Springboot框架提供两个注解帮助我们十分方便实现全局异常处理器以及自定义异常。 ControllerAdvice 或 RestControllerAdvice(推荐)ExceptionHandler 二、…

Python第 1 课 Python 介绍与安装

文章目录 第 1 课 Python 介绍与安装1.Python介绍1.1 面向对象概述1.2 Python 概述1.3 Python 特点 2.查看Python3.pyCharm 安装方法3.1 下载 pyCharm3.2 打开 pyCharm3.3 汉化 pyCharm3.4 pyCharm 的基本介绍和基本使用方法 第 1 课 Python 介绍与安装 1.Python介绍 1.1 面向…

Python爬虫库推荐

很多人学Python,都是从爬虫开始的,毕竟网上类似的资源很丰富,开源项目也非常多。 Python学习网络爬虫主要分3个大的版块: 抓取 , 分析 , 存储 当我们在浏览器中输入一个url后回车,后台会发生什…

消息中间件之八股面试回答篇:三、RabbitMQ如何解决消息堆积问题(100万条消息堆积)+RabbitMQ高可用性和强一致性机制+回答模板

RabbitMQ中的消息堆积问题 当生产者发送消息的速度超过了消费者处理消息的速度,就会导致队列中的消息堆积,直到队列存储消息达到上限。之后发送的消息就会成为死信,可能会被丢弃,这就是消息堆积问题。 解决消息堆积有三种种思路…

网络工程师必学知识:2、数据链路层-II型以太帧的封装

1.概述: 针对于链路层,华为官网IP报文格式大全里面包含了很多。如下图: 今天主要分析Ethernet II以太帧。 2.Frame Format: 12Byte(inter frame gap)|7B(同步码)|1B(定界符)|6B(DMAC)|6B(SMAC)|2B(Type)…