ZFS文件系统与Sun.pdf

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ZFS 文件系统和Sun x4500 数据服务器在互联网行业 的应用 Xinfeng.liu@ 2008 年 6 月 简介 在 Web 2.0 的时代,互联网上的数据呈现了爆炸性的增长。大型互联网客户迫切需要一种 大容量、廉价、节省空间的存储解决方案。Sun Fire x4500 服务器结合 Solaris 的ZFS 文件系统 很好地满足了这种需求。 Sun Fire X4500 服务器可以提供四路 x64 服务器的卓越性能,最多可在 4U 机架空间内提 供 48 TB 最高密度存储。该系统包含 2 个双核 AMD Opteron 处理器,16G 内存,并内置了 6 个 SATAII 的磁盘控制器,48 块热插拔的磁盘,以及 4 个千兆网口。该系统可以提供高数据 吞吐量,而成本只是传统解决方案的一半。 Solaris 10 包含的ZFS 文件系统是对传统文件系统的一次革命性的创新设计,ZFS 解决了 文件系统的完整性、安全性和可伸缩性以及管理困难等重要难题。ZFS 文件系统是世界上第 个 128 位的文件系统,其存储容量和文件数量几乎只受硬件的限制,非常适合互联网上的大数 据量的应用。而且ZFS 文件系统的 checksum 和transactional 的操作方式实现了端对端的数据 安全,减少了为保证数据的高可靠性对昂贵硬件的依赖,大大降低了存储成本。另外,ZFS 文 件系统的管理非常简便,采用了存储池的管理,并包含了传统的卷管理器的功能,但无需传 统卷管理器的复杂的命令操作。由于ZFS 的独特设计,ZFS 文件系统无需mount ,无需fsck , 无需journaling ,大大地简化了日常维护。 ZFS 文件系统已包含在 Solaris 10 或 opensolaris 中,无需另外下载并且是免费的和开源的。 本文主要介绍 ZFS 文件系统和 Sun x4500 服务器作为互联网上文件服务器的典型应用和优 化。其内容包括: ● ZFS 文件系统的特点和调优 ● ZFS 文件系统的部署规划建议 ● Sun x4500 作为文件服务器的系统调优 ZFS 文件系统的特点和调优 ZFS 文件系统在设计上与传统的文件系统有很大的不同。我们需要对ZFS 的几个基本概念有 所了解: Record Size Record Size 也就是通常所说的文件系统的block size 。ZFS 采用的是动态的 Record Size ,也就 是说 ZFS 会根据文件大小选择*适合*的512 字节的整数倍作为存储的块大小,最大的Record Size 为 128K 。通常没有必要手工设置Record Size 。如果手工把Record Size 调小,将不会得 到空间的节省,并且常常会影响性能。ZFS 的Block 是计算 checksum 的单位,一个文件用到 的block 越多,计算 checksum 以及维护metadata 的开销就会越大。 目前ZFS 的版本下,只有一种情况需要手工调小Record Size :大文件上的小数据量的更新。 常见的情况是数据库的数据文件在ZFS 上,并且是做OLTP 为主的应用。原因是大文件的 blocksize 是 128K ,如果只更新其中一小部分数据,由于ZFS 是 copy-on-write 的方式来更新 数据,这种情况下仍然要读写128K 的数据,造成了不必要的开销。 另外,修改了Record Size 后,对之前创建的文件不起作用。 ARC (Adaptive Replacement Cache) 这实际上是 ZFS 的文件系统的cache。它是一个可以自动伸缩的 cache。目前一个操作系统实 例里只有一个 ARC ,不管这个操作系统上有多少个ZFS Pool 。而且metadata 和实际的数据都 共用这个ARC 。 如果没有其它应用或操作系统本身争用内存,ZFS 会尽可能多地使用物理内存作为 cache。如 果事先知道应用程序或操作系统需要使用多少内存,可以考虑限制ARC 的大小。在/etc/system 中设置,例子:set zfs:zfs_arc_max=0x200000000 (设置 ARC 最大为 8G

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档