设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

十八款Hadoop工具帮你驯服大数据

2013-12-13 14:43| 发布者: joejoe0332| 查看: 8054| 评论: 0|原作者: 核子可乐译|来自: 51CTO.com

摘要: Hadoop已经通过自身的蓬勃发展证明,它不仅仅是一套用于将工作内容传播到计算机群组当中的小型堆栈--不,这与它的潜能相比简直微不足道。这套核心的价值已经被广泛证实,目前大量项目如雨后春笋般围绕它建立起来。有 ...


  Avro



  当Hadoop作业需要进行数据共享时,我们完全可以使用任何一种数据库加以实现。但Avro是一套序列化系统,能够利用一定模式将数据整理起来并加以理解。每一个数据包都附带一种JSON数据结构,用于解释数据的具体解析方式。这种数据头会指定数据结构,从而避免我们在数据中编写额外的标签来对字段进行标记。如此一来,当共享数据较为规律时,其体积将比传统格式(例如XML或者JSON)更为紧凑。


  上图所示为针对某个文件的Avro处理模式,其中分为三种不同字段:姓名、最喜欢的数字与最喜欢的颜色。


  Avro同样属于Apache项目的组成部分,其代码拥有Java、C++以及Python等多个语言版本。


  官方网站:avro.apache.org


  Oozie



  将一项作业拆分成多个步骤能够让工作变得更为简单。如果大家将自己的项目拆分成数个Hadoop作业,那么Oozie能够以正确的顺序将其组合起来并加以执行。大家不需要插手堆栈调整,等待一个堆栈执行结束后再启动另一个。Oozie能够按照DAG(即有向无环图)的规范对工作流加以管理。(环图相当于无限循环,对于计算机来说就像一种陷阱。)只需将DAG交给Oozie,我们就可以放心出去吃饭了。


  上图所示为来自Oozie说明文档的一幅流程图。Oozie代码受到Apache许可的保护。


  官方网站:oozie.apache.org


  GIS工具



  咱们生活的世界相当广阔,因此让运行Hadoop的集群与地理地图协作也是项难度很高的任务。针对Hadoop项目的GIS(即地理信息系统)工具采用多种基于Java的最佳工具,能够透彻理解地理信息并使其与Hadoop共同运行。我们的数据库将通过坐标而非字符串来处理地理查询,我们的代码则通过部署GIS工具来计算三维空间。有了GIS工具的帮助,大家面临的最大难题只剩下正确解读"map"这个词--它到底代表的是象征整个世界的平面图形,还是Hadoop作业当中的第一步、也就是"映射"?


  上图所示为说明文档中关于这些工具的不同层级。目前这些工具可在GitHub上进行下载。


  下载地址:http://esri.github.io/gis-tools-for-hadoop/


  Flume



  数据收集这项任务绝对不比数据存储或者数据分析更轻松。作为又一个Apache项目,Flume能够通过分派"代理"以收集信息并将结果保存在HDFS当中。每一个代理可以收集日志文件、调用Twitter API或者提取网站数据。这些代理由事件触发,而且可以被链接在一起。由此获得的数据随后即可供分析使用。


  Flume项目的代码受Apache许可保护。


  官方网站:flume.apache.org



酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部