Hadoop大数据存算分离方案:计算层无缝对接存储系统

news2024/12/26 11:40:25

Hadoop的诞生改变了企业对数据的存储、处理和分析的过程,加速了大数据的发展。随着大数据系统建设的深入,企业的数据基础设施易出现计算资源浪费、存储性能低、管理成本过高等挑战。相比存算一体架构,存算分离架构具有性能与成本最优、兼具灵活性等特点,因此受到企业IT部门的青睐,并纷纷开始对Hadoop架构进行改造。

为满足大数据不同场景需求,杉岩数据此前研发推出了兼容HDFS接口能力的高性能数据湖文件网关,为使湖仓一体方案更加完善,杉岩数据全新升级了面向AI训练、机器学习、大数据分析等场景的高性能文件存储——杉岩云原生文件存储(以下简称杉岩CNFS),为客户实现All in One的存储能力。

存算分离实现方案:客户端模式

杉岩CNFS支持客户端模式,提供HCFS(Hadoop Compatible File System,Hadoop兼容文件协议)接口实现,对HDFS接口协议完全兼容,可以保证应用层就像使用原生HDFS存储一样使用杉岩CNFS。

实际场景中,通过在计算平台部署安装专用的客户端与简单的配置,即可实现Hadoop平台的组件与分离部署的存储交互。针对业界使用比较广泛的CDH平台(Hadoop商业发行版之一),杉岩CNFS也开发了配套的Parcel资源包,利用CDH自身的管理便捷地配置使用杉岩CNFS提供的存储空间。

在这里插入图片描述

图1 杉岩湖仓一体方案存算分离实现(客户端模式)

但是像所有HCFS接口实现一样,侵入式的部署方式使计算组件有了额外的依赖需要管理,当涉及计算组件自身的升级、替换等场景时,就要考虑杉岩CNFS客户端软件包和配置的同步,增加了运维工作。因此这种对接方式一定程度限制了计算组件自身的灵活性。

在实际应用中,用户如果有相对较为频繁的升级更替计算组件的场景,往往不能接受侵入式的部署对接方式。

实现无缝对接!杉岩数据推出HDFS网关服务端组件

针对这一需求,杉岩数据研发推出了HDFS网关服务端组件,进一步简化对接部署过程。HDFS网关实现了原生HDFS协议,可收发原生HDFS协议的请求,计算节点通过Hadoop环境自带的原生HDFS-Client即可访问存储系统,无需额外安装专用客户端。

在这里插入图片描述

图2 杉岩湖仓一体方案存算分离实现(服务端模式)

方案优势

原生HDFS协议,兼容性良好:HDFS网关支持几乎所有的HDFS数据面接口,可对接市场上常见的大数据平台。

无缝对接,简化对接部署过程:通过原生HDFS协议直接访问存储系统,无需在计算层安装专用客户端。计算组件升级、替换时,无需考虑客户端配置,减少运维工作量。

高数据吞吐能力,无单点故障:通过杉岩云原生文件存储对HDFS网关的数据处理卸载能力,大大降低了HDFS网关的数据处理开销,提升了整体的数据吞吐能力,并结合LVS实现了对HDFS网关的去中心化、水平扩展。

性能测试

LVS只处理HDFS NameNode的元数据相关RPC,实际占大部分网络带宽的数据读写是DataNode角色的block读写流量,不通过LVS,而由HDFS Gateway通过NameNode RPC返回自身节点的IP,HDFS-Client直接和各HDFS Gateway通讯。所以LVS不会成为大数据读写的瓶颈,如下图所示:

在这里插入图片描述

图3 通过LVS访问HDFS网关的交互

以下是在3节点存储加3节点Hadoop集群环境,通过TestDFSIO读写9个30G文件的对比测试结果,可见HDFS网关对存储系统带宽影响较小。但HDFS网关的增加会使IO路径长度多一跳,对存储网络带宽需求增加,规划存储网络时应考虑这一点。

在这里插入图片描述

图4 存算分离场景杉岩CNFS直通和通过HDFS网关带宽测试

值得一提的是,有些计算层组件可能针对HDFS做特别的优化,例如Hbase就实现了自己的异步HDFS-Client,此情况下使用HDFS网关可以继续使用计算侧的特别优化,能获得更好的性能。

总结

随着5G和IoT的快速发展,数据激增,企业级大数据平台建设逐渐深入,基于存算分离架构,计算承接丰富的应用接入需求,存储提供成熟稳定的底座支撑业务发展和生态对接是大势所趋。

上述内容体现了杉岩云原生文件存储在Hadoop大数据存算分离场景中的优势,杉岩数据推出HDFS网关服务端组件,通过原生HDFS协议直接访问存储系统,简化了对接部署过程,为用户提供了更多的选择,使基于杉岩大数据智能存储为基座的湖仓一体方案更加完善。

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

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

相关文章

3D地图app

3D三维地图APP 发布时间:2018-07-19 版权: 3D地图依据高程数据等对地表进行渲染,实现地表的起伏,模拟出真实的三维场景,让你有如身临其境般的感觉。 (注:Bigemap 3D地图是一个三维地图浏览功能…

项目沟通怎么才能不像在吵架?

项目沟通并非吵架,看起来却总是剑拔弩张。有效沟通才能真正解决问题,笔者给出了一些实用的建议,从对象到场景,再到方法与技巧,应该在沟通中有针对性地注意这些问题。 沟通是个老话题,在项目管理中有专门讲沟…

draw.io使用教程

大部分的绘图应用都离不开三个基本的元素,图形,链接,文本。每个元素都有基本的操作和样式,元素与元素之间又可以进行组合,“三生万物”,生成各种各样的图表。 如果没有这款绘图的 可以点击获取 : drawio文…

企业项目管理的不同与好处

大型企业组织通常同时运行多个复杂项目。尽管这些项目看起来不一定相互关联,但它们都会影响同一个企业组织。企业项目管理(EPM)是指在公司范围内管理项目的实践。它通常涉及实施战略和流程,以大规模简化和提高项目管理的有效性。根据项目管理协会(PMI)的…

burpsuite靶场——XXE

文章目录什么是XML?什么是XML实体?什么是文档类型定义(DTD)?什么是XML自定义实体?什么是XML外部实体?使用外部实体利用 XXE 来检索文件利用 XXE 执行 SSRF 攻击盲XXE漏洞带外交互的盲 XXE过 XML 参数实体进行带外交互的…

【AJAX】AJAX的跨域问题

AJAX的跨域问题跨域的概述区别同源与不同源同源策略有什么用?AJAX跨域解决方案方案一、设置响应头方案二、jsonp方案三、代理机制(httpclient)跨域的概述 跨域是指从一个域名的网页去请求另一个域名的资源。比如从百度(https://ba…

WPF控件模板、数据模板、容器样式选择器

WPF控件模板 利用Tag来绑定控件模板内容 <!--模板定义--> <Style x:Key"ButtonStyle1" TargetType"{x:Type Button}"><Setter Property"Template"><Setter.Value><ControlTemplate TargetType"{x:Type Button…

声音事件检测metric:PSDS

论文&#xff1b;A FRAMEWORK FOR THE ROBUST EVALUATION OF SOUND EVENT DETECTION Abstract 这项工作为多声道声音事件检测&#xff08;SED&#xff09;系统的性能评估定义了一个新的框架&#xff0c;它克服了传统的collar-based事件决定、事件F-cores和事件错误率的限制。…

【Kotlin 协程】Flow 流组合 ( Flow#zip 组合多个流 | 新组合流的元素收集间隔与被组合流元素发射间隔的联系 )

文章目录一、Flow 流组合1、Flow#zip 组合多个流2、新组合流的元素收集间隔与被组合流元素发射间隔的联系一、Flow 流组合 1、Flow#zip 组合多个流 调用 Flow#zip 函数 , 可以将两个 Flow 流合并为一个流 ; Flow#zip 函数原型 : /*** 将来自当前流( this )的值压缩到[其他]流&…

第二十六章 数论——欧拉函数(详解与证明)

第二十六章 数论——欧拉函数&#xff08;详解与证明&#xff09;欧拉函数1、互质2、欧拉函数的定义3、欧拉函数的公式4、欧拉函数的证明5、欧拉函数的使用&#xff08;1&#xff09;问题一&#xff1a;思路代码&#xff08;2&#xff09;问题二&#xff1a;思路case1case1case…

2022/12/17 MySQL索引失效的底层原理

1 复合索引-最左前缀原理 where子句中使用最频繁的一列放在最左边&#xff1b;我们在&#xff08;a,b,c&#xff09;字段上建了一个联合索引&#xff0c;所以这个索引是先按a 再按b 再按c进行排列的&#xff0c;所以&#xff1a;以下的查询方式都可以用到索引 select * from …

emacs下安装eaf

emacs下安装eaf插件 原因 eaf插件一开始还有点排斥&#xff0c;觉得emacs终端下操作多好多流畅。想要浏览器&#xff0c;终端和pdf再快速切换就可以了&#xff0c;毕竟我用i3wm/yabai窗口管理器。 但是想到当初也是vim用的多学得多&#xff0c;emacs就不愿意去接触学习&#…

Linux系统下的压缩和解压指令

Linux系统下的压缩和解压指令 gzip/gunzip指令 gzip&#xff1a;用于压缩文件&#xff1b;gunzip&#xff1a;用于解压的 语法&#xff1a;gzip file 以及 gunzip file.gz (压缩文件&#xff0c;只能将文件压缩为*.gz文件) gzip /home/hello.txt: gzip压缩&#xff0c;将/home下…

Android设计模式详解之观察者模式

前言 观察者常用于订阅-发布系统&#xff0c;能够将观察者和被观察者进行解耦&#xff0c;降低两者之间的依赖&#xff1b; 定义&#xff1a;定义对象间一种一对多的依赖关系&#xff0c;使得每当一个对象改变状态时&#xff0c;则所有依赖于它的对象都会得到通知并被自动更新…

湖南人与江西人,关系有多密切?回顾四省填湘的历史

现在的湖南人&#xff0c;可能90%都是四省填湘的移民后代&#xff0c;这种说法可信吗&#xff1f;而湖南人又与江西人的关系有多密切呢&#xff1f;我们来回顾一下四省填湘的历史吧。 四省填湘的背景 在历史上&#xff0c;湖南属于广义上的荆楚之地&#xff0c;是春秋战国时…

图解深度学习-神经网络

深度学习 深度学习是一种统计学习方法&#xff0c;可以在大量数据中自动提取关键特征信息。 深度学习的分类 深度学习的起源有感知器和基于图模型的玻尔兹曼机。在这两个的基础上引入多层结构形成了现在的深度学习。 神经网络的历史 M-P模型和感知器模型 M-P模型是首个通过…

中断和中断系统

目录 中断的引入 中断的概念 中断源&#xff08;2018年&#xff09;背会 中断系统的功能 1&#xff1a;实现中断及返回 2&#xff1a;实现优先权排队&#xff08;中断判优&#xff09; 3&#xff1a;高级中断源能中断低级的中断处理 CPU对外部可屏蔽中断的响应以及中断过…

AtCoder Grand Contest 060 A - No Majority

比赛名称&#xff1a;AtCoder Grand Contest 060 比赛链接&#xff1a;AtCoder Grand Contest 060 A - No Majority 题意&#xff1a; 一个由小写英文字母组成的字符串x被认为是好的&#xff0c;当且仅当以下条件得到满足。 x的每一个长度为2或更大的&#xff08;连续的&am…

springmvc源码之DispatcherServlet前端控制器

系列文章目录 springmvc源码之Web上下文初始化 springmvc源码之DispatcherServlet前端控制器 文章目录系列文章目录DispatcherServlet前端控制器配置serlvet3.0扩展静态资源请求问题源码分析初始化配置刷新WebApplicationContextonRefresh介绍各个组件处理请求getHandlerha.ha…

与时代共命运:数智时代的到来意味着什么?

在数字经济时代背景下&#xff0c;各行各业都在全面推动新技术与商业的加速融合&#xff0c;全力驱动商业模式创新。 当下科技迅速发展&#xff0c;而数智化的发展体现的是社会与经济向新范式的根本转变。而这种转变为企业带来的是产业组织模式、现代基础设施体系、科技人才培…