写点什么

Netflix 发布 Genie3

  • 2017-07-16
  • 本文字数:946 字

    阅读完需:约 3 分钟

Genie 是一个分布式的 RESTful 架构的任务编排引擎,用于 Netflix 的数据平台。Genie 有两个主要使用场景:第一个是创建和提交自定义的数据处理任务请求,其次是设置本地环境来开发和测试在 Genie 集群上运行的新应用程序和任务。

Netflix 宣布 Genie3 支持几项新特性,包括对较早的任务执行引擎进行重新设计、增强安全功能、增加依赖关系缓存,同时API 也有更新。

Genie 引擎的早期版本不支持领导选举,导致工作节点不必要地执行相同的任务。现在,通过 Zookeeper 或手动配置属性设置单个节点的 IP 地址即可支持集群领导选举。早期版本中所有任务的单一运行脚本运行时间过长,无法满足安全隔离的要求,并降低了在项目扩张阶段项目维护者引入代码更改时隔离风险的能力。Genie3 引入新的方法,使用改进的数据模型来保证运行时间并实现了配置的模块化、描述性和版本化。

在 Genie3 中,任务由若干抽象过程组成,以确保可扩展性。应用程序的运行时间和可执行命令可以通过其API 进行配置。Genie 独立于特定运行时配置或待处理数据,生成Spark、Hadoop、Pig、Hive、PrestoDB 和Sqoop 等类型的应用程序运行脚本。作为开发人员,本地模式工作流能够为不同运行时生成运行脚本,同时还集成了REPL 和stdout 的底层实现以支持测试和开发。

Genie3 的 API 组件覆盖了 Genie 的全部功能。

集群 API、命令 API、应用 API 和作业 API 提供了操作 Genie3 所需的语义。集群 API 负责管理 Genie 的逻辑 worker 集群,不包括基础架构本身。集群 API 还协助管理集群相关的元数据、启动时 worker 集群的基准状态、可用于集群的命令和基准包的安装。从这一点来看它与 Puppet 或 Chef 类似,只是它专注于 Genie 应用程序命令在运行时所需的工作集群的特定安装包和配置。这样可以使应用程序在启动时更加灵活、不受限制,否则应用程序就需要在启动时下载并安装依赖包。

命令 API 的语义在底层应用程序上运行,并且必须指向特定应用程序,但允许定义自己的启动和运行时配置。

作业 API 允许 Genie 用户调度或执行一组命令,并跟踪有关作业执行状态的数据。Genie3 附带了用于 MySql、PostgreSQL 和 HSQLDB 的 JDBC 驱动程序,用于支持 Genie 及其 API 的存储配置。

Genie 3 还支持基于 OAuth2 X.509 公钥证书。

查看英文原文: Netflix Announces Genie 3

感谢张卫滨对本文的审校。

2017-07-16 18:423750
用户头像
蔡芳芳 InfoQ 总编辑

发布了 851 篇内容, 共 629.2 次阅读, 收获喜欢 2826 次。

关注

评论

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

架构实战营模块1作业

白发青年

架构实战营

架构训练

return

如何帮助一个新人快速融入团队

码猿外

团队协作 敏捷精益

Ansible 教程

码界行者

DevOps ansible

《基于实践,设计一个百万级别的高可用&高可靠的IM消息系统》

后台技术汇

后端 消息系统 签约计划 引航计划 内容合集

通俗易懂数仓建模—Inmon范式建模与Kimball维度建模

五分钟学大数据

数据仓库 维度建模 4月日更 范式建模

Rust从0到1-所有权-切片类型

rust slices 切片

封装一个jQuery的$方法

空城机

JavaScript jquery 大前端 4月日更

每日总结-2021-04-05

cyningchen

Kubernetes中的CI/CD

倪朋飞

Kubernetes DevOps CI/CD

Python OpenCV 美女换装,图像处理取经之旅第 19 天

梦想橡皮擦

Python OpenCV 4月日更

LiteOS内核源码分析:任务LOS_Schedule

华为云开发者联盟

操作系统 函数 LiteOS 调度 LOS_Schedule

第 0 期架构训练营模块 1 作业

架构实战营

#架构训练营作业一

吴猛

Git 技巧11条,离大神又进了一步,嘿嘿

Java小咖秀

git 程序员 开发工具

架构实战营模块1作业

季节风myy

硬核图解红黑树并手写实现

Silently9527

Java 数据结构与算法 红黑色

区块链农产品质量安全溯源平台--全流程上链

13530558032

“学生管理系统”毕设架构设计

Vincent

架构实战营

让大家喘口气休息一下吧,工作中事情众多烦心时,让我们与工作独处一会儿。

叶小鍵

极速精简 Go 版 Logstash

万俊峰Kevin

Logstash go-zero Go 语言

Python基础之:Python中的内部对象

程序那些事

Python Python3 程序那些事

文字变图片——GitHub 热点速览 v.21.14

HelloGitHub

GitHub 开源

区块链医药溯源解决方案--助力药品溯源

13530558032

区块链药品防伪溯源平台搭建,区块链防伪溯源的解决方案

13828808769

#区块链#

零基础学Tableau系列 | 05—(进阶)数据集合并、符号地图、智能显示、插入自定义形状、仪表板

不温卜火

数据可视化 数据清洗 4月日更

千万不要轻易尝试“熊猫烧香”,这不,我后悔了!

冰河

互联网 网络安全 信息安全 渗透 蠕虫

MongoDB的几个常见问题

程序员架构进阶

mongodb 集群 28天写作 4月日更 实战问题

联邦查询引擎Presto源码编译与调试

小舰

源码剖析 presto 4月日更

智慧政务,区块链电子证照平台的解决方案

13828808769

#区块链#

架构实战营 模块一 为何架构设计能力难以提升

9527

Netflix发布Genie3_大数据_Dylan Raithel_InfoQ精选文章