Calcite(https://calcite.apache.org/)是Apache的一个孵化器项目,它是一个构建JDBC或者ODBC访问数据库的框架,通过自定义一些adapter通过sql访问任意类型的数据,回想起我们之前使用SQL的场景只有使用访问关系数据库如MYSQL、ORACLE等,通过hive查询HDFS上的数据,但是如果我们希望通过SQL接口访问内存中的某个数据结构(首先这个结构有关系模型)、文件里面的内容(例如CSV文件、有一定结构的普通文件,其实这些可以通过hive访问)、访问hbase和一些NOSQL数据库,甚至想要跨数据源访问(hive里面的数据和mysql里面的数据进行join查询)。以上基本上代表了我们平时接触到的各种各样的数据存储的位置,而Calcite要解决的问题就是让你想办法将这些数据建立一个关系模型,然后通过SQL查询这些数据
Adapters
Schema adaptersPermalink
A schema adapter allows Calcite to read particular kind of data, presenting the data as tables within a schema.
1)Cassandra adapter (calcite-cassandra)
2)CSV adapter (example/csv)
3)Druid adapter (calcite-druid)
4)Elasticsearch adapter (calcite-elasticsearch)
5)File adapter (calcite-file)
6)JDBC adapter (part of calcite-core)
7)MongoDB adapter (calcite-mongodb)
8)Pig adapter (calcite-pig)
9)Solr cloud adapter (solr-sql)
10)Spark adapter (calcite-spark)
11)Splunk adapter (calcite-splunk)
12)Eclipse Memory Analyzer (MAT) adapter (mat-calcite-plugin)
Apache Calcite具有以下几个技术特性:
支持标准SQL语言;
独立于编程语言和数据源,可以支持不同的前端和后端;
支持关系代数、可定制的逻辑规划规则和基于成本模型优化的查询引擎;
支持物化视图(materialized view)的管理(创建、丢弃、持久化和自动识别);
基于物化视图的Lattice和Tile机制,以应用于OLAP分析;
支持对流数据的查询。
相关推荐
Maven坐标:org.apache.calcite:calcite-core:1.2.0-incubating; 标签:core、apache、calcite、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档...
Maven坐标:org.apache.calcite:calcite-linq4j:1.2.0-incubating; 标签:linq4j、apache、calcite、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览...
Apache Calcite是一个开源的SQL解析、优化和执行框架,它是为了解决现代数据处理领域中的多样性问题而设计的。Calcite的出现是为了支持多样的数据源和复杂查询的处理,比如集成不同的数据存储系统,无论是关系型...
Apache Calcite是一个开源框架,主要用于构建数据库和数据处理系统。这个资源包的版本是1.36.0,提供的是源代码形式(src),表明我们可以深入理解并自定义其内部逻辑。由于在某些情况下,通过Maven可能无法顺利下载...
Apache Calcite: A Foundational Framework for Optimized Query Processing Over Het
apache calcite论文:A Foundational Framework for Optimized Qery Processing Over Heterogeneous Data Sources
apache-kylin-4.0.1 源码所需jar包,一键打包。 只包含jar,不包括js相关内容 内部列表: kylin-shaded-guava-3.1.0.jar commons-configuration-1.6.jar RoaringBitmap-0.7.36-os-kylin-r1.jar commons-compiler-...
Apache Calcite 是一个开源的、动态数据管理框架,它广泛应用于各种数据处理和分析的场景中
方解石是用于编写数据管理系统的框架。 它使用可插入查询转换规则将以关系代数表示的查询转换为有效的可执行形式。 有一个可选SQL解析器和JDBC驱动程序。...calcite/apache-calcite-avatica-1.16.0
Maven坐标:org.apache.calcite:calcite-avatica:1.2.0-incubating; 标签:apache、calcite、avatica、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览...
Apache Calcite 是一个功能强大且灵活的数据管理框架,它可以应用于数据查询与处理、数据仓库与数据湖、流数据处理、数据集成与ETL、自定义 SQL 处理管道以及云服务与数据治理等多个场景。
Apache Calcite是一个SQL库,用于Apache Foundation内的多个大型产品中,用于分析,优化,并且Calcite-Kudu利用它对Kudu(一种快速分析数据库)执行查询。 用法 作为命令行客户端 Calcite Kudu将可用作SQL客户端的...
Apache Avatica / Phoenix SQL驱动程序 Apache Calcite的Avatica Go是Avatica服务器的Go驱动程序。 Avatica是的子项目。快速开始使用Go模块安装: $ go get github.com/apache/calcite-avatica-goPhoenix / Avatica...
方解石是用于编写数据管理系统的框架。 它使用可插入查询转换规则将以关系代数表示的查询转换为有效的可执行形式。 有一个可选SQL解析器和JDBC驱动程序。 方解石不存储数据或具有首选...calcite/apache-calcite-1.25.0
方解石是用于编写数据管理系统的框架。 它使用可插入查询转换规则将以关系代数表示的查询转换为有效的可执行形式。 有一个可选SQL解析器和JDBC驱动程序。...calcite/apache-calcite-avatica-go-5.0.0
方解石是用于编写数据管理系统的框架。 它使用可插入查询转换规则将以关系代数表示的查询转换为有效的可执行形式。 有一个可选SQL解析器和JDBC驱动程序。...calcite/apache-calcite-avatica-go-4.0.0
方解石是用于编写数据管理系统的框架。 它使用可插入查询转换规则将以关系代数表示的查询转换为有效的可执行形式。 有一个可选SQL解析器和JDBC驱动程序。...calcite/apache-calcite-avatica-1.17.0
Apache Calcite 是一个开源框架,主要用于构建数据库和数据处理系统。它由 Apache Software Foundation 维护,提供了多种功能,如动态编译、查询优化、元数据管理等,广泛应用于关系型数据库、NoSQL 存储、流处理...
方解石是用于编写数据管理系统的框架。 它使用可插入查询转换规则将以关系代数表示的查询转换为有效的可执行形式。 有一个可选SQL解析器和JDBC驱动程序。 方解石不存储数据或具有首选...calcite/apache-calcite-1.26.0
查询优化器是Calcite的核心组件之一,它负责将原始的SQL查询转换为更高效的执行计划。优化器通过应用各种优化规则来提升查询性能,例如减少不必要的计算、利用索引、优化Join操作顺序等。 3. **查询处理与语言支持...