GFS是一个面向大规模数据密集型应用的、可伸缩的分布式文件系统。它为Google的数据存储在其主要功能上进行了性能的优化。它需要大量的chunkserver和一个master。它是一个功能完善且强大的专业性的存储平台
它的原理理解起来就是:文件被分割成很多块,使用冗余的方式储存于商用机器集群上。GFS是多层分布的,通过大量的文件块服务器来被诸多用户访问。每个文件块在不同的chunkserver上都会有备份,提高了容错率。
GFS垃圾回收采用惰性回收策略。 当删除文件时,GFS不会立即回收资源,而是记录下这项操作,并为文件重新命名(隐藏名字),如果不找回,三天后才会删除掉隐藏文件。我们熟悉的百度云,迅雷等软件也是这样的,然而它的好兄弟HDFS却是暴力的直接删除,一点通融的机会都不给。
我理解的MapReduce就是map负责发任务,然后通过一堆计算机进行执行任务,最后reduce来将任务回收。通过一个任务分成多个小任务,在发送给多台电脑进行处理最后在汇总,这样一来,节省了大量的时间。其中分配任务的map是最复杂最累的,它需要考虑很多问题。
BigTable是一个以GFS为底层架构的分布式数据存储系统,用来处理海量的数据的一种非关系型的数据库。它可以快速可靠的处 理PB级别的数据。
Bigtable包含三个角色分别是lip、master、tablet。Master服务器负责为Tablet服务器分配Tablet兼具负载均衡并检测新加入或者过期失效的Tablet服务器对保存在GFS上的文件进行垃圾收集,同时还可以在master上进行处理模式的修改。每个Tablet服务器都管理很多很多Tablet。每个Tablet服务器负责处理它所加载的Tablet的读写操作,以及在Tablets过大时,将其分割。无论何时一个tablet只能被分割给一个tablet服务器,而master则会进行追踪记录。
通过读Google的三大论文,让我对人工智能的兴趣更浓厚了,为以后的学习打下了坚实的基础。