Apache Calcite 是两个开放源码的 Java 构架,用作构筑自订 SQL 处置器,主要包括查阅强化器、SQL 解释器和查阅方案排序机程序等模块。它意在提供更多一类通用型的SQL处置构架,使开发者能使用相同的统计数据虚拟化和查阅发动机,而不需要改写绝大部分SQL处置标识符。
Calcite 提供更多了一类可扩充的构架,全力支持多种相同管理辅助工具,主要包括亲密关系型统计资料库、NoSQL 统计资料库、CSV 文档、JSON 文档格式等,能将这些管理辅助工具态射为 SQL 表,进而使开发者能采用 SQL 查阅那些管理辅助工具。除此之外,Calcite 还提供更多了一些扩充USB,以期开发者能自订强化器准则、同时实现某一的查阅演算法、以及进一步增强查阅方案聚合的灵活性。
Apache Calcite 已经被广为应用领域作很多小型开放源码工程项目和商业性商品中,主要包括 Apache Drill、Apache Flink、Apache Hive、Apache Kylin 等。
Apache Calcite在很多小型开放源码和商业性工程项目中都有广为的应用领域情景,主要包括但不局限于下列两个方面:
统计基础构架:能被用作统计基础构架中的查阅强化和继续执行,全力支持多种相同管理辅助工具,主要包括亲密关系型统计资料库、NoSQL统计资料库等,能将那些管理辅助工具态射为SQL表,进而方便采用SQL查阅那些管理辅助工具。
OLAP 发动机:能被用作 OLAP 发动机中的查阅处置和强化,全力支持布季夫统计数据查阅和裂解操作方式,能同时实现对布季夫统计数据的加速预测和排序。统计数据软件系统:可以被用作统计数据软件系统中的统计数据切换和统计数据态射,全力支持将相同的管理辅助工具态射为SQL表,因此全力支持统计数据切换、统计数据过滤器等操作方式,能同时实现相同管理辅助工具间的统计资源共享和可视化。统计报文处置:能被用作统计报文处置中的动态查阅和INS13ZD计算,全力支持INS13ZD统计数据的查阅和裂解操作方式,因此具备低延后和高客运量的特征。
如果你要对各式各样统计数据处置和查阅,采用 Calcite 能自订同时实现自己的 SQL 导出同时实现。
而近似于 Apache Calcite 的 SQL 处置辅助工具,主要包括但不局限于下列两个:
Apache Spark SQL:Apache Spark SQL 是两个如前所述 Spark 的 SQL 处置构架,全力支持 SQL 查阅和统计数据挖掘,主要包括查阅强化器、SQL 解释器、管理辅助工具 API 等模块。Presto:Presto 是两个分布式系统的 SQL 查阅发动机,全力支持多种相同管理辅助工具,主要包括亲密关系型统计资料库、NoSQL统计资料库、Hadoop统计数据存储等。Apache Phoenix:Apache Phoenix 是两个如前所述HBase的SQL查阅发动机,全力支持采用SQL查阅HBase中的统计数据,主要包括查阅强化器、SQL解释器等模块。Apache Drill:Apache Drill 是两个分布式系统的SQL查阅发动机,全力支持多种相同管理辅助工具,主要包括亲密关系型统计资料库、NoSQL统计资料库、Hadoop统计数据存储等,具备高度的稳定性和可扩充性。
那些辅助工具都提供更多了如前所述 SQL 的统计数据处置和查阅功能,但它们在实现细节、全力支持的管理辅助工具、性能等方面可能有所相同,开发者能根据自己的需求选择合适的构架。