Oracle Cloud Infrastructure-Storage Service
这一篇继续甲骨文云基础设施之存储服务介绍,OCI为客户提供了高性能的计算和低成本的云存储选项,按需可通过本地(Local Non-Volatile Memory Express)、对象(Object)、文件 (File)、块(Block)和归档(Archive)存储,如图0-1,解决了关键存储工作负载需求和用例,客户可以使用存储网关(Storage Gateway)和数据传输服务来安全可靠地将数据移动至云端。
0-1
多样的存储服务源于不同的存储需求,如存储需求为持久和非持久;存储什么样的格式,数据库、视频、音频、图片和文本等;存储性能需求,包括容量、每秒输入/输出(IOPS)、吞吐量等,存储数据的持久时间和备份情况;存储使用的连接需求,应用程序如何访问数据,如连接到本地存储或者远程存储连接;最后与连接相关的安全协议类型选择相应的存储类型,如图0-2。
0-2
Block Storage
块存储可视为远程服务器中的硬盘驱动器,数据通常存储在固定大小的设备上,通过操作系统作为已经安装好的卷来访问,应用程序的文件系统来决定如何组合和访问块,在数据存储时没有任何更高级别的元数据如数据格式、类型和所有权,可以在块存储上安装任何类型的文件系统,如windows使用的NTFS、VMware使用的VMFS,块也通常部署在存储区域的网络中。
Block Volume Service:如图1-1,块卷服务,通过计算实例和远程服务器(Block Volume处),计算实例需要连接远程服务并且访问数据,Boot和Data两种类型的块卷,引导卷和块卷,分别为系统盘和数据磁盘(可多个),因为我们需要独立存储数据,并且期限要超过本身的计算实例,所以使用了独立的快卷来当做数据磁盘,简单来说,计算实例就算不能恢复使用,但引导卷和数据卷依然可用,保证了数据耐久性,这样的用例可包括,数据库、交易、VMware、服务器启动卷。
1-1
Block Volume - highly durable:如图1-2,块卷服务高耐久性,块卷服务在三个单独的故障域中存储数据副本,所以不需要配置任何基础保护,最坏的情况,如果数据已经损坏或者意外删除,我们有定期备份恢复备份块卷,执行操作备份恢复即可,OCI允许自动调度备份。
1-2
Block Volume Backup:如图1-3,块卷备份机制,通过完整的时间点快照来执行备份,加密并且存储于对象存储中,作为新卷还原至同一区域的任何可用区域内,也可以将块卷备份从一个区域复制到另一个区域中,也可以编写规则来自动调度执行备份任务。
1-3
Block Volume Tiers:如图1-4,块卷层级,有三个层次的块卷可使用,基本的层级,用于大量连续的I/O,如大数据、日志流处理和数据仓库,IOPS很小,吞吐量相对还不错;中间层,平衡的,可以看到IOPS和吞吐量是相对均衡的组合,这样适用于随机读取的I/O、引导磁盘、事务性数据库;更高的性能层,可以看出IOPS和吞吐量相当高,使用于任务型关键数据库。上面的每一个层都可以创建一个50G-32TB的卷,可以为每个实例附件32个卷,总附加存储卷为32个卷,每个卷32TB,也就是1PB,可以看出虚拟机实际可利用的存储量是相当大的,在数据处于静态或者传输的过程中都是加密的,加密方式可以是Oracle管理秘钥或者自己来管理秘钥。
1-4
Local NVMe
本地NVMe直接附加于计算实例,如图2-1,专为高性能应用而设计,无法远程访问,它仍然是基于Block存储,用例包括NoSQL中扩展事务数据库,包括横向扩展数据库、内存数据库、数据仓库,需要注意的是它的存储是非持久性的。
2-1
本地NVMe和Block一样,采用Non-Volatile Memory Express,因此性能非常好,OCI不提供RAID、快照、备份功能,客户需要自己负责数据的持久性,与Block一样,执行基于Block的协议,提供SLA。如图2-2,如果使用本地NVMe,并且选择密集型I/O shapes,将可以得到约300万IOPS。
2-2
File Storage
文件存储,是一种分层的文档集合,这些文档被组织到各个名称目录中,而这些名称目录本身即是结构化文件,听起来即是我们经常在笔记本创建的一层层文件夹目录,不同之处在于分布式文件系统使得分布式体现与本地文件系统完全相似,如图3-1,右边是一个文件系统,我们有以root开头的文件夹,这些文件夹形成Unix,现在采用分布式形成此文件系统概念,在最常见的两个文件标准NFS(Network File System)和SMB(Server Message Block)中,它们受Unix和Windows支持,可以使用创建、删除、读取、写入、共享和锁定功能,这些标准由所有主要操作系统和管理程序支持,所以不像我们所了解的,NFS只受Linux支持,SMB只受Windows支持,另外不需要额外的客户端软件,也提供网络访问。
3-1
文件存储服务,如图3-2,提供一个共享位置形成共享文件寻相互系统,可以在其中编写文件,支持NFS v.3分布式文件系统,数据保护方面提供快照功能,安全方面在所有文件处于静态或者传输中全程加密,用例包括Oracle应用程序如EBS,可以通过多个多个实例写入到集群文件系统中,高性能计算,大数据分析,通用文件系统,如NAS(Network Attached Storage)可用云文件系统代替,其实我们日常工作中经常使用到的远程存储系统,每个人可以保存备份、共享项目文件存储诸如此类即是可以用它来代替。
3-2
文件存储服务的高持久性,在图3-3中可以看出在实例都无法使用时,文件系统依然可用,存储服务本身会在三个不同故障域中复制文件,另外在有效空间和时间点备份的文件快照提供只读文件来获取信息,这样意外删除文件也能也能找出快照来进行恢复,可以使用cp或者rsync命令还原快照中的某个文件或者整个快照。
3-3
Object Storage
对象存储,在任何类型的内容都可以作为对象进行存储管理,如图4-1
4-1
特点:
每个对象都存储于存储桶(Bucket)中,桶是用于存储对象的逻辑容器。
对象存储是在没有文件夹层次结构的单个平面结构中,意味着进行访问单个对象时,既快又非常容易。
每个对象由对象本身和对象元数据组成,这使得索引和访问数据更加容易。
对象存储在基于云的场景中很常见,因为它具有很高的扩展性和可靠性。
对象存储依赖于标准的HTTP 方式,而文件存储和Block可用于操作系统(通过装载操作),这是完全不同的访问机制。
对象存储服务,
一个互联网规模的高性能存储平台。
非常适合存储无限量的非结构化数据(图像、媒体文件、日志、备份)。
区域服务,不依赖于任何特定的计算实例。
提供两种不同的存储类别,“热”存储(标准),“冷”存储(归档)。
用例包括,定位于内容存储库,用于存储数据、图像、日志和视频等;归档/备份更长的时间;存储日志数据以进行分析和调试/故障排除;存储大数据集(基因组数据、物联网);用作大数据/hadoop的存储。
对象存储服务具有高持久性和耐用性,如图4-2,对象存储将数据副本存储在可用域的3个单独的故障域中,在一个区域拥有多个可用域时,它将数据副本存储在多个可用域中,主动监视数据完整性并且在检测到损坏的数据时能自动修复。
4-2
对象存储服务层次结构,如图4-3,分为标准存储层和归档存储层,
标准存储层快速,即时和频繁访问;数据检索是即时的,检索时始终提供数据的最新副本,无法将标准存储bucket降级为归档存储。
归档存储层,对于很少访问的数据,必须将其长时间保留,然后再次获取;它比标准存储便宜10倍;90天最短保留期;检索数据时不同于标准层,限制在于,在归档层下载之前需要还原对象,并且发出请求后的第一个字节返回时间为4小时;归档存储层也无法升级至标准存储层。
4-3
OCI Storage Services
如图5-1,是OCI中存储服务的一些对比,如本地存储不具有持久性,而文件存储具有持久性,归档使用场景为长期归档和备份等,访问权,本地和块基于块访问权,而文件是文件权,对象存储为对象级别权限;结构本地和块存储为数据块进行编号并保存,而文件存储为分层存储,对象存储为非结构化存储;耐久性,本地存储非耐久性,实例不可用挂掉,则本地存储挂掉,但是重新引导时仍然存在,而块存储最重要的是高耐久性,在可用域保留三个副本,在文件存储和对象存储中也是高耐久性;容量和用例已在每个单元详细,请参考图。
5-1