50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

LinkedIn 开源高可用 Hadoop 工具集 Gradle

  • 2015-08-28
  • 本文字数:1011 字

    阅读完需:约 3 分钟

许多大科技公司都是开源事业的参与者和引领者,比如 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 上数据驱动的特征实际上是由几十个 Azkaban Apache 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 上。


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-08-28 19:004466
用户头像

发布了 268 篇内容, 共 135.9 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

App加固中的代码混淆功能,让逆向工程师很头疼

特权账号管理之权限划分篇

尚思卓越

运维 网络安全 权限管理

WorkPlus即时通讯app支持多种信创环境组合运行

BeeWorks

sublime text Mac前端代码编辑工具 支持M1

加油,小妞!

Sublime Text 4下载 Sublime Text 4注册版

全方位探索:思维导图能在这些地方派上用场!

职场工具箱

思维导图 工具库

提效神器!10%标注数据,比肩全量标注的模型效果!

飞桨PaddlePaddle

大模型 半监督 自动标注 模型蒸馏

Ulysses for Mac(Markdown) v33免激活版

展初云

Mac Ulysses 文本写作软件

SideNotes for Mac(即时笔记工具)

展初云

Mac 笔记软件 SideNotes

AI创新下的生成式人工智能——Amazon Bedrock

淼.

PON网络是什么?

小魏写代码

用Puppeteer优化项目本地开发流程:一键获取登录Token

陇锦

Vue 前端 Node puppeteer

多GPU训练大型模型:资源分配与优化技巧 | 英伟达将推出面向中国的改良芯片HGX H20、L20 PCIe、L2 PCIe

GPU算力

准「AI 时代」下,如何衡量程序员的工作效率和生产力?

LigaAI

人工智能 研发管理 研发度量 AIGC 研发效能管理

苹果系统下载:macOS 12 Monterey v12.7.1正式版

加油,小妞!

苹果系统下载 macOS 12 Monterey

SecureCRT 9 for Mac(终端SSH工具)

展初云

软件测试/人工智能丨知识图谱与模型驱动测试的软件测试进化

测试人

人工智能 软件测试

让家人饮水不再瞎凑合 A.O.史密斯冷热即饮净水机健康又便利

科技热闻

NFTScan 正式上线 Viction NFTScan 浏览器和 NFT API 数据服务

NFT Research

NFT\ NFTScan nft工具

LinkedIn开源高可用Hadoop工具集Gradle_Java_张天雷_InfoQ精选文章