Storage

共 11 篇文章。

购买二手硬件的一些人生经验

Hardware

以往我是不直接在 eBay 上购买二手硬件(这不包括美国比较常见的「翻新refurbished」硬件, 这类卖家往往是比较专业的回收处理机构)的,原因是购买此类硬件多少有点像拆盲盒: 二手硬件的质量往往缺乏统一且一致的标准,并且通常只提供较短的退货窗口。

不过 上回书 说到我收了一台二手的 Dell R640 服务器,既然选择了消费降级索性一降到底试试看买二手内存和存储。

阅读全文… ( 本文约 1668 字,阅读大致需要 4 分钟 )

MeetBSD CA 2012流水账

Development

昨天是会前的开发人员峰会,参加的人基本都是 src/ committer。我参加的讨论是 安装、虚拟化和存储。关于安装程序,目前基本的共识是 bsdinstall 需要重做(基本上 bsdinstall 是个 drive-by commit,作者现在态度是管杀不管埋,bug很多),而先前 Devin Teske 所做的 bsdconfig (目前未接入 world 联编,试了一下太 XX 复杂和强大了)和 DruidBSD 有很多东西可以添到安装程序中,而一票 committer 也已经为他撑腰,所以应该问题不会太大。

阅读全文… ( 本文约 972 字,阅读大致需要 2 分钟 )

#lspe之Disks

Hardware

今天去 Y! 参加了 #lspe 的一个交流会。

比较感兴趣的项目是之前了解过但仔细看过的 FlashCache,这是 Facebook 搞的一个 SSD 加速模块,原理不复杂,是在文件系统下面做上一层集关联(set-associative)高速缓存,提供了LRU和FIFO两种淘汰方法。这次 Mohan Srinivasan 讲解的时候提到了以前公开发表的讲稿上没有的一个内容—-按线程id/线程组id去做的黑白名单,并对MySQL进行了修改,令其在扫描表时不做cache。从使用的角度,这个不失为一个不错的折衷方法。

阅读全文… ( 本文约 621 字,阅读大致需要 2 分钟 )

ZFS dedup初步测试

Kernel

最近做一个存储的项目,顺手在家测试了一下实际数据的dedup。操作系统是 FreeBSD 8.2 配合一组总共大约3MB的patch来跑ZFS v28,硬件是 Atom D510 配合 4G 内存。

阅读全文… ( 本文约 667 字,阅读大致需要 2 分钟 )

对齐操作和非对齐操作

Kernel

操作是否对齐是一个简单而容易忽略的性能(有时是可靠性)问题。对齐主要是指读写操作不产生不必要地跨越存储设备上原生存储单元的访问,这里的存储单元说的是在访问路径上的任何设备,它可以是外存,也可以是内存,甚至是CPU附近或内建的快取缓存,等等。

阅读全文… ( 本文约 1145 字,阅读大致需要 3 分钟 )

FAST 2010第一天

Development

今天去参加了在San Jose举行的 FAST ‘10 第一天的 Tech Session,FAST是 USENIX 主办的关于文件和存储技术的学术会议。记上几笔。

开场的Keynote其实讲的还算精彩,不过感觉跟会议本身关系不大(讲的主要是发展中国家的手机等设备的发展),就不介绍了。

Build a Better File System and the World Will Beat a Path to Your Door部分。第一个是本次的获奖论文 quFiles: The Right File at the Right Time,具体来说是实现了同一份data(文件)的不同view(例如,将其表现成不同分辨率、码流等)的一种通用的存取方法。个人对Semantic File System持保留态度,不过这个talk还是可以帮助拓宽一下思路。

第二篇是介绍在 WAFL 类型的文件系统(具体举例是 btrfs) 中实现倒排索引的 Tracking Back References in a Write-Anywhere File System。具体来说,是在 inode -> 块这样的单向关系基础上,增加了块->inode(包括inode版本、回收时间等)的倒排索引。paper值得看但是性能比较做的稍微有些瑕疵(用做B-Tree的时间去比较在FS中查询的时间,而没有比较建立倒排索引之后更新与在block中插入信息所引起的开销,以及两者对应的查询时间)。

第三篇指出了内存故障可能导致的问题,指出 ZFS 的 end-to-end 检查只能检测出磁盘介质或控制器偶然故障引起的问题,而系统主存中存在的问题则无法发现并可能导致数据损坏甚至系统崩溃,并提出了在 ext2 FS 中增加运行时checksum检查的方案。这篇的试验方法和结论受到了很多人的质疑。

午饭时间。

阅读全文… ( 本文约 1339 字,阅读大致需要 3 分钟 )

文件系统与大扇区

Kernel

大扇区(超过旧式标准的512字节扇区)是改善硬件工艺或访问方式以后的一种直接提高存储密度的方法。对于磁介质来说,其盘片被分成若干的磁道(通常是同心圆)、每个磁道分成若干的扇区或称扇段,扇区是磁盘读写时的最小操作单元。对于基于闪存的存储设备而言,扇区则是一种模拟传统磁盘的概念。

阅读全文… ( 本文约 1218 字,阅读大致需要 3 分钟 )

Howard's comments on FreeBSD Architectural

Development

Here:
还是让我来诠释一下吧:

1.决不引进新的文件系统,除非有人能证明我们现有的文件系统无法存储某种文件.

2.看清谁是我们的用户和看清楚谁不是我们的用户一样重要,我们要让我们的用户时刻"充满希望",我们的用户都是乐观向上地,他们只要能看到 将来 我们有可能 在现有基础架构上 实现 和 现在 别人的用户 正在 使用的功能 的希望 就满足了.

3.我们决不会闭门造车,你看,我们要统一"raid frame"的 雄心 就是 被 那个 一直饱受(翻译的话请使用过去将来进行时)“Adaptec SCSI Host raid"折磨的用户 所激励地.

4.如果我们 能 建议用户不加载ACPI模块 并 能让那些 被那个蹩脚的ACPI奴役的 用户们 接受 我们的建议 的 话, 那么我们也许最好干脆不去解决现在的ACPI问题了, 因为我们 需要 再次地 去 完整地 理解 一下新版本的ACPI呀.

5.请看,我们只用了10%的努力去维护几个论坛和邮件列表 就 出色地解决了每个RELEASE版本中90%的默认配制下的BUG, 这是个更多么简单的解决方案啊.

6.我们用PORTS把用户从复杂的第三方软件安装操作中隔离并解救出来,用户只需要简单地make install就可以啦….什么?你想在编译之前加一些配制参数?你完全可以把我们映射过的参数放到环境变量中啊…..什么?我们映射出来的参数不全…这可真是遗憾啊,不好意思啦,没有参考文档,还是请您自己研究一下Makefile文件吧,我们相信你的实力,您是完全可以自己搞明白Makefile文件中的那些变量的.

7.我们提供了很多的功能和机制以及大量的参数,我们相信您可以根据您的实际应用总结出一套配制方案.这样对您是很有好处的,因为通过这个配制过程,您可以总结出一套适合自己的策略,这样您所实现地应用就会比那些不了解您的"策略"的人所实现的应用更加出色,而且您还可以比别人"更会"使用我们的XxxxXXX.

阅读全文… ( 本文约 895 字,阅读大致需要 2 分钟 )