这是我第一次接触计算机方面的学术论文,和预料之中一样的难以理解。三篇论文中,大部分观点都无法明白,一方面是因为论文中的专业术语太多,另一方面应该是我自身水平太低了。因此,虽说是三篇论文的读后感,实质上我只是描述一下论文里看得明白的一点内容,也许里面会有错误,那我感到很抱歉,请多多指教。
三篇论文分别论述了Bigtable、CFS和MapReduce。
简单的说,Bigtable是一个分布式的结构化数据存储系统,类似于数据库,不过设计了新的数据管理模式。Bigtable是如何实现这个数据管理模式的?这应该是论文中值得我们学习和探讨的部分,但是我看不明白。另外,论文中提到,Bigtable的适用性广泛,具有可扩展、高性能和高可用性。适用性广泛很好理解,Bigtable可以满足不同的产品需求,有的需要处理大量数据、有的要求及时性……这些Bigtable都能适用。可扩展指Bigtable能够处理PB级别的数据,并且运用于上千台机器,这是论文中的描述。开始看时我没什么感觉,后来查了一下PB的定义,知道了那是什么级别的。这里引用一句话形象的说明一下——800个人类记忆相当于1个PB,应该是Raymond Kurzweil说的?至于高性能和高可用性的表述,大概算是Google对Bigtable变相的夸奖。
GFS是一个面向大规模数据密集型应用的、可伸缩的分布式文件系统,从Google对其的定义上看,GFS也是与数据存储有关的,不过与管理数据的Bigtable不同,它用于文件管理。Google设计GFS应该也是为了大数据的存储,不过它也支持小文件。还有一个比较特别的地方,GFS能够监控自身状态,对一些失效的组件自动恢复。论文也提到,GFS通常在文件尾部追加数据来进行修改,这部分没理解。
MapReduce是一个编程模型,用于大数据的并行计算,具体一点,论文中有表述,“一个典型的MapReduce计算往往由几千台机器组成、处理以TB计算的数据。”论文中提及了MapReduce的实现,虽然看完了,但并没有看明白什么,就不描述了。
关于Bigtable、CFS和MapReduce的论文自然还有其他内容,很遗憾的是,其余的内容我并没有看明白,所以只写到这里。这也是我第一次写博客,如果有什么不足或做得不对的地方,请帮我指出来,我会非常感激的。