可以跑数据库的分布式文件系统FastCFS
Posted Huazie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了可以跑数据库的分布式文件系统FastCFS相关的知识,希望对你有一定的参考价值。
分布式文件系统FastCFS
本篇文章转载于 FastCFS 作者 余庆 大佬的 FastDFS分享与交流 公众号。
FastCFS 是一款基于块存储的通用分布式文件系统,可以作为 MySQL、PostgresSQL、Oracle 等数据库和云平台的后端存储。
已经有了比较受欢迎的FastDFS,为啥还要研发FastCFS呢?
FastDFS是轻量级的对象存储,只能通过专有API访问,为互联网应用量身定制,适合存放图片、视频、文档等等;而FastCFS是通用的分布式文件系统,可以mount到本机通过标准文件接口访问,为云平台量身定制,完全支持数据库。一句话总结:FastCFS是云原生分布式文件系统,保证数据强一致,比FastDFS更加通用和可靠。
为什么业界没有使用分布式文件系统跑数据库的惯例呢?
我认为主要原因是现有分布式文件系统要么不支持数据库,要么支持得不好。因为数据库是IO密集型软件,对IO性能要求很高,并且对数据一致性要求非常严苛。FastCFS在保证数据强一致的前提下,同时做到了高性能,完全满足数据库对IO性能和数据一致性的严格要求。软件本身不应该成为系统的性能瓶颈,这是我奉行的原则并一直为之实践。若有朋友发现FastCFS在高端服务器上性能发挥不出来,欢迎来找我(tiguan)。
分布式系统保证数据一致性的同时要做到高性能,挑战非常大,FastCFS是如何做到的呢?
总结为两个关键词是简单高效和原生实现,后续会有文章介绍。
FastCFS完全自主研发(原生实现),除了依赖 libfuse 实现文件挂载外,不依赖任何第三方软件。FastCFS 依赖的基础库 libfastcommon 来自FastDFS,目前非常成熟和稳定。
FastCFS 3人小团队历经11个月的研发,推出了 FastCFS 第一个可用版本,MySQL、PostgresSQL和Oracle可以跑通。FastCFS当前版本是v1.1.0,欢迎大家测试和使用。
源码地址:
https://github.com/happyfish100/FastCFS
https://gitee.com/fastdfs100/FastCFS
有任何问题请随时反馈,我们将快速修复和完善。
以上是关于可以跑数据库的分布式文件系统FastCFS的主要内容,如果未能解决你的问题,请参考以下文章