AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

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:423305
用户头像
蔡芳芳 InfoQ主编

发布了 804 篇内容, 共 578.7 次阅读, 收获喜欢 2802 次。

关注

评论

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

查看mac电脑的温度信息, 并且给mac电脑降温

lmymirror

macos Mac terminal

不一样的面向对象(三)

书旅

php 面向对象 面向对象编程

点对点音视频应用场景及优势

anyRTC开发者

音视频 WebRTC 直播 RTC 安卓

奈学:Java 和 JavaScript 是什么关系?

古月木易

Java

JAVA集合之ConcurrentHashMap

彭阿三

Java JAVA集合

2020年行摄回忆录(上)

穿过生命散发芬芳

生活 摄影

数据挖掘技术在轨迹数据上的应用实践

滴滴技术

人工智能 数据挖掘 滴滴技术 轨道技术 创新公交

聊一下《技术力量-一线技术团队成功启示录》

Man

中台 研发管理

倒计时!Pulsar Summit Asia 2020 演讲征集

Apache Pulsar

开源 云原生 pulsar Apache Pulsar 消息中间件

看看别人是怎么面试蚂蚁金服的!社招Java面经分享

Java架构师迁哥

Java 阿里巴巴 面试 蚂蚁金服

架构1期第三周作业二

道长

极客大学架构师训练营

信息公交服务在滴滴的应用实践

滴滴技术

滴滴技术 人工只能 信息公交 路径优化

2020面试阿里字节跳动90%被问到的JVM面试题附答案

Java架构师迁哥

一篇文章搞定 Nginx 反向代理与负载均衡

哈喽沃德先生

nginx 负载均衡 反向代理 服务器 正向代理与反向代理

StreamNative 宣布开源 MoP:Apache Pulsar 支持原生 MQTT 协议

Apache Pulsar

开源 云原生 mqtt Apache Pulsar 消息中间件

甲方日常 24

句子

工作 随笔杂谈 日常

奈学:Java 和 JavaScript 是什么关系?

奈学教育

Java

浅谈滴滴需求响应式公交背后的技术

滴滴技术

滴滴技术 创新公交 路径优化

比曲婉婷云尽孝更可怕的是:2020年,低收入家庭仍然在被收割

成周

心理学 教育 培训 维权 曲婉婷

java安全编码指南之:异常处理

程序那些事

java安全编码 java安全 java安全编码指南

图解 K8S 源码 - Deployment Controller 篇

郭旭东

Kubernetes Kubernetes源码

国庆假期快来了,打开8天长假的正确方式是...

老胡爱分享

读书 书籍推荐 随笔杂谈

初学源码之——Spring IOC 应用

Java架构师迁哥

融云技术分享:基于WebRTC的实时音视频首帧显示时间优化实践

JackJiang

音视频 即时通讯 实时通信

linux 文件权限控制

kcnf

linux 文件权限控制 acl

Spring 5 中文解析数据存储篇-JDBC数据存储(下)

青年IT男

Spring5

10多家公司的Java开发面试常见问题合集

Java架构师迁哥

Go编程(一) 怎么写Go代码

dongfanger

编程 开发 Go 语言

Go编程(二) 多线程简单斗地主

dongfanger

编程 开发 Go 语言

Java源码系列1——ArrayList

超超不会飞

Java

DàYé玩转数据战略Step By Step

曲水流觞TechRill

数据中台 数字化

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