AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

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:423476
用户头像
蔡芳芳 InfoQ 总编辑

发布了 814 篇内容, 共 592.6 次阅读, 收获喜欢 2809 次。

关注

评论

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

人人看得懂的ChatGPT技术原理解析

Baihai IDP

人工智能 自然语言处理 NLP 大模型 12 月 PK 榜 ChatGPT

能不能手写Vue响应式?前端面试进阶

bb_xiaxia1998

Vue 前端

2023前端二面经典手写面试题

helloworld1024fd

JavaScript 前端

实现一个简单的Database12(译文)

GreatSQL

sqlite greatsql greatsql社区

react源码中的生命周期和事件系统

flyzz177

React

推荐系统[八]算法实践总结V0:腾讯音乐全民K歌推荐系统架构及粗排设计

汀丶人工智能

自然语言处理 推荐系统 推荐算法 搜索算法

react源码分析:实现react时间分片

flyzz177

React

PCB生产工艺|主流程之AOI,华秋一文读懂其子流程

华秋电子

一个诡异的 Pulsar InterruptedException 异常

小小怪下士

Java 程序员 后端

DevOps 与 FinOps:二者可以协同吗?

SEAL安全

DevOps FinOps 企业号 2 月 PK 榜

阿里前端二面经典手写面试题汇总

helloworld1024fd

JavaScript 前端

React源码分析8-状态更新的优先级机制

goClient1992

React

飞桨-鹏城云脑发行版亮相第四届启智开发者大会,软硬一体化助力科研

飞桨PaddlePaddle

深度学习 paddle 飞桨

HarmonyOS Connect “Device Partner”专场FAQ来啦!

HarmonyOS开发者

HarmonyOS

react源码分析:babel如何解析jsx

flyzz177

React

什么是物联网?常见IoT 物联网协议最全讲解——基础知识

阿里云AIoT

人工智能 安全 前端开发 网络协议 传感器

瓴羊Quick BI智能报表打破“中式”报表限制,提速增效

夏日星河

佳杰云星:基于鲲鹏DevKit开发多云管理平台,云资源综合管理能力提升约25%

极客天地

GAIDC 2023盛会迎来大模型论坛“主场”,百度飞桨护航大模型产业发展

飞桨PaddlePaddle

深度学习 飞桨

运联智库发布跨境电商物流50强排行榜

联营汇聚

React源码分析8-状态更新的优先级机制

goClient1992

React

从React源码分析看useEffect

goClient1992

React

IoT设备身份三元组烧录方案汇总——实践类

阿里云AIoT

阿里云 物联网 IoT

js函数柯里化-面试手写版

helloworld1024fd

JavaScript 前端

聊聊火出圈的ChatGPT

江湖修行

人工智能 AI ChatGPT

MIAOYUN 2023年度战略共识会

MIAOYUN

战略共识 战略会

华为Push用户增长服务:精准触达,加速增长

HarmonyOS SDK

HMS Core

vue的两种服务器端渲染方案

京东科技开发者

Vue 服务端 nextjs nuxt 渲染方案

瓴羊Quick BI可视化大屏功能强劲

对不起该用户已成仙‖

一步步实现React-Hooks核心原理

helloworld1024fd

JavaScript 前端

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