JuiceFS 的 2020,给了我们这些思考和沉淀

Davies, Surui 2021.01.09

2020 的回顾

2020 是 JuiceFS 面向所有公有云提供全托管服务的第三年,站在新年交替的时间点照例回顾一下过去一年的进展,也分享出我们看到的一些变化和趋势。

2020 年,JuiceFS 累计已经支持 20 家公有云服务,在 100 个服务区里提供开箱即用的共享文件系统服务,完全兼容 POSIX 和 HDFS。产品发布了 12 个版本,付费客户多了一倍,收入涨了 3 倍。

目前,JuiceFS 已经运行在互联网、通信运营商、手机制造、广电媒体、证券、电力、航天等行业客户的生产环境中。根据 Geoffrey Moore 在 Crossing the Chasm 书中的理论,我们还在寻找 Innovator,他们是自己行业中的领导者、开拓者,是最敢于投资未来的人。

JuiceFS 在 Hadoop 生态中已经是成熟稳定的方案,在多维度的体验中表现优异。在 AI 领域也在快速迭代,分布式元数据版本已经在客户生产环境中支持他们数十亿文件的日常训练,这在文件系统领域应该是一个很不错的进展。

在基础软件领域,文件系统算是非常底层的部分,用户对于它的需求其实非常简单,可靠、便宜、快。Choice two?我们的目标是 Take all!文件系统在互联网技术的发展中是相对缓慢的,尤其在 2005 ~ 2015 年。JuiceFS 在 2017 年开始加入到文件系统产品的创新中,我们要在云原生的时代,改变大家对文件系统过时的印象!

我们在产品上始终追求可靠、稳定、高性能、用户体验好。但我们不是研究机构,不是只醉心于技术的 Nerds,我们要 JuiceFS 能支持到每一家公司的数字化转型,支持到大数据价值的体现,支持到人工智能在行业场景中的落地。

趋势

在这个时代,生活中的微小变化,正在成为小趋势,在这些小趋势,可能只发生在人口的 1% 当中,但是,其中蕴藏着巨大的机会,每一个小趋势,都有可能孕育出下一个时代洪流。 - 何帆《变量》

上面这段话是 2019 年何帆在他的《变量》一书中写的,无论你从事什么行业,你在哪里,你在做什么,了解小趋势都是你获得新机会的钥匙。那些能够被观察到的事物才是属于你的。接下来说几个我们在一年里经历和观察到的变化。

多云战略的开始

我们日常工作需要和很多行业领导者的 IT 团队沟通,了解他们对当下、对未来的战略方向、业务需求、IT 投入与痛点。在企业数字化转型的过程中,上云 还是目前看上去讨论最多的,但是我们已经真真切切的看到了多云战略的发生。

这些客户大多上云已有两三年的时间,All in Cloud 和 Hybrid Cloud 都有,2019 年开始有客户一起探讨多云战略,到 2020 年一些客户已经实施了。

JuiceFS 一开始就做多云支持,并提供了跨区域(Region)跨云服务商(Cloud)的自动数据复制能力、近实时同步的能力。在大数据场景中,还能支持从 HDFS 到 JuiceFS 的透明无感迁移,帮助客户更少投入的实现大数据存储架构分离的升级。这些工作都在多云战略中发挥着重要作用。

基础服务的投入

基础服务要自建还是托管?选择开源产品还是云厂产品?这大概是用户上云要面对的第一个问题。这里说的基础服务是泛指,大概包括各种数据库、容器集群、大数据集群、缓存、索引、消息队列、AI 训练平台等等。这个列表很长,应该如何判断呢?

有的用户选择托管,可以减少大量的运维成本。有的用户选自建,可以自主可控。依据企业在这方面的投入能力和业务挑战可以做一个维度的判断。另外一个维度是应用涉及协议和接口的标准化。比如 IaaS 层,OS 都是一样的 Linux Kernel,云盘都是一样的 POSIX 文件系统,网络都是一样的 TCP/IP 协议,每朵云都是一样的。

而基础服务,每朵云都会有一些自家产品,数据库也好、日志服务也好、大数据服务也好,在使用的收益与风险上,很重要的一个判断标准就是是否 完全 兼容标准协议?是否有自己的 API?可能一点点细节的差异,在迁移时就需要投入巨大的人力物力。

选择非标准协议的产品和多云战略也是相悖的,最近 3 年基础软件厂商自己运营的托管服务在各家公有云上越来越受欢迎,比如 MongoDB Atlas,Confluent Kafka,Databricks 的大数据平台,还有 Snowflake 的数据仓库,都为客户带来了多云支持、一致的体验和最及时的更新。

这也是 JuiceFS 选择的服务方式,在多家公有云上提供全托管服务,让用户以统一的体验管理好多家公有云上的数据。

大数据的精细化时代到来

经过 15 年的发展,大数据平台已经是企业数字化运营必备的一部分,客户企业都已经完成了从无到有的建设过程。

同时大数据技术正在发生着很多大的变化,SQL on Hadoop 已经越来越成熟,存储计算分离的架构升级已经大势所趋,基于 Kubernetes 实现的离线在线应用混部也有了生产实践。

JuiceFS 也正是大数据平台精细化运营的所需。和一些潜在客户交流的时候,他们都反馈在大数据平台中 JuiceFS 的作用看起来不是刚需啊。的确,在 JuiceFS 诞生之前大数据已经发展十几年了,而我们要解决的就是让大数据平台可以在每一朵云上运行的更快、更稳定、用户体验更好,管理 PB 级数据更简单、更安全,平台升级与迁移更平滑、更自动。把用户从研究每个小版本号升级风险的烦恼中解放出来。开发者友好,用户体验友好,是我们相信的价值。

AI 落地的挑战

深度学习的出现带来了一次 AI 的爆发式发展,短短几年已经渗透到各行各业的研究和应用中,但就目前很多企业 IT 能力来看,AI 的落地仍然是很大的挑战。因为 AI 能力并不是部署一套应用,也不是采购一个平台能解决的。

AI 的基础是数据,从采集、清洗、特征工程、训练、验证、上线、回归,是一个多环节的流程,每个环节都需要不同的能力,一个重点是需要平台化的产品来整合各个环节中的业务应用和流程,另一个重点是 AI 存储系统面对的挑战:

  1. 百亿文件管理,从人脸识别到自动驾驶,再到声纹分析,越来越多的领域有了海量文件规模的管理需求;
  2. 在海量文件规模下,支持高性能计算;
  3. 足够强的共享能力,支持大规模集群;
  4. 文件系统 API 的兼容,这能为很多计算场景带来便利。

这些挑战是今天存储领域共同的难题,JuiceFS 目前在这几方面都有不错的支持和进展,有了客户生产环境中大规模的验证,但仍然任重道远,新的一年不断精进是我们专注所在。

结尾

以上分享给大家,期待 2021。

最后附上 JuiceFS 在 2020 年里的更新汇总:

  • 实现 HDFS 到 JuiceFS 数据自动化迁移,大数据平台终于有了业务无感的数据迁移方法;
  • JuiceFS 可以作为 HDFS 的缓存系统使用,可以为 HDFS 降负载,让 ETL、Batch Job 和 Ad-hoc Query 不再互相争抢资源,也可以作为 HDFS Slave 来做验证;
  • 在 Hadoop 环境中,可以将 HDFS、对象存储链接到 JuiceFS 中做统一命名空间;
  • 由 HDFS 向 JuiceFS 拷贝数据时支持自动 Checksum 校验
  • Hadoop 环境中支持 P2P Cache
  • 客户端提供 S3 网关,与 POSIX 访问互通。提供兼容 WebDAV 的 HTTP API;
  • 提供 Windows 客户端,可以在 Windows 系统中以盘符的方式挂载了;
  • 支持 IBM COS、又拍云、有浮云、TiKV、Ceph Librados
  • 支持 MIPS64EL(龙芯),ARM64
  • 可以限制对象总带宽的使用
  • 支持子目录挂载
  • 增加更多监控指标

预告一下,下周一 JuiceFS 有一个重要版本发布!