数据库文件存储DBFS企业版简介
1. SAN同享架构
1.1 SAN介绍
现在常用三种存储架构:直连式存储(DAS)、存储区域网络(SAN)、网络接入存储(NAS)。其中SAN(Storage Area Network)存储局域网络,它是一种经过光纤集线器、光纤路由器、光纤交换机等衔接设备将磁盘阵列、磁带等存储设备与相关服务器衔接起来的高速专用子网。SAN 架构首要包含:高速网络 (LAN)、Servers 服务器群、高度整合的储域办理软件、高容量及高速存储设备、SAN Devices(包含Hub、Switch、将Servers与Storage device整合为存储资源环境)。全体架构首要分为核算节点和IO节点,如下图所示:
IO节点作为一个全体经过IP网络为一切核算节点(运用服务器)提供数据存储服务,且IO节点之间一般选用节点间同享的FC-SAN存储,另外需装备SAN同享(文件体系)软件。
SAN(存储区域网络)的优点是具备大容量存储设备的数据同享、低时延高吞吐、灵敏的存储设备装备、数据的可靠性和安全性高级。当然缺点也十分显着:
- 不是全体一致的解决方案,一般至少需求装备SAN同享软件、IO节点服务器、光纤交换机、FC磁盘阵列,建立体系和后期办理维护本钱较高。
- 扩展容量时比较杂乱,需求重新做LUN规划,绑定映射等动作,为了确保访问速度,需求一起添加IO节点服务器和FC磁盘阵列,扩容本钱较高。另外不支撑在线不停事务扩容以及扩容后数据负载均匀迁移到各磁盘阵列,导致各磁盘阵列负载不均衡。
- FC磁盘阵列选用传统RAID数据保护机制,数据重建速度慢,一起支撑的硬盘损坏数有限,并且RAID信息有丢掉危险。
- FC磁盘阵列设备本身如果有毛病,会导致整个体系瘫痪甚至数据丢掉。
- FC与IP协议转化效率低,IO节点服务器之间无并行性,即一个IO请求只能有一个IO节点服务器来处理,不能有多个IO节点一起处理。
近十年随着各行各业市场的快速增加,带来数据规划的空前开展,对存储的容量弹性,易用性,安全性等提出了十分高的要求,一起用户对存储本钱的控制愈加趋于灵敏。传统SAN的架构杂乱,本钱高,布置周期长,运维本钱高级问题就变得愈加的杰出。近年云核算的鼓起,尤其是RDMA、NVMe等硬件技术的开展,时延大幅下降,根据大规划网络构建并且支撑多点挂载的同享云盘,成为下一代的低时延同享存储,来替代传统的SAN存储成为可能。
1.2 根据SAN的构建
结合SAN技术特性及其在很多职业的成功运用,在具有以下事务数据特性的企业环境中适合选用SAN技术,大体散布如下:
典型职业 |
典型事务 |
特色 |
电信、金融和证券 |
计费 |
对数据安全性要求很高的企业 |
电视台、交通部门和测绘部门 |
音频/视频、石油测绘和地理信息体系等 |
对数据存储功能要求高的企业 |
各中大型企业 |
ERP体系、CRM体系和决策支撑体系 |
在体系级方面具有很强的容量(动态)可扩展性和灵敏性的企业 |
图书馆、博物馆、税务和石油 |
资料中心和历史资料库 |
具有超大型海量存储特性的企业 |
银行、证券和电信 |
银行的事务会集和移动通信的运营支撑体系(BOSS)会集 |
具有本质上物理会集、逻辑上又互相独立的数据办理特色的企业 |
各行各业 |
企业各分支机构数据的会集处理 |
完成对涣散数据高速会集备份的企业 |
商业网站和金融 |
电子商务 |
数据在线性要求高的企业 |
大型企业 |
数据中心 |
完成与主机无关的容灾的企业 |
从以上各职业来看,互联网及电子商务的数据字化与云原生化程度最高,因其职业较新可直接选用云原生架构进行。其它职业,因构建于传统的SAN存储,而云端尚没有与之相匹配的同享块存储,云化率比较低,因而存在着巨大的市场时机。
从上层软件上区分,首要为集群数据库、中间件以及其它集群运用软件等。如下图所示:
无论是上层的数据库,仍是中间件及SaaS运用软件,都需求根据SAN的同享文件体系来完成集群多节点间的读写高可用。
1.3 SAN同享文件体系
SAN同享文件体系,望文生义便是根据SAN构建的同享文件体系,它有几个显著的特色:
- 文件语义,是一个文件体系,一般完成POSIX文件协议。
- 同享读写,多个节点能够一起读写一份存于SAN的数据。
- I/O Fence,能够快速处理同享节点的毛病,确保数据的读写正确性。
一般这种文件体系业界统称为集群文件体系,因为构建于其上的数据库或者运用都是一个集群体系。数据库的叫数据库集群,如Oracle RAC集群。运用的叫运用集群,如Web Logic等。
2. 集群文件体系
2.1 现状分析
集群文件体系,现在商业化较成功产品,如Veritas Cluster File System、阿里云的数据库文件存储DBFS企业版等。开源的产品,如OCFS2、GFS2等。当传统的SAN被同享云盘(如阿里云同享ESSD等)替代后,而其同享存储文件体系也逐渐被云原生的集群文件体系所替代,如阿里云的数据库文件存储DBFS文件体系。
2.2 竞品分析
对下对各个集群文件体系进行分析:
比较项 |
OCFS2/GFS2 |
ACFS |
Veritas FS |
DBFS |
文件语义 |
兼容POSIX |
部分兼容 |
兼容POSIX |
兼容POSIX |
容量弹性 |
一般小于1TB。 不支撑在线扩容。 |
一般小于10TB。 不支撑在线扩容。 |
一般小于10TB。 不支撑在线扩容。 |
百TB级。 在线扩容。 |
易用性 |
布置杂乱 |
布置杂乱 |
布置杂乱 |
挂载即用 |
生态 |
开源生态。 |
一般仅用于Oracle数据库。商用。 |
商用。 |
商用。 |
高可用 |
分钟级 |
分钟级 |
分钟级 |
20秒 |
功能 |
较差。 |
较好。 |
较好。 |
优秀。针对数据库场景优化。 |
本钱 |
免费 |
license授权 |
license授权 |
收费 |
3. 数据库最佳实践
3.1 Oracle RAC on DBFS
在传统数据库领域,以Oracle RAC在DBFS上的布置为例。
DBFS比较于ASM,有以下优势:
比较项 |
Oracle ASM |
DBFS(数据库文件存储) |
容量 |
10TB级。扩容需求加盘,rebalance的过程中将影响事务I/O,一般需求额定组织体系维护的时间窗口。 |
支撑百TB级。在线扩容,对用户通明。 |
文件类型 |
支撑Voting Disk。不支撑寄存Oracle Home及Oracle Grid的二进制文件。 |
支撑一切文件。支撑寄存Oracle Home及Oracle Grid的二进制文件,数据文件,控制文件,redo文件,OCR及Voting Disk等。 |
易用性 |
感知底层磁盘,需求装备Disk Group及冗余度。 |
持载即用。 |
功能 |
功能好,挨近RAW I/O。 |
功能好,挨近RAW I/O。针对数据库优化。 |
通用性 |
一般仅运用于Oracle数据库场景。 |
支撑POSIX协议的通用数据库文件体系。不只适用于数据库,也可适用于传统其它根据SAN构建的运用集群。 数据库场景:传统数据库如Oracle,SAP HANA等;开源数据库如MySQL,PostgreSQL,MongoDB等。 运用场景:中间件高可用集群及Oracle EBS套件。 |
详细布置细节,请检查“https://help.aliyun.com/document_detail/402340.html”。
3.2 MySQL on DBFS
根据同享存储完成双机高可用,根据一份数据之上完成无数据丢掉的主备库分钟级切换,完成数据库核算节点的serverless。RPO=0,RTO分钟级。关于MySQL数据库,可封闭binary log进一步提高功能。这种布置形状,会还有以下几个收益:
- 高本钱
数据库构建于一主一备两份数据的形式下,存储本钱高。
- 数据不一致
异步或半同步形式下,主库crash后存在主备数据不一致危险。
- 功能差
日志强同步形式下,不光添加网络带宽资源运用,并且影响主库功能。
- 布置与切换杂乱
主备同步装备与布置繁锁,切换杂乱;另外,需确保其它额定组件的高可用。
详细布置细节,请检查“https://help.aliyun.com/document_detail/149749.html”。
除此之外,经过数据库文件存储DBFS完成的原子写,用户态IO、同享读写等特性,以低本钱方式完成高功能。存储核算别离后,完全免除了数据丢掉危险,还会有以下几个收益:
- 高功能
对数据库关键IO的加快提高TPS。经过用户态技术,避免ext4等传统kernel态文件体系因核表里数据拷贝而影响数据库功能。
- 按需扩容
按实践事务需求请求存储空间,数据增加后在线动态扩容,从运用周期上下降存储本钱。
- 原子写
避免数据库因ext4等文件体系不支撑原子写而引入写缺页保护措施导致的IO争用和功能影响。例如,MySQL的DoubleWriteBuffer等。
我有话说: