构建现代数据湖

现代数据湖是一半数据仓库和一半数据湖,对所有事情都使用对象存储。使用对象存储来构建数据仓库是通过 Open Table Formats OTF) 实现的,例如 Apache Iceberg、Apache Hudi 和 Delta Lake,这些规范一旦实现,就可以无缝地将对象存储用作数据仓库的底层存储解决方案。这些规范还提供了传统数据仓库中可能不存在的功能,例如快照(也称为时间旅行)、架构演变、分区、分区演变和零拷贝分支。

在组织构建现代数据湖时,我们认为他们应该考虑以下一些关键因素:

1 . 计算和存储的分解

2 . 从整体框架迁移到同类最佳框架

3 . 数据中心整合 - 用单一的企业解决方案取代部门解决方案

4 . 跨小型和大型文件/对象的无缝性能

5 . 水平扩展的软件定义的云原生解决方案

本文探讨了Hadoop HDFS的兴衰,以及为什么高性能对象存储是大数据世界的自然继承者。

采用Hadoop

随着互联网应用的扩展,先进科技公司面临的第一个重大数据存储和聚合挑战始于 15 年前。传统的RDBMS(关系数据库管理系统)无法扩展以处理大量数据。然后是Hadoop,一个高度可扩展的模型。在Hadoop模型中,大量数据被分成集群中的多台廉价机器,然后并行处理。这些机器或节点的数量可以根据企业的要求增加或减少。

Hadoop是开源的,使用具有成本效益的商用硬件,这提供了一种具有成本效益的模型,这与传统的关系数据库不同,传统的关系数据库需要昂贵的硬件和高端处理器来处理大数据。由于在RDBMS模型中扩展的成本非常高,因此企业开始删除原始数据。这导致许多载体的结果欠佳。

在这方面,Hadoop比RDBMS方法具有显著优势。从成本的角度来看,它更具可扩展性,而不会牺牲性能。

Hadoop 的终结

变化数据捕获 (CDC) 和流数据等新技术的出现,主要来自 Twitter 和 Facebook 等社交媒体公司,改变了数据的摄取和存储方式。这引发了处理和使用这些更大量数据的挑战。

一个关键的挑战是批处理。批处理在后台运行,不与用户交互。当涉及到非常大的文件时,Hadoop在批处理方面是有效的,但从效率和延迟的角度来看,较小的文件却受到了影响,这实际上使它过时了,因为企业寻求处理和消费框架,这些框架可以批量、CDC和实时摄取各种大大小小的数据集。

如今,将计算和存储分开已经很有意义了。存储需要超过计算速度的十比一。这在Hadoop世界中效率非常低,因为每个存储节点都需要一个计算节点。 将它们分开意味着它们可以单独调整。计算节点是无状态的,可以使用更多的 CPU 内核和内存进行优化。存储节点是有状态的,可以通过更多更密集的驱动器和更高的带宽进行 I/O 优化。

通过分解,企业可以实现卓越的经济性、更好的可管理性、更高的可扩展性和更高的总拥有成本。

HDFS 无法进行此转换。当你离开数据本地时,Hadoop HDFS的优势就变成了它的弱点。Hadoop是为MapReduce计算而设计的,其中数据和计算必须位于同一位置。因此,Hadoop 需要自己的作业调度程序、资源管理器、存储和计算。这从根本上与基于容器的体系结构不兼容,在容器体系结构中,一切都是弹性的、轻量级的和多租户的。相比之下,MinIO 是云原生的,专为通过 Kubernetes 进行容器和编排而设计,使其成为停用传统 HDFS 实例时过渡到的理想技术。这催生了现代数据湖。它利用了从Hadoop继承的商用硬件方法,但分解了存储和计算,从而改变了数据的处理、分析和使用方式。

使用 MinIO 构建现代数据湖

MinIO 是一个高性能对象存储系统,它是从头开始构建的,具有可扩展性和云原生性。构建 MinIO 的团队还构建了最成功的文件系统之一 GlusterFS,然后发展了他们的存储思维。他们对文件系统的深刻理解以及哪些流程成本高昂或效率低下,为 MinIO 的架构提供了信息,从而在流程中提供了性能和简单性。Minio 使用纠删码,并提供一套更好的算法来管理存储效率并提供弹性。通常,它是 1.5 倍的复制,而 Hadoop 集群中的复制是 3 倍。与Hadoop相比,仅此一项就已经提供了存储效率并降低了成本。

从一开始,MinIO 就是为云运营模式而设计的。因此,它可以在每个云上运行,包括公有云、私有云、本地云、裸机云和边缘云。这使其成为多云和混合云部署的理想选择。通过混合配置,MinIO 可以按照 Martin Fowler 推广的 Strangler Fig Pattern 等方法迁移数据分析和数据科学工作负载。以下是 MinIO 成为现代数据湖的基本构建块的其他几个原因,该数据湖能够支持您的 IA 数据基础架构以及其他分析工作负载,例如商业智能、数据分析和数据科学。

现代数据就绪

Hadoop 是专门为“非结构化数据”是指大型(GiB 到 TiB 大小)日志文件的数据而构建的。当用作真正的非结构化数据发挥作用的通用存储平台时,小对象(KB 到 MB)的盛行极大地损害了 Hadoop HDFS,因为名称节点从未设计为以这种方式扩展。MinIO 在任何文件/对象大小(8KiB 到 5TiB)上都表现出色。

开源

采用Hadoop的企业是出于对开源技术的偏好。检查能力、不受锁定的自由以及来自数以万计的用户的舒适性具有真正的价值。MinIO 也是 100% 开源的,确保组织在升级体验的同时能够忠于自己的目标。

简单

简单是很难的。这需要工作、纪律,最重要的是承诺。MinIO 的简单性堪称传奇,是使我们的软件易于部署、使用、升级和扩展的哲学承诺的结果。即使是Hadoop的粉丝也会告诉你它很复杂。要事半功倍,您需要迁移到 MinIO。

性能

Hadoop因其提供大数据性能的能力而声名鹊起。在十年的大部分时间里,它们都是企业级分析的基准。现在不是了。MinIO已经在多个基准测试中证明,它比Hadoop快得多。这意味着现代 Datalake 的性能会更好。

MinIO 的服务器二进制文件全部为 <100MB。尽管它很大,但它足够强大,可以运行数据中心,但仍然足够小,可以在边缘舒适地生活。在Hadoop世界中没有这样的选择。这对企业来说意味着您的 S3 应用程序可以随时随地使用相同的 API 访问数据。通过将 MinIO 部署到边缘位置,您可以在边缘捕获和筛选数据,并使用 MinIO 的复制功能将其运送到现代数据湖进行聚合和进一步分析。

弹性

MinIO 使用每个对象的内联纠删码来保护数据,这比 HDFS 替代方案效率高得多,后者在复制后出现且从未被采用。此外,MinIO 的 bitrot 检测确保它永远不会读取损坏的数据——即时捕获和修复损坏的对象。MinIO 还支持跨区域、主动-主动复制。最后,MinIO 支持一个完整的对象锁定框架,提供法律保留和保留(具有治理和合规模式)。

软件定义

Hadoop HDFS的继任者不是硬件设备;它是在商用硬件上运行的软件。这就是 MinIO 的本质——软件。与Hadoop HDFS一样,MinIO旨在充分利用商用服务器。凭借利用 NVMe 驱动器和 100 GbE 网络的能力,MinIO 可以缩小数据中心,从而提高运营效率和可管理性。

安全

MinIO 支持多种复杂的服务器端加密方案,以保护数据(无论数据位于何处)动态或静态数据。MinIO 的方法确保了机密性、完整性和真实性,性能开销可以忽略不计。使用 AES-256-GCM、ChaCha20-Poly1305 和 AES-CBC 支持服务器端和客户端加密,确保应用程序兼容性。此外,MinIO 还支持行业领先的密钥管理系统 (KMS)。

从 Hadoop 迁移到 MinIO

MinIO 团队拥有从 HDFS 迁移到 MinIO 的专业知识。购买企业许可证的客户可以从我们的工程师那里获得帮助。要了解有关使用 MinIO 替换 HDFS 的更多信息,请查看此资源集。

结论

在这一点上,每个企业都是数据企业。该数据的存储和后续分析需要是无缝的、可扩展的、安全的和高性能的。Hadoop生态系统催生的分析工具,如Spark,在与基于对象存储的数据湖配对时,会更加有效和高效。像 Flink 这样的技术提高了整体性能,因为它为流式处理和批处理提供了单次运行时,这在 HDFS 模型中效果不佳。像 Apache Arrow 这样的框架正在重新定义数据的存储和处理方式,而 Iceberg 和 Hudi 正在重新定义表格式如何允许高效查询数据。这些技术都需要一个基于对象存储的现代数据湖,其中计算和存储是分解的,并针对工作负载进行优化。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【proteus经典项目实战】51单片机用计数器中断实现100以内的按键计数并播放音乐

一、简介 一个基于8051微控制器的计数器系统&#xff0c;该系统能够通过按键输入递增计数&#xff0c;并且能够在达到100时归零。该系统将使用计数器中断和外部中断来实现其功能。 51单片机因其简单易用和成本效益高&#xff0c;成为电子爱好者和学生的首选平台。通过编程单片…

大数据学习之Flink基础

Flink基础 1、系统时间与时间时间 系统时间&#xff08;处理时间&#xff09; 在Sparksreaming的任务计算时&#xff0c;使用的是系统时间。 假设所用窗口为滚动窗口&#xff0c;大小为5分钟。那么每五分钟&#xff0c;都会对接收的数据进行提交任务. 但是&#xff0c;这里有…

项目都做完了,领导要求国际化????--JAVA后端篇

springboot项目国际化相信各位小伙伴都会&#xff0c;很简单&#xff0c;但是怎么项目都做完了&#xff0c;领导却要求国际化文件就很头疼了 国际化的SpringBoot代码&#xff1a; 第一步&#xff1a;创建工具类 /*** 获取i18n资源文件** author bims*/ public class Message…

循环队列的实现【C语言】

用数组实现循环队列 题目&#xff1a;622. 设计循环队列 - 力扣&#xff08;LeetCode&#xff09; 分析 循环队列&#xff0c;队列满则不能再插入数据&#xff0c;队列为空则不能再出数据。 多开一个空间方便区分队列为空和队列为满的情况。 如果要存K个数据只开K个空间&a…

IEC104转BACnet网关:实现电力监控与楼宇自动化的无缝对接

在电力监控和楼宇自控领域&#xff0c;IEC104和BACnet作为两种重要的通信协议扮演着重要的角色。随着不同系统之间的数据交换与集成需求的不断增长&#xff0c;深圳市钡铼技术有限公司推出IEC104转BACnet网关来实现这两种协议之间的无缝转换&#xff0c;助力电力监控和楼宇自控…

leetcode日记(47)螺旋矩阵Ⅱ

这题思路不难&#xff0c;就是找规律太难了。 我首先的思路是一行一行来&#xff0c;根据规律填入下一行的数组&#xff0c;第i行是由前i个数字&#xff08;n-2*i&#xff09;个增序数列后i个数字组成&#xff0c;后来觉得太难找规律了就换了一种思路。 思路大致是先计算出需…

C#、Net6、WebApi报表方案

目录 1 Pdf表单方案 1.1出现如下错误提示: 1.2 字体路径使用 2 Docx报表模板方案 2.1 pdf方案缺陷 2.2 解决方案 3 Spire.Doc报表方案 3.1 Docx方案缺陷 3.2 解决方案 4 插入复选框 5 WebApi文件流下载接口 6 软件获取方式 1 Pdf表单方案 使用【Adobe Acrobat P…

MongoDB教程(二十三):关于MongoDB自增机制

&#x1f49d;&#x1f49d;&#x1f49d;首先&#xff0c;欢迎各位来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里不仅可以有所收获&#xff0c;同时也能感受到一份轻松欢乐的氛围&#xff0c;祝你生活愉快&#xff01; 文章目录 引言一、MongoD…

raise JSONDecodeError(“Expecting value”, s, err.value) from None

raise JSONDecodeError(“Expecting value”, s, err.value) from None 目录 raise JSONDecodeError(“Expecting value”, s, err.value) from None 【常见模块错误】 【解决方案】 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#xff0c;我是…

ISO 50001能源管理体系:企业可持续发展的新引擎

在全球范围内&#xff0c;能源管理正成为企业战略规划的重要组成部分。ISO 50001能源管理体系&#xff08;EnMS&#xff09;作为一项国际标准&#xff0c;为企业提供了一套系统的方法&#xff0c;帮助其提高能源绩效&#xff0c;降低能源消耗&#xff0c;减少碳排放。通过有效实…

Feign-微服务通信(Feign远程调⽤ Feign简介 基本使⽤ ⾃定义配置 Feign使⽤优化)

目录 一、Feign远程调⽤ 二、Feign简介 三、基本使⽤ 1. 加⼊Fegin的依赖 2. 在主类上添加Fegin的注解 3. 创建⼀个service&#xff0c; 并使⽤Fegin实现微服务调⽤ 4. 修改controller代码&#xff0c;并启动验证 5. 重启order微服务,查看效果 四、⾃定义配置…

oncoPredict:根据细胞系筛选数据预测体内或癌症患者药物反应和生物标志物

在14年的时候&#xff0c;oncoPredict函数的开发团队在Genome Biology上发了一篇文章。 这篇文章的核心目的是阐释了使用治疗前基线肿瘤基因表达数据去预测患者化疗反应。开发团队发现使用细胞系去预测临床样本的药物反应是可行的。 鉴于之前的理论&#xff0c;该研究团队首先…

C语言开关迷宫

目录 注意事项开头程序程序的流程图程序的效果结尾 注意事项 程序里有关字符’\033’的输出都关于Sunshine-Linux的其中一篇博客——《printf函数高级用法设置打印字体颜色和背景色等》 开头 大家好&#xff0c;我叫这是我58。今天&#xff0c;我们来看一下我用C语言编译的开…

昇思25天学习打卡营第23天|munger85

FCN图像语义分割 FCN-8s表示从8倍下采样的特征图通过上采样恢复到原图尺寸的网络结构。现在下载数据集&#xff0c;这种8倍的比较好。 from download import download url “https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/notebook/datasets/dataset_fcn8s.t…

2024年用户口碑超佳的硬U盘数据恢复工具榜

U盘一个体积小小却能携带大量文件、视频的日常存储好物&#xff0c;你肯定也有吧。不知道你有没有遇到过U盘里数据丢失的情况&#xff0c;这时候U盘数据恢复工具就能帮我们走出这种困境。 1.U盘F0XIT数据恢复大师 一键直达>>https://www.pdf365.cn/foxit-restore/ 这…

自动驾驶-机器人-slam-定位面经和面试知识系列05之常考公式推导(02)

这个博客系列会分为C STL-面经、常考公式推导和SLAM面经面试题等三个系列进行更新&#xff0c;基本涵盖了自己秋招历程被问过的面试内容&#xff08;除了实习和学校项目相关的具体细节&#xff09;。在知乎和牛客&#xff08;牛客上某些文章上会附上内推码&#xff09;也会同步…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《面向东北地区调频指标两段式火储联合调频策略》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

浅谈断言之XML断言

浅谈断言之XML断言 XML断言是JMeter的一个组件&#xff0c;用于验证请求的响应数据是否符合XML结构。这对于测试返回XML格式数据的Web服务特别有用。 如何添加XML断言&#xff1f; 要在JMeter测试计划中添加XML断言&#xff0c;遵循以下步骤&#xff1a; 打开测试计划&…

C#知识|账号管理系统:将修改账号信息提交到数据库

哈喽,你好啊,我是雷工! 昨天练习了账号管理系统-修改账号按钮功能的实现: 《修改账号按钮功能的实现》; 接下来继续学习,如何将修改完的信息提交到数据库, 以下为学习笔记。 01 实现功能 ①:当修改完信息,点击【提交修改】按钮时,将修改完的信息保存到SQLServer数…

Qt调用谷歌拼音输入插件

要在Qt中调用谷歌拼音输入插件 编译谷歌拼音输入法源码&#xff1a; 可以通过编译谷歌拼音输入法的源码来实现在Qt中的应用。以下是一些步骤&#xff1a; 下载QtInputMethod_GooglePinyin源码&#xff0c;例如从Gitee获取。 使用MinGW64或MSVC2019_64构建套件编译源码。 编译完…