Hadoop学习之内容概览

Background:第一次接触hadoop,之前总听说,也早早的列了学习计划,中途间间断断的看了官网文档,买了本书,太厚了,只看了封皮。终于今天有时间和兴趣,初窥门径,赶紧记下来。

Hadoop是什么?就是Apache Hadoop,一个大数据技术框架,Big Data一般指就是它了。

解决什么问题?这个也许是我最关系的问题了,其实官方文档里面没有讲太多,都是技术细节,这个就要搜索了。大概比较满意的答案是说,非结构化的数据,比如网页搜索引擎的检索结果,数据量很大的时候,用传统的数据库存储和处理就不太合适了,需要换个思路,就是Hadoop的思路,解决这类问题的。所以有时被贴上NoSQL的标签,其实和SQL没什么对立。参考:https://www.oreilly.com/ideas/what-is-hadoop

工作原理是啥?这个就是要研读官方文档了,也是最需要花时间的地方,这边就简单归纳一下吧。

大概分两块,基础软件包和开发接口。基础软件包是讲运行环境的搭建、安装、部署,是一个分布式文件系统,即HDFS,工作原理比较复杂,但技术核心也在这里。开发接口是讲怎么用的,Hadoop其实是面向技术人员的,是一个技术框架,所以落地是怎么用,就是MapReduce,这个接口需要运行在HDFS之上的,必须配套使用。

HDFS工作原理

HDFS Architecture

看上去比较复杂,的确复杂,不过和SAP NW思路有类似的地方,Datanodes可以理解为真正存数据的地方,类似于NW的servernode,Namenode可以理解为控制怎么存数的地方,类似于NW的message server和enqueue server。里面的Datanode里面绿色的block应该是划分的物理空间大小,比如128MB一个块。Client就是用户了,写操作是写多个地方的,读操作是读一个地方的。HDFS有冗余机制判断写多个地方成功几个算成功,好处就是不怕单点故障,这就是分布式的好处。并且HDFS有数据复制机制,增加数据存储的可靠性。

MapReduce工作原理

其实MapReduce即使一个Hadoop Job工作的2个阶段,第一个阶段是定义问题,就是Map,把Text中要关心的数据的Key定义出来。第二个阶段就归纳问题,就是Reduce,Job跑完Map接口后会跑Reduce,会基于Map阶段定义的Key Value,对相同的Key进行合并,所以合并完,结果集里面Key基本唯一了,复杂的场景可能要跑多轮,比如多个Reducer同时Reduce,第一轮每一个Reducer拿到的Map都是不全的,Reduce一遍之后,再集中Reduce一遍,得到最终的结果集,这是后Key就唯一了,任务就完成了,数据就可以被使用或消费了。

结尾,底层很多复杂的细节不再深究了。比如为了管理这套东西,提供的专门的一套命令行工具,就是Common。还有YARN,实现了资源和应用的全局管理。

 

 

世界有时有点shit

世界有时又点shit,是最近萦绕在心头的想法。左思右想,越想越觉得有道理,还挺有意思。

shit 1 挣钱的活不累人,累人的活不挣钱。这是一位沙特打工人士告诉我的。

shit 2 累人的活order不多,order多的活不累人。这是自己亲身体验。有些豪的nice的国外客户,上线支持排很多,还没事。有些客户有些活,亲自去了现场加班加点的,才给一半。国内客户少数抠门的甚至抠小时算。

shit 3 制度不完善的社会下的生活,不就是这样嘛。穷人辛辛苦苦只能温饱。有钱人玩玩资本运作,轻松割羊毛。越守规矩的人越亏。

人们一直追去美好,误以为世界就是美好的,其实不是的呀。因为不好,所以才有事做,让它变好。所以人生下来应该是填坑的,这些坑是历史留下来的,从一个没有人类社会的起点留下来的。

人的开心也来自于让世界变得更好一点点。

2018新年快乐

最近一直加班,春节到了,在这里也和世界问一声好,2018,新年快乐!

完成阅读《深入剖析Tomcat》

实际上很早就开始读这本书了,只不过中间又去先读了别的书,所以现在才读完。

读这本书的起源是先前想了解tomcat源码,下载了tomcat的源码阅读,但是发现源码很多,直接阅读起来十分困难,很是费力,于是想找一找,有没有一本书可以帮助阅读源码,于是找到了这本书。

归根到底,这本书还是围绕着tomcat源码开展的,源码阅读是十分费力的,所以常常有些章节也是粗略略过,总体上看的不是十分细致,勉强看完。不过现如今也是不求甚解,故到此告一段落。

扛住

一切恁不死你的怪都是经验。

要凭自己的努力留在一线城市,就需要付出常人多的努力。你的敌人四面八方,千奇百怪。煎熬是家常便饭,些许的平静就是喘气机会好好休息。你会很累,时常失落,找不到生活的目标和意义。

当你千疮百孔还没死时,默认回首时,就是旅行的终点,可以放心的闭上眼睛,好好的安息了。

习惯性不争嘴风,习惯性不解释,但也习惯性玩命说到做到,玩命的拼搏。曾经聒噪的人,嘴上赢你的人会安静下来。想要化嫉妒、打击、仇恨为赞叹的唯一做法就是超越一个数量级。

技术道路需要坚持,需要默默,需要心态好,需要兴趣热爱,需要执着。不需要别人的评价。只为了终点的一瞬间的绽放,需要毕生的默默耕耘。足矣。

境界

有一种境界就是。自以为是,自以为善良,自我感觉良好,以为吃了最多苦,找了最多的事,干了最多的活,就可以管别人了。其实必然。

自己没见过的东西,就说不存在。固执,无所谓。

说话说特别绝对,经常反复。幼稚。

世道

未被善待的人更容易识别善良。善良的人也容易成为被伤害的目标。

我一直在小心翼翼的观察这个世界,尽量不去成为自己讨厌的人。

你若选择成为善良,则必然要最好不被善待的准备。你将最吃亏,最倒霉,最不被公平对待,你的利益最容易被人忽略,最容易成为牺牲品,最容易成为炮灰。

不作恶,也可以生存。

流浪

亲情诚可贵,爱情价更高,若为自由故,两者皆可抛。