设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 开源资讯 查看内容

LinkedIn开源高可用Hadoop工具集Gradle

2015-8-31 22:18| 发布者: joejoe0332| 查看: 1063| 评论: 0|原作者: 张天雷|来自: InfoQ

摘要: 许多大科技公司都是开源事业的参与者和引领者,比如Google、Netflix、Facebook等公司,它们开源后的工具被广泛使用。现在,LinkedIn也加入了开源大家庭。LinkedIn的工程师创建了一个名为Gradle的项目,该项目包含了 ...

  许多大科技公司都是开源事业的参与者和引领者,比如Google、Netflix、Facebook等公司,它们开源后的工具被广泛使用。现在,LinkedIn也加入了开源大家庭。LinkedIn的工程师创建了一个名为Gradle的项目,该项目包含了若干个可以在应用中简化连接多个Hadoop Job的工作流工具。


  创建运行在Hadoop集群上的应用的难点众所周知,而Gradle则是一项十分有潜力的高效解决方案。适用于Apache Hadoop的LinkedIn Gradle插件(Hadoop插件)包含了同样适用于Apache Hadoop的LinkedIn Gradle DSL(Hadoop DSL)。 几年前,LinkedIn公司就已采用Gradle作为其基础软件构建系统。Gradle使得Hadoop开发者能够更高效地完成应用程序的编译、测试和 调配。Gradle还可以帮助开发者方便地使用多个Hadoop应用框架。不管在开发时使用了什么工具,Hadoop插件都可以让开发者在一致的体验下管 理他们的项目。


  在开发出Hadoop插件之前很久,LinkedIn的工程师们就意识到了编写个人的Hadoop Job仅仅是有效使用Hadoop挑战的一部分。LinkedIn上数据驱动的特征实际上是由几十个AzkabanApache Oozie管 理的Hadoop Job工作流产生的。理解工作流中各个Job之间的关系并且管理工作流手册成为了一项难点。例如,为了指定LinkedIn上运行的一些处理大数据的工作 流,需要用到非常多的Job文件,工程师为此写了几个内部开发的工具以便更简单地处理工作流。然而这些工具都是使用了Ant、Maven和Ruby混合编 成,这就阻碍了全公司上下全面采用Gradle的进程。随着时间的推移,系统变得越来越脆弱,维护也变得越来越困难。为了解决以上问题,LinkedIn 开发了Hadoop DSL。


  Hadoop DSL是一个基于特定领域的嵌入式Groovy语 言,开发者可以在DSL中随意使用Groovy或Java。它有着自然语言的结构,适用于特定的Job和诸如Azkaban、Apache Oozie等Hadoop工作流管理器。另外,DSL是静态编译的,因此也可以进行静态检查。静态检查器可以在编译时检查出工作流文件中的常见问题,这样 就避免了在运行Hadoop工作流几个小时后才报出错误。


  Gradle和Hadoop DSL已经成为了LinkedIn开发Hadoop工作流的标准工具。源代码在GitHub上。


转自 http://www.infoq.com/cn/news/2015/08/LinkedIn-Gradle-Hadoop?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global


酷毙

雷人

鲜花

鸡蛋

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

最新评论

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

返回顶部