加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

大数据处理:关于hadoop

发布时间:2021-01-12 01:20:35 所属栏目:大数据 来源:网络整理
导读:Hadoop是一个由Apache基金会所开拓的漫衍式体系基本架构。 用户可以在不相识漫衍式底层细节的环境下,开拓漫衍式措施。充实操作集群的威力举办高速运算和存储。 [1] ??Hadoop实现了一个漫衍式文件体系(Hadoop Distributed File System),简称HDFS。HDFS有
副问题[/!--empirenews.page--]

Hadoop是一个由Apache基金会所开拓的漫衍式体系基本架构。

用户可以在不相识漫衍式底层细节的环境下,开拓漫衍式措施。充实操作集群的威力举办高速运算和存储。

[1]??Hadoop实现了一个漫衍式文件体系(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,而且计划用来陈设在低廉的(low-cost)硬件上;并且它提供高吞吐量(high throughput)来会见应用措施的数据,得当那些有着超大数据集(large data set)的应用措施。HDFS放宽了(relax)POSIX的要求,可以以流的情势会见(streaming access)文件体系中的数据。

Hadoop的框架最焦点的计划就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计较。



1.?得当海量数据的漫衍式存储与计较平台。

海量: 是指 1T 以上数据。

漫衍式: 使命分派到多态假造机长举办计较。

?

2. 多个使命是怎么被分派到多个假造机傍边的?

分派是必要收集通信的。并且是必要启动资源 可能 耗损一些硬件上的设置。

单 JVM 存眷的怎样『处理赏罚』,而不是交给其他人举办处理赏罚这个 『打点』的进程。? 以是最开始有两个要害的字? 『得当』,

只有当数据量高出 1T 的大数据处理赏罚才气凸显 hadoop 的上风;??? 虽然,用 hadoop 处理赏罚 几十G、几百G 这种小数据也是可以的,只是浮现不了 hadoop的上风而已,从硬件的角度,从服从的角度都是不太值得的。

3.Hadoop Ecosystem Map?? Hadoop生态体系图

大数据处理赏罚:关于hadoop

像其他框架一样,hadoop 也是分层的,? 序号③? ⑤ 就是 hadoop 中重要的构成, HDFS 认真数据存储。MapReduce 是海量数据的漫衍式计较框架。

Structured Data(hiho,sqoop)?是 hadoop 中对传统数据和 hadoop中数据彼此转化的器材。传统数据库中的数据可以导入到 hadoop中。hadoop中的数据也可以导入到传统的相关型数据库中。

HBASE?是 hadoop顶用的最多和最重要的子项目之一。虽然它也是构建于 MapReduce 和 HDFS 之上的。不外 HBASE 可以不基于 HDFS ,只是假如不基于 HDFS时就无法行使 MapReduce 计较框架了。是处理赏罚大数据读写操纵的,尤其得当一些大型在线体系。

大数据有两层寄义:第一层寄义,大数据有本身的结构形态,key-value方法。? 其它一层寄义,就是各人领略的海量数据。 之以是能成为 大数据 是由于 他是? key-value的构建方法。

HDFS


HDFS: Hadoop Distributed File System 漫衍式文件体系

文件体系? 是一套接口,一套平台。是用于打点文件的存储与操纵的。

HDFS文件体系,是用于打点漫衍式文件的存储与操纵的。HDFS 就为我们提供了一套机制,让海量数据可以或许漫衍在差异的计较机上。他提供言外知音就是 我们不消体谅数据是怎么存储的,HDFS 认真存储这件工作。这是我们行使 hadoop 的一个重要的缘故起因,他帮我们屏障掉一些漫衍式操纵的一些细节。

MapReduce



MapReduce? : 并行计较框架

漫衍式体系中有许多台呆板,每一台呆板存储数据的一部门,我们行使 hadoop 之以是可以或许很快的计较得出功效,缘故起因很简朴 我们计较的代码会在差异的呆板上运行, 每一台呆板完成计较的一部门,由于每台呆板上存储的只是我数据的一部门。多台呆板并行计较。然后把计较功效网络过来得出最终的功效。这是Hadoop 之以是块的来源。以是 MapReduce 是我们要研究很是重要的焦点,? HDFS 的操纵是hadoop 框架屏障掉的,以是我们首要是去进修怎么去行使它。作为开拓而言,聚焦到焦点的焦点,必定是 MapReduce。 由于 MapReduce 是计较框架。也就是说数据已经存储了,我怎么计较它,这在任何一个框架中都是一个较量焦点的题目。虽然也是最有技能含量的题目。以是 假如进修hadoop 的话,有须要具体研究 MapReduce 的架构、行使、源代码等等全部的焦点环节。

?

C# 行使 Hadoop


一、安装情形

1,前期筹备:官网下载“NuGet Package Manager”,按本身已有的VS情形下载对应版本;

2,操作NuGet下载Hadoop?For .NET SDK,地点“http://hadoopsdk.codeplex.com/”

3,安装。

4,通过HDInsight,安装Windows Azure,今朝是预览版本。

5,参照网址“http://blogs.msdn.com/b/data_otaku/archive/2013/08/14/hadoop-for-net-developers.aspx” 体系进修API

?

二、测试DEMO

?

[csharp]?view plaincopy

  1. using?System;??

  2. using?System.Collections.Generic;??

  3. using?System.Linq;??

  4. using?System.Text;??

  5. using?System.Threading.Tasks;??

  6. using?Microsoft.Hadoop;??

  7. using?Microsoft.Hadoop.MapReduce;??

  8. using?Microsoft.Hadoop.WebClient.WebHCatClient;??

  9. using?System.Diagnostics;??

  10. using?System.IO;??

  11. using?System.IO.MemoryMappedFiles;??

  12. ??

  13. ??

  14. namespace?HadoopConsol??

  15. {??

  16. ????class?Program??

  17. ????{??

  18. ????????static?void?Main(string[]?args)??

  19. ????????{??

  20. ????????????Stopwatch?sw?=?new?Stopwatch();??

  21. ????????????long?hadoopTime=0;??

  22. ????????????long?normalTime=0;??

  23. ??

  24. ????????????sw.Start();??

  25. ??

  26. ????????????//start?hadoop??

  27. ????????????Console.WriteLine("?????Hadoop?Process?Strating?....");??

  28. ?

  29. ????????????#region?Hadoop?time??

  30. ?

  31. ????????????#region?hadoopconnet??

  32. ??

  33. ????????????Console.WriteLine("?????Hadoop?Connect?Strating?....");??

  34. ??

  35. ????????????//establish?job?configuration??

  36. ??

  37. ????????????HadoopJobConfiguration?myConfig?=?new?HadoopJobConfiguration();??

  38. ??

  39. ????????????myConfig.InputPath?=?"/demo/simple/in";??

  40. ??

  41. ????????????myConfig.OutputFolder?=?"/demo/simple/out";??

  42. ??

  43. ??

  44. ??

  45. ????????????//connect?to?cluster??

  46. ??

  47. ????????????Uri?myUri?=?new?Uri("http://localhost");??

  48. ??

  49. ????????????string?userName?=?"hadoop";??

  50. ??

  51. ????????????string?passWord?=?null;??

  52. ??

  53. ????????????IHadoop?myCluster?=?Hadoop.Connect(myUri,?userName,?passWord);??

  54. ??

  55. ????????????hadoopTime?+=?sw.ElapsedMilliseconds;??

  56. ??

  57. ????????????Console.WriteLine("?????Hadoop?Connect?End.");??

  58. ??

  59. ????????????Console.WriteLine("?????Hadoop?Connect?time:"?+?sw.ElapsedMilliseconds);??

  60. ?

  61. ????????????#endregion??

  62. ?

  63. ?

  64. ????????????#region?hadoopmapreduce??

  65. ??

  66. ????????????sw.Reset();??

  67. ????????????sw.Start();??

  68. ??

  69. ????????????Console.WriteLine("?????Hadoop?MapReduce?Strating?....");??

  70. ??

  71. ????????????//execute?mapreduce?job??

  72. ??

  73. ????????????MapReduceResult?jobResult?=??

  74. ??

  75. ????????????????myCluster.MapReduceJob.Execute<MySimpleMapper,?MySimpleReducer>(myConfig);??

  76. ??

  77. ????????????hadoopTime?+=?sw.ElapsedMilliseconds;??

  78. ??

  79. ????????????Console.WriteLine("?????Hadoop?MapReduce?End.");??

  80. ????????????Console.WriteLine("?????Hadoop?MapReduce?Time:"+sw.ElapsedMilliseconds);??

  81. ?

  82. ????????????#endregion??

  83. ?

  84. ????????????#region?Hadoop?End??

  85. ??

  86. ????????????sw.Reset();??

  87. ????????????sw.Start();??

  88. ??

  89. ????????????Console.WriteLine("?????Hadoop?Endprocess?Strating?....");??

  90. ??

  91. ????????????//write?job?result?to?console??

  92. ??

  93. ????????????int?exitCode?=?jobResult.Info.ExitCode;??

  94. ??

  95. ??

  96. ??

  97. ????????????string?exitStatus?=?"Failure";??

  98. ??

  99. ????????????if?(exitCode?==?0)?exitStatus?=?"Success";??

  100. ??

  101. ????????????exitStatus?=?exitCode?+?"?("?+?exitStatus?+?")";??

  102. ??

  103. ????????????Console.WriteLine();??

  104. ??

  105. ????????????Console.Write("Exit?Code?=?"?+?exitStatus);??

  106. ??

  107. ????????????Console.WriteLine("?????Hadoop?Endprocess?End.");??

  108. ????????????hadoopTime?+=?sw.ElapsedMilliseconds;??

  109. ????????????Console.WriteLine("?????Hadoop?Exit?Time:"?+?sw.ElapsedMilliseconds);??

  110. ????????????Console.WriteLine("?????Hadoop?Process?All?Time:"?+?hadoopTime);??

  111. ????????????#endregion??

  112. ?

  113. ????????????#endregion??

  114. ?

  115. ?

  116. ????????????#region?Normal?time??

  117. ????????????//start?Normal??

  118. ????????????Console.WriteLine("?????Normal?Process?Strating?....");??

  119. ??

  120. ????????????sw.Reset();??

  121. ????????????sw.Start();??

  122. ??

  123. ????????????//normal?process??

  124. ????????????#region?Normal?Process??

  125. ??

  126. ????????????int?myevenCount?=?0;??

  127. ????????????int?myeventSum?=?0;??

  128. ??

  129. ????????????int?myoddCount?=?0;??

  130. ????????????int?myoddSum?=?0;??

  131. ??

  132. ????????????StreamReader?fs?=?new?StreamReader(@"c:TEMPintegers.txt");??

  133. ??

  134. ????????????while?(fs.Peek()?>=?0)??

  135. ????????????{??

  136. ????????????????string?strTemp?=?fs.ReadLine();??

  137. ????????????????if?(Int32.Parse(strTemp)?%?2?==?0)??

  138. ????????????????{??

  139. ????????????????????myevenCount++;??

  140. ????????????????????myeventSum?+=?Int32.Parse(strTemp);??

  141. ????????????????}??

  142. ????????????????else??

  143. ????????????????{??

  144. ????????????????????myoddCount++;??

  145. ????????????????????myoddSum?+=?Int32.Parse(strTemp);??

  146. ????????????????}??

  147. ????????????}??

  148. ???????????????//MemoryMappedFile?m?=?MemoryMappedFile.??

  149. ????????????Console.WriteLine("even:"?+?"t"?+?myevenCount?+?"t"?+?myeventSum);??

  150. ????????????Console.WriteLine("odd:"?+?"t"?+?myoddCount?+?"t"?+?myoddSum);??

  151. ?

  152. ????????????#endregion??

  153. ??

  154. ????????????Console.WriteLine("?????Normal?Process?End.");??

  155. ??

  156. ????????????normalTime?+=?sw.ElapsedMilliseconds;??

  157. ????????????Console.WriteLine("?????Normal?Exit?Time:"?+?sw.ElapsedMilliseconds);??

  158. ????????????Console.WriteLine("?????Normal?Process?All?Time:"?+?normalTime);??

  159. ?

  160. ????????????#endregion??

  161. ??

  162. ????????????sw.Stop();??

  163. ??

  164. ????????????Console.Read();??

  165. ??

  166. ????????}??

  167. ??

  168. ????}??

  169. ??

  170. ????public?class?MySimpleMapper?:?MapperBase??

  171. ????{??

  172. ??

  173. ????????public?override?void?Map(string?inputLine,?MapperContext?context)??

  174. ????????{??

  175. ??

  176. ????????????//interpret?the?incoming?line?as?an?integer?value??

  177. ??

  178. ????????????int?value?=?int.Parse(inputLine);??

  179. ??

  180. ????????????//determine?whether?value?is?even?or?odd??

  181. ??

  182. ????????????string?key?=?(value?%?2?==?0)???"even"?:?"odd";??

  183. ??

  184. ????????????//output?key?assignment?with?value??

  185. ??

  186. ????????????context.EmitKeyValue(key,?value.ToString());??

  187. ??

  188. ????????}??

  189. ??

  190. ????}??

  191. ??

  192. ????public?class?MySimpleReducer?:?ReducerCombinerBase??

  193. ????{??

  194. ??

  195. ????????public?override?void?Reduce(??

  196. ??

  197. ????????????string?key,?IEnumerable<string>?values,?ReducerCombinerContext?context??

  198. ??

  199. ????????????)??

  200. ????????{??

  201. ??

  202. ????????????//initialize?counters??

  203. ??

  204. ????????????int?myCount?=?0;??

  205. ??

  206. ????????????int?mySum?=?0;??

  207. ??

  208. ??

  209. ??

  210. ????????????//count?and?sum?incoming?values??

  211. ??

  212. ????????????foreach?(string?value?in?values)??

  213. ????????????{??

  214. ??

  215. ????????????????mySum?+=?int.Parse(value);??

  216. ??

  217. ????????????????myCount++;??

  218. ??

  219. ????????????}??

  220. ??

  221. ??

  222. ??

  223. ????????????//output?results??

  224. ??

  225. ????????????context.EmitKeyValue(key,?myCount?+?"t"?+?mySum);??

  226. ??

  227. ????????}??

  228. ??

  229. ??

  230. ????}??

  231. } ?

    来历2:http://blog.csdn.net/lansetiankong12/article/details/51086581

    来历1:http://www.cnblogs.com/qq-757617012/archive/2016/11/28/6110623.html

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读