从 Hadoop 迁移到数据 Lakehouse 的架构师指南

从 Hadoop 到数据湖仓一体架构的演变代表了数据基础架构的重大飞跃。虽然 Hadoop 曾经以其强大的批处理能力统治着大数据领域,但如今的组织正在寻求更敏捷、更具成本效益和现代化的解决方案。尤其是当他们越来越多地开始实施 AI 计划时。根本没有办法让 Hadoop 为 AI 服务。相反,越来越多的人正在迁移到数据湖仓一体架构,该架构结合了数据湖和数据仓库的优点,并提供处理现代数据工作负载所需的可扩展性、性能和实时功能。

Hadoop 的局限性

Hadoop 是为不同的数据处理时代而设计的。其整体式架构将存储 (HDFS) 和计算 (MapReduce) 紧密耦合,因此无法独立或有效地扩展。高运营开销、对 Hive 等复杂相互依赖的系统进行查询的依赖,以及交互式工作负载的性能缓慢,使得随着数据需求的增长,Hadoop 的吸引力降低。这些限制促使组织重新考虑其数据管理方法,并寻求在提高性能的同时降低复杂性和成本的替代方案。

进入数据湖仓一体

数据湖仓一体通过将数据湖的灵活性与数据仓库的结构和性能相结合,解决了 Hadoop 的缺点。借助湖仓一体架构,您可以在 MinIO Enterprise Object Store 中以开放表格式存储大量原始和结构化数据。此架构支持实时分析和批处理,并具有针对对象存储进行了优化的查询引擎。这种方法可以带来更灵活、经济高效且可扩展的数据基础设施。

迁移策略:分阶段方法

从 Hadoop 迁移到数据湖仓一体需要仔细规划和执行。目标是以最少的中断实现数据平台的现代化。以下是促进顺利过渡的分步指南:

1. 双重摄取策略:从并行操作开始

从双重摄取策略开始,在这种策略中,您可以继续将数据馈送到 Hadoop 环境中,同时将其摄取到高性能对象存储中。这种方法允许在不中断现有操作的情况下测试新的工作流程,还可以作为备份策略来降低迁移阶段的风险。

2. 将数据迁移到 Cloud-Native Object Storage

数据湖仓一体的核心是云原生对象存储,与 HDFS 相比,它提供几乎无限的容量和更低的维护成本。选择专为 AI 构建并针对 MinIO Enterprise Object Storage 等大型数据集进行优化的对象存储非常重要。对于迁移过程,请使用 Apache DistCP 等工具进行数据传输以进行批量迁移,并使用 Rclone等工具进行持续同步或较小的数据集。

3. 升级您的查询引擎

切换到现代查询引擎(如 Trino 或 Dremio)对于提高性能和支持复杂的高并发工作负载至关重要。这些引擎提供亚秒级查询响应,并且可以跨各种数据源联合查询,从而提供整个组织的统一数据视图。增强的查询性能不仅提高了数据可访问性,还实现了跨部门数据使用的民主化。您通常可以在迁移过程的早期更换查询引擎,然后再迁移数据,让最终用户参与进来并接受新流程的培训,然后再关闭 Hadoop 的点击。

4. 重新配置数据处理管道

在 Hadoop 中,数据处理通常使用 MapReduce 作业或 Hive 脚本执行。要使这些工作流现代化,请考虑将管道转换为使用支持批处理和流数据处理的开源工具。例如,Apache Flink 和 Apache Beam 都提供了适用于各种工作负载的通用数据处理框架。

5. 采用开放表格式以实现更好的数据治理

采用 Apache Iceberg、Apache Hudi 和 Delta Lake 等开放表格式是实现 ACID 事务、时间旅行和架构演变等功能的关键一步。这些功能可确保数据完整性并允许无缝数据更新,同时提供对数据访问的精细控制。实施开放式表格式可增强治理并简化整个湖仓一体的数据管理。

释放数据的全部潜力

通过从 Hadoop 迁移到数据湖仓一体,组织可以降低成本、简化运营并实现实时分析。此举支持可扩展的数据存储和高性能查询功能,这对于充分利用现代数据工作负载的潜力至关重要。成功迁移的关键在于分阶段方法,逐步将数据和工作负载过渡到湖仓一体架构,从而最大限度地减少停机时间和中断。通过正确的规划,您的组织可以将其传统数据基础设施转变为强大、面向未来的平台。通过采用分阶段方法并利用现代数据技术来提高业务敏捷性和绩效,开始您的旅程。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++ 类与对象(中) 默认成员函数

我们知道在类中,有成员变量和成员函数,我们可以通过创造不同的成员函数来实现这个类不同的功能,如果我们创造一个类,却不实现它的成员函数会如何呢?这个就涉及到类中的默认成员函数的概念了。但在本文我们主要介绍以下…

【Dash】feffery_antd_components 按钮组件的应用

一、feffery_antd_componenet 中的 AntdFloatButton 和 AntdFloatButtonGroup AntdFloatButton 和 AntdFloatButtonGroup 是两个用于创建悬浮按钮和悬浮按钮组的组件。 AntdFloatButton 是单个悬浮按钮组件,它提供了多种属性来定义按钮的外观及行为。AntdFloatBut…

WebView渲染异常导致闪退解决方案

背景: App主页面使用了大量WebView容器(10个以上)显示图表信息,最新发现bugly上面出现一些关于浏览器Native Crash,如下: 经排查,是WebView渲染失败导致Crash,可以通过webView.loadUrl("chrome://cra…

Pycharm搭配miniConda(Anaconda的轻量版本)建立虚拟环境管理不同项目不同依赖

需求 pip安装的版本会在全局环境下生效,导致不用的项目使用的是同一套环境,容易出现别人的项目跑的好好的,到了自己电脑就不能跑的问题需求 1.不同的项目可以设置不同的环境,同时支持自动切换环境2.便捷,轻量化管理当前的环境 如果可以,最好有一个可视化的平台,anaconda倒是支…

图像分割-DeepLab

DeepLabV3源码链接:https://github.com/bubbliiiing/deeplabv3-plus-pytorch(打不开私信我获取) 一、简介 一般的模型如Unet一般用于医学领域,小目标,如细胞分割。 为了增大感受野(从而更好的获得全局特征…

docker 镜像详解

Docker镜像是一种轻量级、可移植的软件打包格式,它包含了运行应用程序所需的一切,是构建和分发应用程序的基础。以下是对Docker镜像的详细解释: 一、镜像的定义 镜像本质上是一个只读文件,包含了文件系统、源码、库文件、依赖、…

wordcloud 字体报错

wordcloud 字体报错 词云库报错:Only supported for TrueType fonts字体文件问题pillow版本的问题wordcloud版本问题(我的最终解决方案) 词云库报错:Only supported for TrueType fonts 字体文件问题 解决方法 写绝对路径 &…

【CSS3】css开篇基础(4)

1.❤️❤️前言~🥳🎉🎉🎉 Hello, Hello~ 亲爱的朋友们👋👋,这里是E绵绵呀✍️✍️。 如果你喜欢这篇文章,请别吝啬你的点赞❤️❤️和收藏📖📖。如果你对我的…

二百七十一、Kettle——ClickHouse增量导入数据清洗记录表

一、目的 在完成错误数据表任务后,需要对每条错误数据的错误字段及其字段值进行分析 Hive中原有SQL语句和ClickHouse现有SQL语句很大不同 二、Hive中原有代码 2.1 表结构 --31、静态排队数据清洗记录表 create table if not exists hurys_db.dwd_data_clean_…

洞察前沿趋势!2024深圳国际金融科技大赛——西丽湖金融科技大学生挑战赛技术公开课指南

在当前信息技术与“互联网”深度融合的背景下,金融行业的转型升级是热门话题,创新与发展成为金融科技主旋律。随着区块链技术、人工智能技术、5G通信技术、大数据技术等前沿科技的飞速发展,它们与金融领域的深度融合,正引领着新型…

uniapp:sqlite最详细教程,小白可直接粘贴复制

新建uniapp项目,需要4个页面, loading 启动页:打开数据库,判断数据表是否存在,表内是否有数据,创建数据表的逻辑。 register 注册页:数据表已存在,但是没有数据,需要进入该页面注册第一条数据 index 首页:展示数据列表内的数据,可修改默认,添加新数据 edit 编辑:编…

linux面试题复习

前言 现在只是初版,很多格式我还没有改好,会慢慢修改订正。 可能用到的网址:在线 EXCEL 到 MARKDOWN 转换器。 参考了很多网上的面试题和外网上的面试题: 参考文档: 程序员的50大Linux面试问题及答案 Top 60 Linux …

机床发那科转profinet IO项目案例

目录 1 案例说明 1 2 VFBOX网关工作原理 1 3 准备工作 2 4 网关采集发那科机床数据 2 5 用PROFINET IO协议转发数据 5 6 案例总结 7 1 案例说明 设置网关采集发那科机床数据把采集的数据转成profinet IO协议转发给其他系统。 2 VFBOX网关工作原理 VFBOX网关是协议转换网关&a…

【安当产品应用案例100集】024-BYOE及BYOK在IaaS场景中的应用

在云计算环境中,尤其是涉及到敏感数据时,企业用户可能会选择自带加密工具或密钥(即BYOE或BYOK),以确保数据在传输和存储过程中的安全性。这种方式可以防止云服务提供商访问或泄露加密数据,增强数据保护。 …

OpenCV视觉分析之目标跟踪(1)计算密集光流的类DISOpticalFlow的介绍

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 这个类实现了 Dense Inverse Search (DIS) 光流算法。更多关于该算法的细节可以在文献 146中找到。该实现包含了三个预设参数集,以提…

基于Java+Springboot+Vue开发的鲜花商城管理系统

项目简介 该项目是基于JavaSpringbootVue开发的鲜花商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的鲜…

网络服务请求流程简单理解

网络流程: DNS负责将域名解析为IP地址,ALB可以在多个服务实例之间分配流量,APISIX作为API网关处理更细粒度的流量管理,Service在Kubernetes中为Pod提供稳定的访问入口,而Kubernetes则负责整个应用的部署、扩展和运维。…

基于STM32F103的LED闪烁仿真-定时器中断方式

基于STM32F103的LED闪烁仿真 仿真软件: Proteus 8.17 编程软件: Keil 5 定时器简介: 高级控制定时器(TIM1和TIM8)由一个16位的自动装载计数器组成,它由一个可编程的预分频器驱动。 它适合多种用途,包含测量输入信…

FastGPT学习(2)- 本地开发通过Navicat管理MongoDB、PostgreSQL数据库

1. 背景 前期已经完成FastGPT的本地化部署工作,通过Docker启动FastGPT的相关容器即可运行。(共6个容器) 2.本地化开发 2.1 前置依赖 2.2 源码拉取 git clone gitgithub.com:labring/FastGPT.git2.3 数据库管理 本地化运行的FastGPT使用…

007、链表的回文结构

0、题目描述 链表回文结构 1、法1 一个复杂的问题可以拆解成几个简单的问题,找中间节点和逆置链表(翻转链表)之前都做过。 class PalindromeList { public://1、找中间节点ListNode* FindMid(ListNode* A){if (A nullptr || A->next …