数据湖加速器GooseFS,加速湖上数据分析性能
数据湖加速器 GooseFS 是由腾讯云推出的高性能、高可用、弹性的分布式缓存方案。依靠对象存储(Cloud Object Storage,COS)作为数据湖存储底座的成本优势,为数据湖生态中的计算应用提供统一的数据湖入口,加速海量数据分析、机器学习、人工智能等业务访问存储的性能。
GooseFS 采用了分布式集群架构,具备弹性、高可靠、高可用等特性,为上层计算应用提供统一的命名空间和访问协议,方便用户在不同的存储系统之间管理和流转数据。

零、产品背景
近些年来以对象存储作为统一数据湖存储的趋势越来越明显。对象存储具有低成本、高可靠、弹性等特性,因此很适合信息爆炸时代海量数据的存储,越来越多的企业将大数据存储从 HDFS 迁移到对象存储中,采用对象存储或者对象存储+HDFS混合存储架构实现企业级冷热数据分层方案。但在数据湖方案下,企业仍然面对以下问题:
性能问题:大数据场景中,Map 和 Reduce环节均需要频繁对文件进行List 和 Rename 操作;但对象存储的扁平式架构设计导致在这些操作上天然具有性能瓶颈。此外,数据跨机房存储会进一步增加数据湖架构下的请求延迟,而近年来流批一体的应用越来越广泛和深入,大数据业务对实时性要求越来越高,因此需要尽可能让热数据更靠近计算端,以便提升业务性能。
成本问题:对于离线大数据业务而言,往往需要尽可能快速地拉取大量重复的数据到计算集群中进行分析,在数据湖的存算分离架构下,会对存储带宽有很大的压力。这种模式下峰值带宽高,平均带宽小,容易产生大量的资源浪费和成本消耗。因此将热数据缓存到计算节点,减少带宽消耗能够降低业务成本。
运维问题:相当多的业务采用 HDFS 和 对象存储等不同存储服务构建混合存储架构,在这种业务模型下需要维护多种不同的存储接口,增加了运维的复杂度。因此,如果有一套存储服务能够对接不同的后端存储系统,为上层计算业务提供一致的访问视图,将能极大地减少业务开发的难度,提升存储服务使用效率。

一、产品功能
GooseFS 旨在提供一站式的缓存解决方案,在利用数据本地性和高速缓存,统一存储访问语义等方面具有天然的优势;GooseFS 在腾讯云数据湖生态中扮演着“上承计算,下启存储”的核心角色,如下图所示。

GooseFS 基于开源大数据缓存方案 Alluxio 进行设计和研发,相较于开源方案,GooseFS 提供了更多关键特性,稳定性和性能优化;同时深度融合了腾讯云生态,对接了腾讯云TKE、EMR等计算服务,为用户提供开箱即用的能力。
主要功能如下:
缓存加速和数据本地化:GooseFS 可以与计算节点混合部署提高数据本地性,利用高速缓存功能解决存储性能问题,提高读写对象存储 COS 文件的效率。
融合存储语义:GooseFS 上层统一的接口协议,支持对接对象存储COS,云上HDFS和私有化存储CSP,并且针对腾讯云COS,CHDFS,CSP等产品做了特殊优化,适用于多种生态和应用场景。
统一的腾讯云相关生态服务:包括腾讯云监控、日志和鉴权的支持。GooseFS 已经顺利对接腾讯云 EMR,腾讯云 TKE 和腾讯云 EKS 等;同时支持对接腾讯云监控,腾讯云日志服务 CLS 和腾讯云 ES,Prometheus和 Grafana 等服务。
元数据管理功能:GooseFS 支持按照 Hive Table 或者 Table partition 级别将存储在COS或者CHDFS 上的数据异步缓存到本地节点;支持按照 Namespace 配置不同元数据管理方案。
二、产品优势
GooseFS 在数据湖场景中具有如下几点明显的优势:
1.数据 I/O 性能GooseFS 部署提供近计算端的分布式共享缓存,上层计算应用可以透明地、高效地从远端存储将需要频繁访问的热数据缓存到近计算端,加速数据 I/O 性能。GooseFS 提供了感知元数据 Table 的功能,能够加速大数据场景下列出文件列表(List),重命名文件(Rename)等元数据操作的性能。此外,业务可以按需选择MEM, HDD, SSD,NVME SSD 等不同的存储介质,平衡业务成本和数据访问性能。 |
2.存储一体化GooseFS 提供了统一的命名空间,为上层业务提供了统一的接口协议,底层支持对接COS、CHDFS、CSP等不同的存储服务,简化业务侧运维配置。存储一体化能够打通不同数据底座的壁垒,方便上层应用管理和流转数据,提升数据利用的效率。
3.生态亲和性GooseFS 全兼容腾讯云大数据平台框架,也支持客户侧自定义的本地部署,具备优秀的生态亲和性。业务侧不仅可以在腾讯云弹性 MapReduce 产品中使用,GooseFS 加速大数据业务,也可以便捷地将 GooseFS 本地化部署在公有云 CVM 或者自建 IDC 内。此外,GooseFS 也支持了透明加速能力,支持通过 COSN Interface一访问对象存储;对于已经使用 COS 大数据插件 COSN 的用户,可以非常方便地将 GooseFS 引入到 COSN 中使用。 |
三、结语
GooseFS 旨在提供一站式的数据湖缓存加速解决方案,方便用户在不同的存储系统管理和流转数据,提升您的数据利用效率。
如果您想要详细了解 GooseFS,并进行部署和体验,可以点击阅读原文查看 GooseFS的配置文档。
— END —
数据湖加速器GooseFS,加速湖上数据分析性能的更多相关文章
- 手把手教你快速使用数据可视化BI软件创建互联网用户数据分析大屏
灯果数据可视化BI软件是新一代人工智能数据可视化大屏软件,内置丰富的大屏模板,可视化编辑操作,无需任何经验就可以创建属于你自己的大屏.大家可以在他们的官网下载软件. 本文以互联网用户数据分析大屏为 ...
- Iceberg 数据治理及查询加速实践
数据治理 Flink 实时写入 Iceberg 带来的问题 在实时数据源源不断经过 Flink 写入的 Iceberg 的过程中,Flink 通过定时的 Checkpoint 提交 snapshot ...
- 你真的会玩SQL吗?玩爆你的数据报表之存储过程编写(上)
你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...
- 将sqlserver导出的csv数据导入到ubuntu和mac上的mysql
最近在捣鼓一些数据相关的东西.将sql server里的数据导入到ubuntu和mac上的mysql,方法有很多.不过我选择了最简单的一种:将sql server的数据导成csv,然后将csv导入到m ...
- 动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题
动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题 D3 ...
- 【小梅哥FPGA进阶教程】串口发送图片数据到SRAM在TFT屏上显示
十五.串口发送图片数据到SRAM在TFT屏上显示 之前分享过rom存储图片数据在TFT屏上显示,该方法只能显示小点的图片,如果想显示TFT屏幕大小的图片上述方法rom内存大小不够.小梅哥给了个方案,利 ...
- EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器功能简介---实时数据统计报表、视频文件上传、点播、分享、集成
熟悉EasyDSS流媒体服务器的小伙伴应该都知道,EasyDSS通过将EasyRTMP推流的直播流进行直播转码.智能处理.视频分发,再通过 CDN 分发节点分发到终端播放 SDK为观众播放高清低延时的 ...
- Vue2.0源码学习(1) - 数据和模板的渲染(上)
准备 一.首先去GitHub上把vue源码download下来,传送门:https://github.com/vuejs/vue 二.搭建一个vue-cli跑起来,用于代码调试,不看着代码动起来只看源 ...
- c/c++指针从浅入深介绍——基于数据内存分配的理解(上)
c/c++指针从浅入深介绍--基于数据内存分配的理解(上) 本文是对自我学习的一个总结以及回顾,文章内容主要是针对代码中的数据在内存中的存储情况以及存储中数值的变化来对指针进行介绍,是对指针以及数据在 ...
- 针对数据泵导出 (expdp) 和导入 (impdp)工具性能降低问题的检查表 (文档 ID 1549185.1)
针对数据泵导出 (expdp) 和导入 (impdp)工具性能降低问题的检查表 (文档 ID 1549185.1) 文档内容 适用于: Oracle Database – Enterprise Edi ...
随机推荐
- USB总线-Linux内核USB3.0设备控制器中断处理程序分析(九)
1.概述 USB设备枚举.请求处理.数据交互都涉及USB设备控制器中断.当有事件发生时,USB设备控制器首先将事件信息通过DMA写入到事件缓冲区中,然后向CPU发出中断,随后CPU调用中断处理函数开始 ...
- 数据库运维实操优质文章分享(含Oracle、MySQL等) | 2023年4月刊
本文为大家整理了墨天轮数据社区2023年4月发布的优质技术文章,主题涵盖Oracle.MySQL.PostgreSQL等数据库的基础安装配置.故障处理.性能优化等日常实践操作,以及概念梳理.常用脚本. ...
- C++第六节课 引用变量 指针的升级版
#include <iostream> using namespace std; // C++的引用 是C指针的升级 可以提高代码的稳定性和健壮性 // const 修饰的引用 是 常引用 ...
- C# 根据主键ID查询数据库的数据 反射和泛型实现
// 引入命名空间 using Zhu.ADO.NET.DBProxy; using Zhu.ADO.NET.Models.models; Console.WriteLine("====== ...
- docker镜像&容器管理
1.拉取镜像 docker pull 拉取 MySQL8.0 和 tomcat 拉取MySQL8.0镜像 [root@localhost ~]# docker pull mysql:8.0 拉取tom ...
- 使用nacos上传配置文件报错
1.使用nacos导入配置文件报错:未读取到合法数据,请检查导入的数据文件. 对比在naocs server中导出的文件,发现是少了一级目录.需要创建一个文件夹,名称为组的名称.因为在nacos上传文 ...
- [Windows] 屏幕截图工具Snipaste 开发过程更轻松
前言 老大:你去把用户登录代码写完. 老大:你把这周的周报发一下 老大:你把生产的数据清理一下. 结果.... 今天刚把登录代码写完,下班,明天就处理别的事情去了!!! 之后我就... 直接F1 截屏 ...
- Codeforces Round 987 (Div. 2)
Codeforces Round 987 (Div. 2) 总结 A 常见的套路,将一个序列变为不下降序列所需要改变的值的最小数量,考虑最大能保留多少个,显然是求最长上升子序列,而这题给出的 \(a\ ...
- 学英语工具集KindleVocab和WordSaver
学英语坚持不下去是因为没选好工具. 我现在用的工具是Kindle+网页读新闻 生词点按之后导出到Anki背诵 借助工具,整个过程几乎无痛 1.Kindle生词及所在句子导出软件 KindleVocab ...
- vue $forceUpdate()强制刷新
改变列表的值 一直不渲染 <van-pull-refresh v-model="refreshing" @refresh="onRefresh"> ...