常用的存储分为下三类:
- 块存储
- 文件存储
- 对象存储
本文就这三类存储分别介绍下他们的特点和使用场景
块存储
块存储: 指在一个RAID(独立磁盘冗余阵列)集中,一个控制器加入一组磁盘驱动器,然后提供固定大小的RAID块作为LUN(逻辑单元号)的卷,简单理解硬盘就是块存储。
常见的块存储
-
物理服务器或则商业存储中的硬盘
包含机械硬盘,固态硬盘,Flash闪存等 -
云厂商的云盘(也称云硬盘)
比如阿里云的SSD 云盘, 腾讯云的高性能云硬盘等
文件存储
提供了文件共享的文件存储服务,普通的文件存储可以同时支持上千个云主机客户端同时共享访问,提供高吞吐量。
- 普通文件存储
- linux 上的NFS (Network File System)文件系统
- FTP 文件服务器(安全性低,一般用SFTP代替)
- Windows SMB (就是windows上的文件共享)
- NAS 一种专用的数据存储服务器(NAS本身能够支持多种协议(如NFS、CIFS、FTP、HTTP等)品牌有Netapp、EMC))
- 云厂商也提供类似的,如腾讯云的文件存储(使用的就是NFS)
-
HDFS
HDFS的特点:
分块存储/多副本/分布式存储/不适合批量的写/不适合存储小文件/采用B数索引
HDFS 的使用场景:
适合日志存储/适合存储结构化数据和半结构化数据/适合批量的读(一次写入,多次读取)
HDFS的角色:
Name Node / Data Node
HDFS的读写:
所有的元数据都存储在NameNode
对象存储
对象存储:
无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。
使用场景:
适合非结构化文件,如图片和音视频等数据的海量存储
各种终端设备、Web网站程序、移动应用可以直接向OSS写入或读取数据。OSS支持流式写入和文件写入两种方式
阿里云的对象存储的分类:
标准类型
低频访问类型
归档存储类型
(云厂商都提供对象存储)
三种存储的差异比较
下表来自阿里云:
image.png
注: ECS 指的的云主机。
如果是自己搭建的NAS,那么他的吞吐取决约你的磁盘的类型和Raid类型, 一般是百Mbps,而不是Gbps.