ZFS文件系统ARC缓存
zfs使用心得

zfs使用心得【原创实用版3篇】目录(篇1)1. ZFS 简介2. ZFS 的特点3. ZFS 的使用方法4. ZFS 的优点5. ZFS 的缺点6. 总结正文(篇1)1. ZFS 简介ZFS(Zettabyte File System)是一种高性能、可扩展的文件系统,主要用于存储大量数据。
ZFS 是由 Sun Microsystems 公司开发的,现在由 OpenZFS 社区维护。
ZFS 的特点是数据完整性高、可扩展性强、性能优秀,因此在企业级存储领域得到了广泛应用。
2. ZFS 的特点ZFS 具有以下几个显著特点:(1)数据完整性:ZFS 支持数据校验和,可以检测和修复数据错误,保证数据的完整性。
(2)可扩展性:ZFS 支持无限大的文件系统,可以存储大量数据。
(3)高性能:ZFS 具有高效的磁盘 I/O 调度算法,可以提高系统的磁盘吞吐量。
3. ZFS 的使用方法要使用 ZFS,首先需要在操作系统中安装 ZFS 模块。
在 Linux 系统中,可以通过安装 zfs-tools 软件包来获得 ZFS 支持。
在 FreeBSD 系统中,ZFS 已经被集成到内核中,无需额外安装。
目录(篇2)1.ZFS 简介2.ZFS 的主要特点3.ZFS 的实际应用4.ZFS 的未来发展前景正文(篇2)【ZFS 简介】ZFS(Zettabyte File System)是一种用于管理大规模数据的文件系统,最早由 Sun Microsystems 公司开发。
ZFS 的主要特点是数据可靠性高、可扩展性强以及性能优越。
它能够提供大量的数据存储和处理能力,因此非常适合用于企业级服务器和大型数据中心。
【ZFS 的主要特点】1.数据可靠性:ZFS 采用了一种名为“数据完整性”的技术,可以确保数据的完整性和可靠性。
即使在硬盘故障或者意外断电的情况下,ZFS 也能够自动修复数据,确保数据的安全。
2.可扩展性:ZFS 可以轻松地扩展到数百 TB 甚至数 PB 的存储空间,满足大规模数据的存储需求。
ZFS存储池类型

ZFS存储池类型:Stripe、Mirror、RAIDZ使用ZFS 卷管理器创建ZFS 存储池时,可以指定存储池的结构(类型),更具体的说就是可以指定存储池所采用的软磁盘阵列的类型。
不同类型的磁盘阵列,面向不同的使用场景,性能和可靠性亦是各不相同。
下面列出了FreeNAS 系统中可以设置的所有ZFS 存储池类型,以及设置每一种磁盘阵列所要求的最少硬盘数。
∙Stripe:与RAID 0 类似,传说中的带条,需要至少一块硬盘。
∙Mirror:与RAID 1 类似,磁盘镜像,需要至少两块硬盘。
∙RAIDZ1:与RAID 5 类似,一重奇偶校验,需要至少三块硬盘。
∙RAIDZ2:与RAID 6 类似,双重奇偶校验,需要至少四块硬盘。
∙RAIDZ3:三重奇偶校验,独门秘籍,需要至少五块硬盘。
∙log device (ZIL):高速写缓存设备,需要至少一个专用的存储设备,推荐使用SSD 固态硬盘。
∙cache device (L2ARC):高速读缓存设备,需要至少一个专用的存储设备,推荐使用SSD 固态硬盘。
除去log device (ZIL)和cache device (L2ARC)这两种专用高速缓存设备不谈,在这里列举一下其余类型的性能和可靠性对比。
性能对比Stripe > MirrorStripe > RAIDZ1 > RAIDZ2 > RAIDZ3数据可靠性Mirror > StripeRAIDZ3 > RAIDZ2 > RAIDZ1 > StripeSolaris ZFS 快照和克隆使用指南zfs快照概述:快照是文件系统或卷的只读副本。
快照几乎可以即时创建,而且最初不占用池中的其他磁盘空间。
但是,当活动数据集中的数据发生更改时,快照通过继续引用旧数据占用磁盘空间,从而阻止释放该空间。
ZFS 快照具有以下特征:■可在系统重新引导后存留下来。
■理论最大快照数是264。
zfs 参数

ZFS 参数什么是ZFS?ZFS(Zettabyte File System)是一种先进的文件系统和逻辑卷管理器,它在存储管理方面提供了许多独特的功能和优势。
ZFS最初由Sun Microsystems开发,并在2005年以开源软件的形式发布。
它被设计用于处理大容量、高性能和高可靠性的存储需求,并具有自我修复和数据完整性保护等关键功能。
ZFS 的参数在使用ZFS时,我们可以通过调整一些参数来优化其性能和功能。
下面是一些常见的ZFS参数及其作用:1. ashiftashift参数指定了磁盘扇区大小的对数值。
默认情况下,它设置为9,表示512字节扇区大小。
如果您使用的是4KB扇区大小的磁盘,应将ashift设置为12。
正确设置ashift可以提供更好的性能和空间利用率。
2. recordsizerecordsize参数定义了每个文件记录(或块)的大小。
默认情况下,它设置为128KB。
根据不同的工作负载,您可能需要调整此值以获得最佳性能。
3. compressioncompression参数指定了数据压缩算法。
ZFS提供了多种压缩算法可供选择,包括lz4、gzip、zle等。
通过启用压缩,您可以节省存储空间并提高读写性能。
4. atimeatime参数控制是否记录文件的访问时间。
默认情况下,它设置为on,表示每次访问文件时都会更新访问时间。
如果您对访问时间不感兴趣,可以将其设置为off以提高性能。
5. syncsync参数指定了数据同步策略。
默认情况下,它设置为standard,表示数据会在写入磁盘之前进行同步。
如果您对数据的持久性要求不高,可以将其设置为disabled以提高写入性能。
6. primarycache 和 secondarycacheprimarycache参数定义了ZFS文件系统的主缓存策略,默认设置为all,表示所有读取都从内存中进行。
secondarycache参数定义了ZFS文件系统的二级缓存策略,默认设置也是all。
zfs 参数

zfs 参数ZFS(Zettabyte File System)是一种文件系统,它是由Sun Microsystems为FreeBSD、OpenSolaris和illumos 等操作系统开发的。
ZFS是一种高性能、可扩展的文件系统,它具有许多优秀的特性,如数据完整性、可扩展性、高可用性等。
在ZFS中,有许多参数可以配置和调整,以优化文件系统的性能和可靠性。
以下是一些常用的ZFS参数:1.ashift:这个参数用于设置文件系统簇(block)的大小,它决定了文件系统能够支持的最大文件大小。
通常,较大的簇大小可以提高文件系统的性能,但会减少磁盘空间的利用率。
2.checksum:这个参数用于设置文件系统的校验和算法,它可以确保文件数据的完整性。
ZFS支持多种校验和算法,如CRC32、SHA256等。
3.compression:这个参数用于设置文件系统的压缩算法,它可以减少磁盘空间的占用。
ZFS支持多种压缩算法,如LZJB、ZLE、Zstandard等。
4.dedup:这个参数用于设置文件系统的重复数据删除功能。
当多个文件具有相同的内容时,ZFS可以将其合并,以节省磁盘空间。
5.logbias:这个参数用于设置文件系统日志的偏斜度,它可以影响日志的性能和磁盘空间的利用率。
6.spa_size:这个参数用于设置文件系统的最大存储空间,它决定了文件系统能够存储的最大数据量。
7.spd_max:这个参数用于设置文件系统的最大I/O并发数,它可以影响文件系统的性能。
8.txg_timeout:这个参数用于设置文件系统事务组的超时时间,它可以影响文件系统的可靠性和性能。
以上仅是ZFS的一些常用参数,实际上还有很多其他的参数可以调整和配置。
在使用ZFS时,需要根据实际情况选择合适的参数配置。
更灵活,更易用 — ZFS storage 统一存储介绍

<Insert Picture Here>更灵活,更易用-----Oracle ZFS St 更灵活 更易用 O l Storage 统一存储介绍存储需求持续大幅度成长P PBFile Based: 79.3% CAGRSource: IDCBlock based: 31% CAGR2存储需求持续大幅度成长Greater Demand For Storage Capacity And Performance2009 New Digital Data2020 New Digital Data44X Growth800 Exabytes 35,000 Exabytes•© 2010 Oracle Corporation – Proprietary and Confidential3定义存储效率(Storage Efficiency) ( g y)• 使用最低成本来进行数字数据的存放 保护及管理 使用最低成本来进行数字数据的存放、保护及管理 • 可降低数据中心的电力 散热及空间成本 可降低数据中心的电力、散热及空间成本4存储已经成为数据中心 最大的成本提高存储效率数据中心最迫切的需求• 数据存储的效率必须提高• 根据调查用户将其一份资料重复存放超过15份 • 政府法规对数据保留需求持续上升• 数据重复删除及数据压缩是关键需求• 有50%的IDC响应目前有使用数据重复删除的需求• 电力、散热及机架空间效率是不可缺少的评估要点 • 存储集中化是客户IT计划里面排名前10名的重点项目5Oracle ZFS Storage 统一存储系统重新定义统一存储系统(Unified Storage)• 同时提供文件(File)及数据块(block)服务 ( ) ( )• 只要买一套硬件,一个价格,一次提供10种数据通讯服务• 内置先进的数据服务• 集群(Clustering),远程数据复制(Replication), 快照( Snapshot),数 据复制(Cone),数据重复删除(Deduplication),数据压缩 (Compression),自动精简配置(thin provisioning),闪存(Flash), (Compression) 自动精简配置(thin provisioning) 闪存(Flash) 在 线实时分析功能( Analytics),病毒扫描(Virus scan)• 可选择不同的主机接口(interconnect)• 可同一台机器安装以太网接口(Ethernet), 光纤 (Fibre channel)及 Infiniband• 可选择的应用程序• Oracle Solaris或Linux, Windows, virtualization•66Oracle ZFS Storage g全新第二代统一存储系统•标准功能 •内含所有主流通讯协议 •7120 •7320 •内含先进的数据服务功能 •入门型l • • 入门型l •7420 •单控制器机型 支持操作系统及应用程序 •单控制器机型 •Oracle Solaris • Oracle Enterprise Linux •高扩充能力机型 •支持集群功能 •Oracle VM • VMware • Windows •Oracle数据库、 Oracle Middleware及Oracle应用程序等 支持超过50种以上的商业应用程序 •7720 • 新的产品特点 •高密度存储机型 •密度及容量:可集中化存储容量最大可达1PB •支持集群功能 •闪存容量倍增: 最大可达4TB读取闪存及432GB写入闪存 •更多的运算能力: 每个控制器最大可达32个核,效能比前一代提升50%•77完整的存储功能下列功能皆包含在ZFS Storage上-不需额外付费购买 Storage上 不需额外付费购买数据通讯协义• Fibre Channel • iSCSI • Infiniband over IP/RDMA • iSER • SRP • NFS v3 and v4 • CIFS • HTTPNew! • WebDAV数据服务数据管理• FTP • ZFS NDMP v4• Browser and CLI Interface • Single, Double & Triple Parity RAID (RAIDZ, Z2, Z3) • Management Dashboard • Mi Mirroring & Triple Mirroring i T i l Mi i • Hardware/component view • Hybrid Storage Pool • Role-based Access Control • End-to-End Data Integrity • Remote Replication • Phone Home • Snapshots and Clones • Event and Threshold based • Quota(s) Alerting • In-line Dedup • Dtrace Analytics • Compression • Scripting • Thin Provisioning • Antivirus via ICAP Protocol • Workflow Automation • Online Data Migration New!Advanced Networking • • Clustering g •DFS Standalone New! Namespace •Source Aware Routing•Oracle Internal and Confidential8内置先进的存储技术提供更高的使用效率进一步让存储系统更有效率 • 内置重复数据删除技术(in-line, Deduplication) • 降低整体数据存放的存储空间 • 内置数据压缩(Compression) • 整合重复数据删除技术让空间使用更加有效率 • 内置存储自动精简配置(Thin-provisioning) • 能够有效的满足客户端容量需求并优化存储系统的空间使用率 • 内置混合存储池架构(Hybrid Storage Pools, HSPs) • 整合内存,闪存及大容量硬盘科技降低电力及机架空间的需求 • 内置多样先进的数据保护功能(D 内置多样先进的数据保护功能(Data P Protection capabilities) i bili i ) • 快照+数据远程复制,允许3块数据盘故障的RAID-Z3等先进数据 保护功能9Oracle先进的重复数据删除技术让使用存储 空间上更有效率• 实时重复数据删除:当数据产生时就进行重复数据删除操作 实时重复数据删除 当数据产生时就进行重复数据删除操作• 当友商存储系统使用重复数据删除操作时,必须是采用列表(Schedule)方式并于背景模 式(POST)下运作,会大幅降低存储效能 • Sun ZFS存储系统因为有强大的运算处理器及内存可以实时进行重复数据删除功能• Oracle重复数据删除使用256-bit的检查更严谨• ZFS存储系统的重复数据技术采用256位同位检查(256-bit checksum)比起竞争友商的 重复数据技术只采用16位同位检查(16 bit 重复数据技术只采用16位同位检查(16-bit checksum)更加严谨• Oracle重复数据删除可以于更大的文件系统上运作• ZFS存储系统的数据重复删除技术可以在单一576TB的文件系统上运作,比竞争友商的 存储系统的数据重复删除技术只能在单一16TB的文件系统上运作更有效率• Oracle采用数据块(Block-level)进行重复数据比对• 数据块比文件的重复数据删除技术对于虚拟主机的使用环境上更有效率10内置ZFS数据压缩功能驱动更高的效率及效能• 内置ZFS压缩功能• 减少整体磁盘使用空间• 客户实际使用各种不同非结构化数据的应用程序验证,确实可以大幅度减少整体磁盘使用空间 • 一般情况下有2倍压缩率 (或50%空间减少)• 减少整体数据量,提高有效输出带宽(Throughput)• 不仅是节省存储空间,还提升了存储系统效能 • 数据压缩功能启动时可以让数据快速读写,减少存取(I/O)频率• 可以与数据重复删除功能一起使用有加倍的效果• 提供无与伦比的硬件处理能力11•玛拉基.麦凯布 玛拉基 麦凯布 •(Malachi McCabe) •经理 Signature Styles • 信息管理部门 •Signature Styles Signature “我们看到于ZFS统一存储系统可以对公司内的非结构化数据提供多达 我们看到于ZFS统 存储系统可以对公司内的非结构化数据提供多达 73%的数据压缩比例”12ZFS混合存储池于存储集中化的环境下提供效能且帮助客户省钱• ZFS混合存储池可以智能判断数据使用状况及自动 在内存,闪存及磁盘之间迁移 • 不断优化存储系统性能和效率–优化 $/GB/s及 $/IOP 效能 • 管理单一混合存储池是非常简单的•内存 •(DRAM) •写入用 闪存(ZIL)•读取闪存 (L2ARC)“我最感兴趣的是,混合存储池提供不亚于内存等级 的速度(或称接近内存等级的效能)来存取Oracle 能 数据库内的数据。
arc缓存算法

arc缓存算法
ARC(Adaptive Replacement Cache)是一种用于缓存替换算法
的高级算法,它结合了最近使用(LRU)和最少使用(LFU)两种算
法的优点,以适应不同的访问模式和数据特性。
ARC算法由IBM研
究员Nimrod Megiddo和Dharmendra S. Modha于2003年提出,是
一种自适应的缓存算法,能够根据访问模式和数据特性自动调整缓
存大小和替换策略。
ARC算法将缓存分为两个部分:T1和T2。
T1是最近使用的数据
集合,类似于LRU算法,当缓存未命中时,新数据会被放入T1中。
T2是最频繁使用的数据集合,类似于LFU算法,当T1中的数据被
频繁访问时,会被移动到T2中。
当缓存替换时,ARC算法会根据T1
和T2中的数据访问情况来决定替换哪些数据,以最大程度地提高缓
存命中率。
ARC算法还引入了两个参数:p和c。
p参数用于控制T1和T2
的大小,当T1的命中率高时,p会增加;当T2的命中率高时,p会
减少。
c参数用于控制T1和T2之间的替换策略,当T1和T2的命
中率接近时,c会增加;当T1和T2的命中率差距较大时,c会减少。
总的来说,ARC算法通过综合考虑最近使用和最频繁使用两种
算法的特点,以及根据访问模式和数据特性自动调整缓存大小和替
换策略,能够有效地提高缓存命中率,减少缓存替换的开销,提高
系统性能。
ARC算法在实际应用中已经被证明具有很好的性能表现,被广泛应用于各种存储系统和数据库系统中。
第07章_ZFS文件系统

ZFS组件命名规则 ZFS组件命名规则
不允许空组件 每个组件只能包含字母数字字符以及以下四个特 殊字符: 殊字符: 下划线 (_) 连字符 (-) 冒号 (:) 句点 (.) 池名称必须以字母开头, 池名称必须以字母开头,但不允许使用起始序列 c[0-9]。此外,不允许使用以mirror、raidz或 c[0-9]。此外,不允许使用以mirror、raidz或 spare开头的池名称, spare开头的池名称,因为这些名称是保留的 开头的池名称
8 北京万博天地网络技术股份有限公司 版权所有
部署ZFS硬件环境 部署ZFS硬件环境 # touch /reconfigure /reconfigure文件的创建会迫使 /reconfigure文件的创建会迫使Solaris在启 文件的创建会迫使Solaris在启 动的时候检查是否存在新安装的硬件 关闭电源,插入新磁盘。如果使用的是SCSI 关闭电源,插入新磁盘。如果使用的是SCSI 磁盘要确保所添加的磁盘与系统中的其他 设备具有不同的目标号码; 设备具有不同的目标号码;然后重新启动 计算机 # format 进入系统后,调用format命令检查新磁盘 进入系统后,调用format命令检查新磁盘 的状态, 的状态,以确定要操作的磁盘
第七章
ZFS文件系统 ZFS文件系统
本章目标 了解ZFS文件系统的特点 了解ZFS文件系统的特点 掌握配置ZFS的基本方法 掌握配置ZFS的基本方法
2
北京万博天地网络技术股份有限公司 版权所有
本章内容
7.1 ZFS 文件系统概述 ZFS 文件系统概述
7.2 ZFS文件系统的使用 ZFS文件系统的使用
3
北京万博天地网络技术股份有限公司 版权所有
PVE解决ZFS内存高占用ARC

PVE解决ZFS内存⾼占⽤ARC简介:由于使⽤的是淘汰⼯作站,都不算什么服务器,所以使⽤了ZFS的软raid⽅案来保证数据安全。
但是ZFS太先进了,⽽且当年是为sun的⼯作站设计的,所以它使⽤了⼤量的内存来做数据缓存。
我这⼩鸡可承受不住这个内存消耗,直接要消耗⼤约50%的物理内存。
我们要根据⾃⼰的实际情况,来对ARC缓存进⾏限制。
⼀:zfs arc缓存介绍算了吧,搜了⼏个介绍,都是⼜臭⼜长的理论⽂章。
我简单说⼀下吧,硬件raid卡会有缓存,还有电池,保证raid的数据稳定。
zfs的raid,就像软raid,通过计算机的计算来实现raid,但是缓存从哪⾥来?内存啊,速度⽐硬盘快的多,⽽sun的 Solaris,以前就是怪物⼀样的超级⼤内存,所以ZFS在设计的时候,就很耗内存,移植到linux之后还带着这样的基因,占⽤50%的物理内存做zfs缓存。
⼆:检查内存占⽤反正我的16G内存⽼鸡,就占了⼀半多⼀点,系统还得占点。
cockpit,pve,这两个的管理页⾯都能看到。
三:设置arc最⼤内存这就是ZFS允许减⼩允许使⽤ARC⼤⼩的最⼤⼤⼩的原因。
此设置在/etc/modprobe.d/zfs.conf⽂件中完成。
例如,如果您希望ARC永远不要超过32 GB,请添加以下⾏:options zfs zfs_arc_max=34359738368我设置为1Goptions zfs zfs_arc_max=1073741824简单设置命令为:echo“options zfs zfs_arc_max = 1073741824”>> /etc/modprobe.d/zfs.conf根据你的物理内存,⾃⼰计算吧,1G:1*1024*1024*1024*1024如果根⽂件系统也使⽤了ZFS,你必须在每次修改该参数后更新initramfs,如下:update-initramfs –u四:测试效果反正我的是从8G多变成1G多了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
减少ZFS文件系统ARC缓存的方法减少ZFS文件系统ARC缓存的方法
1. ARC缓存简介
ZFS文件系统是Solaris 11系统的默认文件系统,ZFS文件系统简介可见附录。
ZFS使用在内存中建立缓存的方式来提升性能,这种做法在海量数据时尤为有效。
ZFS的缓存使用ARC(Adjustable Replacement Cache)算法,它是基于IBM的Megiddo和Modha提出的ARC 淘汰算法演化而来的。
所以这个缓存通常被称为ARC缓存。
Solaris系统中有两个内核参数来限制ARC缓存的大小:
zfs_arc_min:确定ARC缓存的最小大小,设置单位为字节。
默认64MB。
zfs_arc_max:确定ARC缓存的最大大小,设置单位为字节。
默认在内存少于4 GB的系统上为物理内存的75%,在内存大于4 GB的系统上为物理内存减去1 GB。
这两个内核参数都是使用容量单位来设定的,并不能根据物理内存的大小来自动调节,所以在Solaris 11.2系统上增加了一个内核参数,使用百分比来设定:
user_reserve_hint_pct:设置留给应用程序的物理内存百分比。
查阅Oracle官方文档,并没有给出详细的说明,经试验,默认值应为0,且zfs_arc_min、zfs_arc_max参数依然有效,即user_reserve_hint_pct参数确定的ARC缓存占用量低于zfs_arc_min时,取zfs_arc_min的容量;高于zfs_arc_max时,取zfs_arc_max的容量。
该参数在Solaris 11.2之前的系统中不存在。
2. 内存占用情况及产生的问题
使用以下命令可以查看内存使用明细:
echo “::memstat” | mdb -k
在一台16GB的机器上,进行大量IO操作后(充分建立缓存),运行以上命令,如下图:
可以看到“ZFS File Data”一项占据了8.1GB之多,使用51%的物理内存。
ARC缓存是弹性的,其设计思想是尽量多地使用空闲内存来加速(其实Windows Vista之后的版本也使用类似的思想),当有程序申请内存时,释放ARC缓存来满足程序的需求。
这样的机制看上去没有什么问题,而且在大型机及海量数据的情况下的确是一个很好的解决方案。
但是这都是为高性能机器准备的,在我们公司使用的四路、两路服务器上也没什么问题,但是到了E32这类低成本方案的机器(4GB内存,奔腾CPU,性能不及我们的笔记本)上就可能导致内存不足。
原因是:应用程序申请较大内存时,ARC缓存来不及释放,导致应用程序申请内存失败而出现错误。
如果是Oracle数据库申请内存失败,则会导致数据库退出;如果是系统核心进程申请内存失败,则会导致系统重启或卡死。
3. 建议的配置方法
通常,仅需在4GB内存的低成本机器上进行配置。
上文已经讲了相应的内核参数,所以在不同的系统上可以进行不同的设置,以下方法均已验证有效。
3.1. Solaris 11.2之前的版本(比如Solaris 11.0)
通过设置zfs_arc_max内核参数来限制ARC缓存使用量,修改/etc/system文件,在最后加入新的一行,内容如下:
set zfs:zfs_arc_max=100000000
含义是将ARC缓存的最大内存使用量限制在100MB(数字不是很精确)。
4GB内存的机器建议使用这个限制值,其他内存的机器可以不设置,或放宽到数百兆,或几GB,视自己需求。
3.2. Solaris 11.2
Solaris 11.2提供了user_reserve_hint_pct内核参数,这是一个更好的方法。
也是修改/etc/system 文件,在最后加入新的一样,内容如下:
set user_reserve_hint_pct=80
含义是将80%的物理内存留给程序,因为是百分比,所以在不同内存的机器上都可以这么设置。
3.3. 验证
可以使用kstat -m zfs命令查看c_max属性的值,即zfs_arc_max,但此命令无法查看user_reserve_hint_pct内核参数的作用。
最直接的验证方法为进行大IO操作(比如复制一个大文件),然后使用上文的echo “::memstat” | mdb –k命令查看“ZFS File Data”的内存使用量。
4. 附录
4.1. ZFS文件系统简介
ZFS文件系统的英文名称为Zettabyte File System,是第一个128位文件系统,可以说是当前最
先进的文件系统,在文件系统的发展史上具有划时代意义。
ZFS最初是由Sun公司为Solaris操作系统开发的文件系统,之后Sun公司开放了其源代码,鉴于ZFS的优异特性,它已经被迁移至Free BSD、Net BSD、Mac OS等Unix系统,以及众多的Linux 发行版本。
简要来说,ZFS的先进性表现在:
➢支持ZB级的超大容量。
一个存储池支持256ZB,最大支持2^64个存储池。
这也是为什么叫“ZFS”的原因。
➢跨越了物理存储设备。
在ZFS之前的文件系统都是被禁锢在物理设备之中的,而ZFS划时代地使用“存储池”的概念来管理物理存储空间。
一个存储池最大可以拥有2^64个卷(比如硬盘)。
➢使用一种写时拷贝事务模型技术以及完备的校验和技术,支持自优化,自动校验数据完整性。
Sun甚至没有为ZFS提供文件系统检查工具,因为不需要。
➢RAID-Z技术,文件系统即可组成RAID。
➢极强的伸缩性,易于管理。
➢优秀的性能,较ext3文件系统约有30%-40%的提升。