Article / 文章中心

数据库文件系统DBFS企业版简介

发布时间:2022-02-09 点击数:301

1. SAN同享架构

1.1 SAN介绍


   目前常用三种存储架构:直连式存储(DAS)、存储区域网络(SAN)、网络接入存储(NAS)。其中SAN(Storage Area Network)存储局域网络,它是一种经过光纤集线器、光纤路由器、光纤交换机等连接设备将磁盘阵列、磁带等存储设备与相关服务器连接起来的高速专用子网。SAN 架构首要包含:高速网络 (LAN)、Servers 服务器群、高度整合的储域管理软件、高容量及高速存储设备、SAN Devices(包括Hub、Switch、将Servers与Storage device整合为存储资源环境)。全体架构首要分为核算节点和IO节点,如下图所示:


image

  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存储,而云端尚没有与之相匹配的同享块存储,云化率比较低,因而存在着巨大的商场时机。


从上层软件上划分,首要为集群数据库、中间件以及其它集群运用软件等。如下图所示:

image

无论是上层的数据库,仍是中间件及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

容量弹性

不支撑在线扩容。

<10TB级。

不支撑在线扩容。

<10TB级。

不支撑在线扩容。

百TB级。

在线扩容。

易用性

布置杂乱

布置杂乱

布置杂乱

挂载即用

生态

开源生态。

一般仅用于Oracle数据库。商用。

商用。

商用。

高可用

分钟级

分钟级

分钟级

20秒

功能

较差。

较好。

较好。

优秀。针对数据库场景优化。

本钱

免费

liscense授权。

liscense授权。

收费。


3. 数据库最佳实践

3.1 Oracle RAC on DBFS


在传统数据库领域,以Oracle RAC在DBFS上的布置为例。

DBFS比较于ASM,有以下优势:

比较项

Oracle ASM

DBFS(数据库文件体系)

容量

10TB级。扩容需求加盘,rebalance的过程中将影响事务I/O,一般需求额定组织体系维护的时间窗口。

支撑PB级。在线扩容,对用户透明。

文件类型

支撑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套件。

image

详细布置细节,请检查“https://help.aliyun.com/document_detail/402340.html”。


3.2 MySQL on DBFS

根据同享存储完成双机高可用,根据一份数据之上完成无数据丢掉的主备库分钟级切换,完成数据库核算节点的serverless。RPO=0,RTO分钟级。对于MySQL数据库,可关闭binary log进一步提高功能。


  • 高本钱

数据库构建于一主一备两份数据的形式下,存储本钱高。


  • 数据不一致

异步或半同步形式下,主库crash后存在主备数据不一致危险。


  • 功能差

日志强同步形式下,不但添加网络带宽资源运用,并且影响主库功能。


  • 布置与切换杂乱

主备同步装备与布置繁锁,切换杂乱;别的,需保证其它额定组件的高可用。


image


详细布置细节,请检查“https://help.aliyun.com/document_detail/149749.html”。


除此之外,经过DBFS完成的原子写,用户态IO、同享读写等特性,以低本钱方式完成高功能。存储核算分离后,完全免除了数据丢掉危险。

  • 高功能

对数据库关键IO的加快提高TPS。经过用户态技能,防止ext4等传统kernel态文件体系因核内外数据复制而影响数据库功能。


  • 按需扩容

按实践事务需求请求存储空间,数据增长后在线动态扩容,从运用周期上下降存储本钱。


  • 原子写

防止数据库因ext4等文件体系不支撑原子写而引入写缺页保护措施导致的IO争用和功能影响。例如,MySQL的DoubleWriteBuffer等。