JuiceFS v1.0 正式发布,首个面向生产环境的 LTS 版本
今天,JuiceFS v1.0 发布了
经过了 18 个月的持续迭代和大量生产环境的广泛验证,此版本将成为第一个被长期维护的稳定版(LTS)。同时,该版本提供完整的向前兼容,所有用户可以直接升级。
JuiceFS 是为云环境设计的分布式文件系统,同时兼容 POSIX、HDFS、S3 访问协议,也可以使用 CSI 方式在 Kubernetes 中作为 PV 使用,在大数据、机器学习,和需要共享文件存储的场景中广泛使用。
可用于生产环境
稳定可靠的软件离不开全面的质量管理体系,JuiceFS 的测试体系已经涵盖了每日进行的单元测试、基础功能测试、兼容性测试、第三方工具测试以及实际应用场景测试。每一个版本发布之前,还需要额外完成异常测试和压力测试。在这次 v1.0 正式版发布前,我们模拟了从 Redis 切换到 TiKV 再持续写入 100 亿小文件,来验证系统的扩展性。
在过去的一年半里,来自不同行业、不同企业规模的社区用户尝试将 JuiceFS 应用到更为广泛的场景中:人工智能、大数据、云原生、数据共享、备份归档等。JuiceFS 的能力在应用中获得了持续改进,并上线到生产环境中,经受住了持续的稳定性和性能考验。
有上千集群在持续使用 JuiceFS,最大集群规模超过 10PB 数据和数十亿文件。这些用户来自互联网和科技、电信运营商、生命医药、航天、气象、遥感等领域;包括有移动云、航天宏图、小米、vivio、携程旅行、大疆、理想汽车、上汽集团、地平线、云知声、深势科技、商汤、Shopee、知乎、网易游戏、一面数据等企业,还有济南超算中心、国家天文数据中心等。
这些社区用户也分享了他们在不同场景的实践:
- 移动云使用 JuiceFS 支持 Apache HBase 增效降本的探索
- 理想汽车使用 JuiceFS 实现数据平台存算分离
- Shopee 使用JuiceFS 实现 ClickHouse 数据冷热分层
- 云知声使用 JuiceFS 建设超算平台分布式存储
- 深势科技使用 JuiceFS 实现多云 AI 科学计算平台建设
- 知乎使用 JuiceFS 给 Flink 容器启动加速
点击 此处 查看用户案例合集。
功能快速浏览
JuiceFS 是第一个完全插件式的分布式文件系统,元数据和数据都可以借助已有的成熟组件来实现,以应对丰富多变的企业环境和数据存储需求,目前支持 10 种以上元数据引擎 和 30 种以上数据存储引擎 。同时,JuiceFS 同时兼容 POSIX、 HDFS、S3、WebDAV 等访问协议,让数据不再成为孤岛,可以自由地在所有应用中流通。
除了稳定性之外,JuiceFS 还提升了全方面的数据安全保障:
- 数据存储加密,让文件内容加密存储在对象存储中,防止数据意外泄露
- 回收站,防止手抖误删除
- 元数据导入 & 导出 工具不仅方便备份,还可以做元数据引擎迁移
- 元数据自动备份,支持数据延迟删除,配合元数据备份,可以让数据「回到过去」,防止误更新
系统可观测性也在持续增强:
- 提供丰富的系统指标监控系统运行状态,通过 API 直接接入 Prometheus,预置的 Grafana 模版
- 通过客户端日志和访问日志,可以了解系统详情
- 文件元数据索引分析工具 juicefs info
- 性能实时诊断工具 juicefs profile
- 性能统计监控工具 juicefs stats
- 支持 Graphite 协议收集 Hadoop SDK 的监控数据
- 内置 Pyroscope 进行性能分析
还有丰富的管理工具:
- juicefs sync 在任意两个存储系统之间复制数据,相当于高性能 rsync/DistCp,支持丰富的访问协议
- juicefs warmup 可以为指定路径预热数据,提升读取性能
- juicefs rmr 快速删除指定目录
- juicefs config 可以在线修改文件系统配置
- juicefs fsck 可以检查文件系统完整性,找出可能损坏的文件
- juicefs gc 可以回收意外泄露的数据
- juicefs bench 简单的基准性能测试
- juicefs objbench 测试对象存储的访问权限和基准性能
拥抱开源
JuiceFS 在 2017 年以云服务的形式发布,经过三年的持续打磨和稳健运后,为了能让更多的开发者体验到这款产品的便捷,我们在 2021 年 1 月 11 日发布了插件化架构的 JuiceFS 社区版,并以每月发布一个测试版的速度持续迭代。
当听到一些社区用户反馈对 AGPLv3 的顾虑后,我们在2022年1月将 “AGPLv3 许可” 改为了 “Apache 2.0 许可”,让用户可以更放心地将 JuiceFS 应用于各种商业环境,并且根据自身的需要进行二次改进,也便于上下游的应用进行更进一步的融合,比如 Fluid 和 PaddlePaddle Operator 就已经将 JuiceFS 集成其中。
开源软件的发展离不开社区用户的共同努力,包括参与提交 issue、贡献 PR、分享文章、回答问题的每一位成员,在此向每一位参与者表示感谢!
未来规划
JuiceFS v1.0 是第一个长期维护( LTS)版本,我们会提供 24 个月的持续维护。
未来的版本会逐步实现以下这些功能(欢迎反馈):
- 支持 FoundationDB 做元数据引擎
- 录配额
- 用户和组配额
- POSIX ACL
- 快照
- WORM(Write Once Read Many)
在 JuiceFS 的持续迭代过程中,一直保持着向后兼容,希望新的改进能够更快地被用户使用,未来的版本发布也会兼容 v1.0 并提供平滑升级的方案。同时,JuiceFS v1.0 也为未来的版本做了一些向前兼容准备。
JuiceFS v1.0 正式发布,首个面向生产环境的 LTS 版本的更多相关文章
- JuiceFS v1.0.0 Beta1 发布,加强数据安全能力
在 JuiceFS 开源一周年之际,我们迎来了首个里程碑版本 JuiceFS v1.0.0 Beta1,并将开源许可从 AGPL v3 修改为 Apache License 2.0. JuiceFS ...
- JuiceFS V1.0 RC1 发布,大幅优化 dump/load 命令性能, 深度用户不容错过
各位社区的伙伴, JuiceFS v1.0 RC1 今天正式发布了!这个版本中,最值得关注的是对元数据迁移备份工具 dump/load 的优化. 这个优化需求来自于某个社区重度用户,这个用户在将亿级数 ...
- JuiceFS v1.0 beta3 发布,支持 etcd、Amazon MemoryDB、Redis Cluster
JuiceFS v1.0 beta3 在元数据引擎方面继续增强,新增 etcd 支持小于 200 万文件的使用场景,相比 Redis 可以提供更好的可用性和安全性.同时支持了 Amazon Memor ...
- MongoDB分片副本集生产环境部署-Windows版本
title: MongoDB分片副本集生产环境部署(Windows版本) date: 2022-10-29 17:21:11 tags: - 运维 系统架构 配置环境 系统都是windows 10 专 ...
- 面向生产环境的大集群模式安装Hadoop
一.实验说明 1.本实验将使用DNS而不是hosts文件解析主机名: 2.使用NFS共享密钥文件,而不是逐个手工拷贝添加密钥: 3.复制Hadoop时使用批量拷贝脚本而不是逐台复制. 测试环境: Ho ...
- vue-cli2.0和vue-cli3.0中当发布到生产环境时禁用console.log
vue-cli2.0中的方法 1.安装插件 npm install uglifyjs-webpack-plugin --save-dev 2.修改webpack.prod.conf.js配置文件 co ...
- SVN多分支开发模式V1.0.1
1目的 规范开发模式过程,指导项目研发.质控测试.DevOps的相关活动. 2适用范围 本规范的作用范围是为互联网软件产品相关项目开发模式的管理过程. (1) 对项目团队中研发人员在开发模式过程中 ...
- vue-cli 3.0 axios 跨域请求代理配置及生产环境 baseUrl 配置
1. 开发环境跨域配置 在 vue.config.js 文件中: module.exports = { runtimeCompiler: true, publicPath: '/', // 设置打包文 ...
- Demo客户端相关规范 v1.0
目录 开发环境 开发工具 代码管理 项目代码 分支管理 名称管理 打包管理 存储路径 存储结构 测试包 正式包 名称管理 依赖组件 内部组件 外部组件 解决方案结构 解决方案命名 解决方案文件夹 项目 ...
- Confluence 6 从生产环境中恢复一个测试实例
请参考 Restoring a Test Instance from Production 页面中的内容获得更多完整的说明. 很多 Confluence 的管理员将会使用生产实例运行完整数据和服务的 ...
随机推荐
- SpringCloud学习 系列三、 创建一个没有使用springCloud的服务提供者和消费者
系列导航 SpringCloud学习 系列一. 前言-为什么要学习微服务 SpringCloud学习 系列二. 简介 SpringCloud学习 系列三. 创建一个没有使用springCloud的服务 ...
- C#查找算法1:二分查找
二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法.但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列. 原理:将n个元素分成个数大致相同的两半,取 ...
- idea中配置mybatis 映射文件模版及 mybatis plus 自定义sql
本文为博主原创,未经允许不得转载: mybatis plus 使用过程中已经很大程度提升了我们开发的效率,因为它内部已经对单表的操作进行了完美的封装,但是关联表操作时, 这时就需要自己定义sql,自定 ...
- React技巧之设置input值
原文链接:https://bobbyhadz.com/blog/react-set-input-value-on-button-click 作者:Borislav Hadzhiev 正文从这开始~ 总 ...
- 神经网络优化篇:详解学习率衰减(Learning rate decay)
学习率衰减 加快学习算法的一个办法就是随时间慢慢减少学习率,将之称为学习率衰减,来看看如何做到,首先通过一个例子看看,为什么要计算学习率衰减. 假设要使用mini-batch梯度下降法,mini-ba ...
- Manjaro Linux永久修改主机名
技术背景 Linux系统中默认的主机名可以通过hostname指令进行查询,一般默认的是一串的随机字符串: [dechin@dechin-20n2s01200 numba]$ hostname dec ...
- SpringBoot实现限流注解
SpringBoot实现限流注解 在高并发系统中,保护系统的三种方式分别为:缓存,降级和限流. 限流的目的是通过对并发访问请求进行限速或者一个时间窗口内的的请求数量进行限速来保护系统,一旦达到限制速率 ...
- [转帖]ORACLE新参数MAX_IDLE_TIME和MAX_IDLE_BLOCKING_TIME简介
https://www.cnblogs.com/kerrycode/p/16856171.html Oracle 12.2 引入了新参数MAX_IDLE_TIME.它可以指定会话空闲的最大分钟数.如果 ...
- [转帖]内存管理参数zone_reclaim_mode分析
zone_reclaim_mode 官方解释 调整方法 调整的影响 官方解释 最近在性能优化,看到了zone_reclaim_mode参数,记录备用 zone_reclaim_mode: Zone_r ...
- [转帖]redis缓存命中率介绍
缓存命中率的介绍 命中:可以直接通过缓存获取到需要的数据. 不命中:无法直接通过缓存获取到想要的数据,需要再次查询数据库或者执行其它的操作.原因可能是由于缓存中根本不存在,或者缓存已经过期. 通常来讲 ...