Apache Kyuubi 正式毕业
2022 年 12 月 22 日,Apache 软件基金会(ASF)官方宣布 Apache Kyuubi 正式毕业,成为顶级项目(TLP)。
Apache Kyuubi 是一个分布式和多租户网关,用于在数据仓库和湖仓上提供无服务器 SQL。项目最初由网易数帆开发并于 2018 年开源,2021 年 6 月捐赠 Apache 基金会,经过 1 年多的孵化于 2022 年 11 月通过投票,在 12 月顺利毕业,成为 Apache 基金会顶级开源项目。
据介绍,Apache Kyuubi 在孵化过程中,社区迎来了一百多个贡献,有数千个提交,总计成功发布了九个版本。来自不同公司和国家的开发者和其他类型的贡献者在社区中度过了一段快乐的旅程。
Kyuubi 目前已被全球数百家企业采用,涉及多个行业,如云基础设施、互联网、金融、医疗、打车服务、物流、游戏和 ACG,等等。像阿里巴巴、Bilibili、中国移动、携程、丁香园、eBay、爱奇艺、广发证券、kt NexR、网易、腾讯、T3、Womply、小米、雪球和知乎等公司都在使用 Apache Kyuubi。
网易副总裁、网易杭州研究院执行院长汪源表示:“Kyuubi 是一个广泛使用的 SQL 门户,其无服务器设计,支持常见的 SQL 驱动,大大提升了大数据技术的使用便利性。作为客户端和底层技术之间的门户和网关,Kyuubi 也有很大的想象空间进行功能扩展,如 SQL 审计、检查、基于查询历史的优化等等。这是一个具有巨大潜力的项目。”
Apache Kyuubi VP 姚琴表示:“看到社区成长并从孵化器毕业,这意味着我们已经成功地采用了 ‘Apache Way’并能够自我管理,这很有趣也很令人兴奋。作为一个 Apache 顶级项目,Kyuubi 是由全球各地的人们和组织开发和使用的。Kyuubi 帮助他们实现数据民主化,使具有任何技能水平的人都能舒适地处理数据,而不管他们的技术知识如何。”
“九尾狐”Kyuubi
Kyuubi 的命名源自中国神话《山海经》,意为“九尾狐”。狐会喷火,象征 Spark;狐有九尾,类比多租户。这个命名也体现出了 Kyuubi 系统设计之初的主要目的——在 Spark 上实现多租户。
事实上,在 Kyuubi 之前,市面上已存在具备类似能力的产品,比如 Spark ThriftServer(简称 STS)。这是 Spark 社区现有的、基于 HiveServer2 实现的 Thrift 服务,旨在无缝兼容 HiveServer2。
虽然 STS 的性能极佳,但当前并不完善,尤其在企业场景下存在较多短板。比如,单 Spark 应用实现的 STS 并不能完整支持多租户,因为 STS 本质上是一个 Spark Application,整个 Application 只有全局唯一的用户名,并同时包括 Driver 端和 Executor 端。而对于像网易这样有多条产品线的互联网公司来说,每条产品线的数据在一定程度上是隔离的。因此,只有支持多租户才能满足公司对于数据安全、资源隔离、高可用以及高并发的要求。
这也就促使网易内部开发了 Kyuubi。Kyuubi 在统一接口基础上,拓展了 STS 在多租户模式下的使用场景,并依托多租户概念获得了完善的资源隔离共享能力和数据安全隔离的能力。
Apache Kyuubi 在各种现代计算框架之上建立了分布式 SQL 查询引擎,例如 Apache Spark™、Apache Flink™、Apache Doris™、Apache Hive™和 Trino 等,以查询分布在异质数据源的机器群上的大规模数据集。
统一网关:通过一个入口点实现对任何集群资源的简化、安全访问,为终端用户部署不同的工作负载
应用编程接口:支持各种 API,包括 Apache Thrift™、JDBC、ODBC、REST 等,便于访问。
多租户:支持端到端的多租户,这对集群的安全性和并发性都有利。
高可用性:确保其在指定时间内连续无障碍运行,以满足商定的运行性能水平。
无服务器 SQL 及更多:使最终用户更容易从数据宇宙中获得洞察力,并优化数据管道,无论他们的技术知识如何。它能够使用熟悉的 SQL 为各种工作负载提供与 RDBMS 相同的用户体验,在不同的数据源上提供广泛和安全的数据访问能力,并通过可扩展的计算资源为大量数据提供高性能。
易用性:终端用户可以有一个优化的体验,以无服务器的方式探索他们的数据宇宙。相应的引擎,如 Spark 和 Flink 的 "超能力 "不再是必要的。
在任何地方以任何规模运行:所有的预编程引擎都有分布式后端,可以在单节点机器上或跨集群安排任务。
高性能:最先进的查询引擎、服务器端的全局和持续优化等保证了整个集群的性能提升。
评论