关于2013.12大数据课题的计划

关于课题的计划:名称目前还没有,另外本人电脑没有任何office软件,初期先用这个txt 好表达点。

以后课题的计划,进展,总结均在此文件夹更新。



对于工作时间我分为 12月到1月 3月到4月  4月到5月


12月到1月:这个月主要还是以学习为主,论文,书籍的学习,初步的环境搭建与实践,主要任务是多看多学。
    论文:GFS+map/reduce+bigtable ; 还有后续的引用论文等等等
    书籍: 实战hadoop ;以及涉及到的其他好的书籍的阅读。
    初步的实践:linux操作系统,java开发环境,hadoop环境 等的搭建;写少量的hadoop相关小程序练手

第一周目标:3篇论文+书的前三章。
第一周工作:

1、论文学习
    就看了GFS的论文,并且还没看完,看到中途有点看不懂的感觉。    google重新审视了关于目前所用的旧分布式文件系统,基于从自身实际数据存储需求和处理等目标,设计一套与传统分布式文件系统截然不同的文件系统,即GFS。并且在实践中提到,他们已经部署到相关服务中去,以此证实了该文件系统的价值,从而也才有这篇论文。不愧是以实践驱动型的公司,即使是论文也要有一定规模的实践项目相支撑。
    接下来是他的设计观点:
    *组件的故障常态化:相对于当今大数据的时代,动则上TB的数据处理之迅速,所以对数据的处理的稳定性要求更好,在如此大的数据规模下,发生故障应该是非常非常常见的,我感觉在某种程度上,这样的常态化增强了系统的灵敏度和高稳定性,而不像传统的系统那样面对突发的故障动不动就以宕机的结果呈现出来。
    *把块的单位尺寸增大:文中说面对总量TB级的数据,如果还是以传统KB级的单位块管理的话,实际上是浪费处理效率的。面对大数据的来领,其数据处理的单位块的大小也应该有所变化。
    *数据读写方面的优化集中在大数据的访问上面尤其是读方面:从实际测试的情况看,追加比重写发生的更频繁,并且追加的数据要方面后面数据能够比较方面的读取,我感觉读取是最最频繁的,从数据库的表操作来看也是select是最最常用的,所以如何高效读取(访问)大数据块文件是优化的关键,也可以说把精力集中于此。
    *协同设计或者说放松模型架构适应实际需求:这里我读到的意思感觉就是,google认为就有的文件系统架构过于死板或者固定(也可能是旧模型并没有考虑到现在大数据处理的现状),所以他们觉得对于目前的现状可以把模型改的松弛,使其更倾向于目前的大数据处理。说白了宗旨就是一切为现实的实际而服务,对于已有的教科书式的模型架构如果发现有与现状不契合的没必要强制地去实现这种不契合现状的设计。
    
    接下来是他们设计的猜想:
    *故障常态化:前面所说的系统的高灵敏与高稳定
    *数据单位尺寸变大:更方面现状的大数据量的处理
    *优化大数据的访问(读写,主要是读):这里读到了优化磁头来回偏移的工作,实际上从总的来看这不是新东西了,当时读到这里立马就定位到当初阅读操作系统原理中关于磁盘存储读写文件的工作原理,感觉是把操作系统层的文件系统的优化搬到这里来,感觉不是什么新东西,当然我还没读完这篇论文,不敢妄下定论。
    *上面是读的优化,那这里就是写的优化:写上上面说了主要是追加而不是重写。如果一个进程对应一个追加操作,那么在大数据的应用环境下,必然有无数个追加进程对同一个文件的追加操作,如何解决其不冲突性呢??这里我又定位到数据库原理了,操作系统原理也有,感觉是学好学精基础课程是相当的有好处的而不要盲目地追赶时髦的技术,应用情景太相似了,记得里面有很多方式实现不冲突 什么互斥锁啊,信号量啊等等。
    *最后一点猜想是持续的带宽比低延迟要很重要:我觉得究其原因是现在是分布式的天下,其不同终端不同服务器间的通讯都是要依靠贷款的,旧有的文件系统一般是单个机器下的应用环境所以应该很少有涉及到关于文件系统带宽的影响。而且我觉得以前对应不管是文件系统还是操作系统的实时性,低延迟都研究的非常多了,尤其是航天航空领域。所以现在google似乎是要另辟蹊径,从其他方面作优化,而且他们也说了在实际的现状应用中系统对于延迟的忍受不是非常严格的,这也可以对应到上面他们的设计观点最后一点的宗旨,服务于实际。
2、书籍学习
    大概扫了一下书本的前两章,应为有些地方是关于实践的工作,当时没有linux工作环境,所以就跳过
    基本上了解了下hadoop的历史由来吧,相比较而言我更感兴趣的是它的创始人Doug-Cutting,因为以前稍微用过Nutch和Lucene,感觉此人的开源做的好牛啊。其他的关于hadoop的安这些实践操作的就大概看了下没写看,第二章的hdfs除了他的配置,API没怎么细看外,其他它说的原理方面的感觉跟论文GFS的大致相同总之都是一个大数据的思想。
3、看过书后我才开始进行环境的搭建
    因为当时我电脑上有win7 win8 ubuntu macOS四个操作系统,但现状是win7 win8能用,后面两个系统通通进不去,但是重装ubuntu的话,我又舍不得我在ubuntu上已完成的工作积累,像自己搭建的一套linux电源管理方案cpufreq+sysfsutils,3d的的compiz配置,配置buct的linux下载源等等,所以我花了一天的时间去找回原有的linux,在不损坏当前四个操作系统共存的机制下,至少grub是没被破坏的;最终还是找回了linux,并且能正常启动,至于mac还是encoutered a problem 然后不断地重启进不去系统。
这周的工作基本上就做了这些。
遇到的问题主要是
* 自己在读论文的时候,没有看英文原版,上来就看中文版的GFS,而且看的过程中感觉中文版的看得极其别扭,特别是在涉及到技术细节的地方,很难理解这中文翻译要表达什么,其实当时上来就看得中文版 我已经看到了2.7左右 关于一致性模型的地方,但是到这里实在看不下去了,因为这些技术细节实在没看懂,只是扫了一遍知道有这回事,当然也有可能跟我看论文的一种漫不经心的态度有关,态度不认真,当小说来看可能也有这方面的因素在里面;最后放弃纯看中文版,因为再看下我根本不知道他在讲什么,所以自己又重头看英文原版,看到不懂的单词自己查翻译等等,这其中的过程的确是浪费了比较多的时间。
* 对于一些底层的基本的实现,还有术语,机制等等不是很了解,比如什么一致性模型,网络通信的一些机制,数据访问读写的细节,原子性操作等等;这可能跟各种底层原理基础课程没有学深有关系,到时候还得多问问相关的知识,更要把这些课程重新拿来学深才好。
* 对于论文的担忧:现在论文我只看了他的总览思路等等,涉及到具体细节设计的地方还没看,不会到时候看到这里又是一头雾水吧。。。


第二周目标:(假想:希望能够读完GFS这篇论文吧,希望,希望;另外结合那本实战书的阅读和现有的操作系统环境的实践,逐步地把系统环境真正地架起来)
第二周工作:




    
3月到4月:这个月应该要明确自己要做个什么东西出来了,并且要实现。

    实现:软件工程的一套,需求 设计 文档 实现等等。



4月到5月:鉴于完成的成品写论文。
    论文:写论文,查论文 再学习
    实践:在论文的写作过程中,可能有维护,二次编码一类的东西把。





现在是精确到月的计划设定,不足的地方请指正。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值