亚马逊、Facebook 和谷歌每天的数据量肯定达到 TB 甚至 PB,那么这是否意味着他们会让人不断地在新的机架中安装新硬盘和电缆,就像构建常规服务器一样,还是他们使用了不同的技术来批量连接驱动器?
答案1
答案2
Google 拥有多项内部开发的技术,用于存储这些海量数据。利用这些技术,他们实际上可以在集群中添加大量硬盘,而无需停机,但他们仍然需要人工来做这件事。
据我从 Google 博客中了解到的情况,两个主要部分是 Google 文件系统,这是一个可扩展到真正大规模的分布式文件系统:Google 文件系统
在 Google 文件系统之上,他们拥有 Big Table,它是某种键值数据库,也可以扩展到巨大的规模:大桌子
为了保证高可用性,所有事情都冗余多次,大多数情况下冗余次数超过 3 次。
答案3
完全正确。我记得 Facebook 数据中心曾经平均每天增加三辆装满硬盘和机架式服务器的拖车。当然,他们有复杂的方案来使存储可扩展和冗余。例如,谷歌已经政府金融服务局Facebook 有三个数据中心仅用于其设备,每个都比两个沃尔玛还大,而他们计划新建的一个数据中心比现有的中心大四倍。
答案4
这是 BackBlaze 的一篇有趣的博客文章,介绍了他们如何做到这一点(他们可能不需要像 Google 或 Facebook 那样多的磁盘,但仍然需要很多磁盘),以及当泰国发生洪水导致硬盘价格昂贵且更难获取时他们需要做什么:
http://blog.backblaze.com/2012/10/09/backblaze_drive_farming/