作者 | 凌敏
Apache Kyuubi 正式宣布大学毕业
2022 年 12 月 22 日,Apache 应用软件促进会(ASF)非官方宣布 Apache Kyuubi 正式宣布大学毕业,正式成为世界顶级工程项目(TLP)。
Apache Kyuubi 是两个分布式系统和多租客交换机,用于在基础架构和湖仓上提供无伺服器 SQL。工程项目最初由百度数帆合作开发再于 2018 年开放源码,2021 年 6 月捐献 Apache 促进会,经过 1 年多的幼体于 2022 年 11 月通过投票表决,在 12 月成功大学毕业,正式成为 Apache 促进会世界顶级开放源码工程项目。
据悉,Apache Kyuubi 在幼体过程中,街道社区迎了数十个贡献,有数百个递交,共计获得成功发布了八个版。来自不同子公司和国家的合作开发人员和其他类型的COBOL在街道社区中渡过了一段欢乐的旅途。
Kyuubi 目前已被亚洲地区数十家企业选用,涉及多个行业,耸基础建设、互联网、金融、医疗保健、坐车服务、仓储、格斗游戏和 ACG,之类。像腾讯、Bilibili、中国电信、携程网、聚花园、eBay、爱网易、东方证券、kt NexR、百度、百度、T3、Womply、华为、exile和chan等子公司都在选用 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 的 “超能力 “不再是必要的。
在任何地方以任何规模运行:所有的预编程引擎都有分布式系统后端,可以在单节点机器上或跨集群安排任务。
高性能:最先进的查阅引擎、伺服器端的全局和持续强化等保证了整个集群的性能提升。