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 的管理员将会使用生产实例运行完整数据和服务的 ...
随机推荐
- 云工作流 CloudFlow 重磅发布,流程式开发让云上应用构建更简单
为了让企业和开发者更快速.便捷地进行云上开发,阿里云重磅发布云工作流(CloudFlow),它是一款强大的面向开发者的流程编排开发工具,全托管.高并发.高可用,帮助用户简化和自动化复杂的云上业务流程和 ...
- vue2+高德地图web端开发
https://blog.csdn.net/qq_51553982/article/details/123014412
- token原理分析
- div模拟表格单元格合并
效果如下图: html代码如下: 1 <ul class="schedule-list"> 2 <li class="schedule-title&qu ...
- babel相关配置
npm install --save-dev @babel/core @babel/cli @babel/preset-env @babel/node npm install --save @babe ...
- 如何使用Markdown编写笔记
Markdown是什么? Markdown 是一种轻量级标记语言,创始人为约翰·格鲁伯(John Gruber). 它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML(或者HTM ...
- for-each循环使用iterator进行遍历
示例如下: public static void main(String args[]) { List list = new LinkedList(); list.add("aa" ...
- wireshark 抓包使用
本文为博主原创,转载请注明出处: 在项目开发过程当中,尤其在联调和测试功能的使用,经常会用到抓包,用抓包进行问题的定位. 所以记录一下wireshark的使用,如何抓包,分析,保存等. wiresha ...
- 11-verilog-有限状态机
有限状态机 写RTL的时候,实现一个功能的时候有很多种方法 将系统划分为多个状态,状态之间有状态的转移,第一步,第二步......形成有限状态机 流水线技术设计,从输入到输出有多个步骤,多个步骤可以并 ...
- 关于decimal非常浅显的学习与整理
关于decimal非常浅显的学习与整理 背景知识 整数,小数,浮点,定点 整数(Integer)是没有小数部分的数值,可以是正数.负数或零.在计算机中,整数通常以二进制形式存储. 小数(Decimal ...