JindoFS - 分层存储

简介: JindoFS 存储内部我们是通过分层存储来降低这部分冷数据的存储成本,提高热数据的访问性能。

作者:殳鑫鑫,花名辰石,阿里巴巴计算平台事业部EMR团队技术专家,目前从事大数据存储以及Spark相关方面的工作。


JindoFS 概述

JindoFS概述:云原生的大数据计算存储分离方案

JindoFS解析 - 云上大数据高性能数据湖存储方案

JindoFS - 分层存储背景

JindoFS 分层主要解决客户冷热数据存储成本问题,对于大多数用户数据可以简单的分为冷数据和热数据

  • 热数据:业务需要访问的数据往往是业务数据集的一部分,这种经常被访问的数据我们通常称为热数据,这部分数据在存储主要关注数据的存储性能,因此热数据主要存放在一些高性能的介质上。
  • 冷数据:另外很大一部分数据很长时间内不会被访问,这部分长期不被访问的数据我们通常称为冷数据,冷数据因为很少被业务访问,在数据存储上主要考虑存储成本的问题,常见的做法如采用EC 算法代替三副本存储策略或者将数据存放在磁带或者SMR磁盘等低成本的存储介质上来降低存储成本

JindoFS 存储内部我们是通过分层存储来降低冷数据的存储成本,提高热数据的访问性能。

JindoFS - 分层存储

JindoFS 无论是Cache 模式还是Block 模式都提供数据本地备份来加速业务数据的访问,而数据的可靠性和可用性主要由后端存储OSS 提供,JindoFS 分层存储中冷数据存放主要依赖OSS 提供存储类型来提供,OSS 可以提供存储类型分为三种类型:标准存储类型,低频访问存储类型,归档存储类型。

  • 标准存储类型:提供高可靠、高可用、高性能的对象存储服务,能够支持频繁的数据访问, 无数据取回费用,实时访问,毫秒延迟
  • 低频存储类型:提供高可靠性、较低存储成本的对象存储服务。有最低存储时间(30天)和最小计量单位(64 KB)要求。支持数据实时访问,访问数据时会产生数据取回费用,适用于较低访问频率(平均每月访问频率1到2次)的业务场景
  • 归档存储类型:提供了高可靠性、极低存储成本的对象存储服务。有最低存储时间(60天)和最小计量单位(64 KB)要求。数据需解冻(约1分钟)后访问,解冻会产生数据取回费用。适用于数据长期保存的业务场景。

JindoFS 内部可以将数据分为以下集中,热数据,温数据,冷数据,低频数据,归档数据。
截屏2020-07-02 下午5.59.16.png

JindoFS 分层存储支持存储数据在上述各种数据类型之间进行转换,用户可以根据自己业务的数据类型来确定数据的存储类型,从而为数据的存储提供一种最优的存储方案, 用户可以使用cache/uncache/archive/unarchive等命令来操作存储的文件或者目录进行数据类型转换。

结语

JindoFS 主要支持计算存储分离的场景,提供两种不同的模式支持用户不同的场景,两种模式各有优缺点,用户可以根据业务类型选用不同的模式或者同时选择两种不同模式,分层存储功能同时支持这两种模式,用户可以在性能以及存储成本方面考虑,选择不同存储类型,该功能预计会在下一个EMR主版本中发布支持。


EMR钉钉产品交流群
产品群.JPG

对开源大数据和感兴趣的同学可以加小编微信(下图二维码,备注“进群”)进入技术交流微信群。

image.png

Apache Spark技术交流社区公众号,微信扫一扫关注

image.png

相关文章
|
存储 SQL 分布式计算
【存储】2022 年的 4 个开源对象存储平台
【存储】2022 年的 4 个开源对象存储平台
|
Kubernetes Devops jenkins
ArgoCD 简明教程
ArgoCD 简明教程
3496 0
ArgoCD 简明教程
|
虚拟化 数据中心 异构计算
GPU 虚拟化技术MIG简介和安装使用教程
使用多实例GPU (MIG/Multi-Instance GPU)可以将强大的显卡分成更小的部分,每个部分都有自己的工作,这样单张显卡可以同时运行不同的任务。本文将对其进行简单介绍并且提供安装和使用的示例。
1901 0
|
Kubernetes 搜索推荐 前端开发
containerd 镜像构建工具 -- nerdctl 和 buildkit
containerd 镜像构建工具 -- nerdctl 和 buildkit
9447 0
|
NoSQL Linux Apache
2025年10大主流开源协议全解析与开源战略的商业价值-优雅草卓伊凡
2025年10大主流开源协议全解析与开源战略的商业价值-优雅草卓伊凡
1681 8
|
NoSQL Java Redis
Redis基本数据类型及Spring Data Redis应用
Redis 是开源高性能键值对数据库,支持 String、Hash、List、Set、Sorted Set 等数据结构,适用于缓存、消息队列、排行榜等场景。具备高性能、原子操作及丰富功能,是分布式系统核心组件。
874 2
|
算法 搜索推荐 Java
Java中的Sort
Java中的排序机制主要通过`Arrays.sort()`和`List.sort()`实现。`Arrays.sort()`支持多种排序算法,包括归并排序(`legacyMergeSort`)和TimSort。`legacyMergeSort`采用递归分割数组并合并的方式,适用于小规模数据的插入排序优化。TimSort则结合了归并排序和插入排序的优点,通过分段处理和合并优化排序性能,特别适合处理部分有序的数据。对于数值排序,Java还提供了`DualPivotQuicksort`算法。而`List.sort()`则是将列表转化为数组进行排序后再写回列表。
436 2
|
存储 Kubernetes 数据安全/隐私保护
在K8S中,如何下载harbor的私有项目镜像?
在K8S中,如何下载harbor的私有项目镜像?
|
存储 监控 关系型数据库
MySQL自增ID耗尽解决方案:应对策略与实践技巧
在MySQL数据库中,自增ID(AUTO_INCREMENT)是一种特殊的属性,用于自动为新插入的行生成唯一的标识符。然而,当自增ID达到其最大值时,会发生什么?又该如何解决?本文将探讨MySQL自增ID耗尽的问题,并提供一些实用的解决方案。
750 1
|
存储 缓存 弹性计算
解读大模型时代的数据加速:性能、稳定性与一致性一个都不能少
本文探讨了在大模型时代,如何在数据加速中平衡性能、稳定性和一致性,通过阿里云ACK Fluid的实例,详细解析了优化策略与最佳实践,旨在帮助用户高效应对数据管理挑战。

热门文章

最新文章