用 Apache Calcite 构建强大的实时流式应用
创始人
2024-03-01 19:25:20
0

Calcite

Calcite 是一个数据框架,它允许你创建自定义数据库功能,微软开发者 Atri Sharma 在 Apache 2016 年 11 月 14-16 日在西班牙塞维利亚举行的 Big Data Europe 中对此进行了讲演。

Apache Calcite 数据管理框架包含了典型的数据库管理系统的许多部分,但省略了如数据的存储和处理数据的算法等其他部分。 Microsoft 的 Azure Data Lake 的软件工程师 Atri Sharma 在西班牙塞维利亚的 Apache:Big Data 会议上的演讲中讨论了使用 Apache Calcite 的高级查询规划能力。我们与 Sharma 讨论了解有关 Calcite 的更多信息,以及现有程序如何利用其功能。

**Linux.com:**你能提供一些关于 Apache Calcite 的背景吗? 它有什么作用?

Atri Sharma:Calcite 是一个框架,它是许多数据库内核的基础。Calcite 允许你构建自定义的数据库功能来使用 Calcite 所需的资源。例如,Hive 使用 Calcite 进行基于成本的查询优化、Drill 和 Kylin 使用 Calcite 进行 SQL 解析和优化、Apex 使用 Calcite 进行流式 SQL。

**Linux.com:**有哪些是使得 Apache Calcite 与其他框架不同的特性?

Atri:Calcite 是独一无二的,它允许你建立自己的数据平台。 Calcite 不直接管理你的数据,而是允许你使用 Calcite 的库来定义你自己的组件。 例如,它允许使用 Calcite 中可用的 Planner 定义你的自定义查询优化器,而不是提供通用查询优化器。

**Linux.com:**Apache Calcite 本身不会存储或处理数据。 它如何影响程序开发?

Atri:Calcite 是数据库内核中的依赖项。它针对的是希望扩展其功能,而无需从头开始编写大量功能的的数据管理平台。

**Linux.com:**谁应该使用它? 你能举几个例子吗?**

Atri:任何旨在扩展其功能的数据管理平台都应使用 Calcite。 我们是你下一个高性能数据库的基础!

具体来说,我认为最大的例子是 Hive 使用 Calcite 用于查询优化、Flink 解析和流 SQL 处理。 Hive 和 Flink 是成熟的数据管理引擎,并将 Calcite 用于相当专业的用途。这是对 Calcite 应用进一步加强数据管理平台核心的一个好的案例研究。

**Linux.com:**你有哪些期待的新功能?

Atri:流式 SQL 增强是令我非常兴奋的事情。这些功能令人兴奋,因为它们将使 Calcite 的用户能够更快地开发实时流式应用程序,并且这些程序的强大和功能将是多方面的。流式应用程序是新的事实,并且在流式 SQL 中具有查询优化的优点对于大部分人将是非常有用的。此外,关于暂存表的讨论还在进行,所以请继续关注!


via: https://www.linux.com/news/build-strong-real-time-streaming-apps-apache-calcite

作者:AMBER ANKERHOLZ 译者:geekpi 校对:wxy

本文由 LCTT 组织编译,Linux中国 荣誉推出

相关内容

OpenTenBase 部...
2025-11-25 10:40:21 作者:狼叫兽 11月22...
2025-11-25 11:45:53
破局“开源糖衣”与“管制枷...
曾几何时,美国软件厂商带着"开源共享"的甜糖敲门,不少人以为捡到了...
2025-10-14 16:46:47
AI时代,重做ERP
AI浪潮席卷而至,ERP行业受到了多大程度的冲击? “ERP如果不...
2025-10-13 12:44:58
什么是AI 医疗概念,涵盖...
近年来,人工智能技术在医疗健康领域的应用不断深化,形成备受关注的产...
2025-10-01 10:15:25
Valkey 9发布在即:...
开源键值数据库Valkey将于下月发布第九个版本,承诺改进资源优化...
2025-09-30 17:46:26
AI加速生物活性原料创新,...
36氪获悉,「未名拾光」近日获得数千万元人民币B+轮融资,由华泰金...
2025-09-29 08:45:13

热门资讯

《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
硬核观察 #1245 Open... #1 OpenAI 悄然删除禁止将 ChatGPT 用于 “军事和战争” 的禁令在 1 月 10 日...
什么是 KDE Connect... 什么是 KDE Connect?它的主要特性是什么?它应该如何安装?本文提供了基本的使用指南。科技日...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
如何理解Apache 2.0许... 提要:Apache 2.0许可证中的专利许可条款使得开源代码可以安全使用,但它经常被误解。Apach...