场景需求:

涉及文件如下:

1.大量的用户头像;

2.大量的用户通过web层上传的word文档;

业务如下:

1.上述文件需要进行存储,也就是小文件存储;

2.同时各个web层的节点能够读到;

3.能够对文件进行crud;

 

调研开源产品列表如下:

TFS

FastDFS

MongoDB

对比一览表:

开源产品TFSFastDFSMongoDB 
实现语言C/C++C/C++C/C++
授权协议GPLv2GPLv3AGPL
跨平台只支持Linux只支持Linux
Java Api
概述TFS是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,其设计目标是支持海量的非结构化数据。淘宝内部使用的分布式文件系统,针对海量小文件的随机读写访问性能做了特殊优化,承载着淘宝主站所有图片、商品描述等数据存储。开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。以GridFS文件规范存储在MongoDB。数据库支持以BSON格式保存二进制对象。  但是MongoDB中BSON对象最大不能超过4MB。  GridFS 规范提供了一种透明的机制,可以将一个大文件分割成为多个较小的文档。这将容许我们有效的保存大的文件对象,特别对于那些巨大的文件,比如视频。
是否适合做大规模小文件存储适合适合不太适合,除非小文件不是海量
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐