Apache Calcite: 一个动态数据管理框架之入门示例 | 您所在的位置:网站首页 › 直拍和横拍的图片对比 › Apache Calcite: 一个动态数据管理框架之入门示例 |
什么是Apache Calcite?
Apache Calcite是一个动态数据管理框架 Apache Calcite是一个开源项目,它提供了一个框架,用于管理和查询来自各种来源和格式的数据。它本身不是数据库,而是位于应用程序和数据源之间的层,并允许它们使用通用SQL接口进行交互。Calcite还可以跨不同的数据处理引擎执行查询优化、转换和执行。 底层基于Linq4j实现 组成由几个组成部分组成: SQL parser:解析和验证各种方言【dialects】的SQL查询。 relational algebra engin:将查询表示为逻辑和物理计划,并应用计划规则和成本模型(cost models)来优化它们。 JDBC driver: 允许应用程序连接到Calcite并执行SQL查询。 schema:定义Calcite可以访问的数据源的结构和元数据的模式。 set of adapters:允许Calcite连接到不同的数据源,如JDBC、CSV、MongoDB、Elasticsearch等,并尽可能的将计算下推给它们 为什么使用calcite? 构建数据库:通过向Calcite添加数据存储和处理功能来构建数据库。 创建数据联邦系统:可以使用单个SQL接口查询和集成来自多个异构源的数据,从而构建数据联邦系统【 data federation system】 开发查询引擎:可以对任何数据格式或处理引擎(如Spark、Flink、Beam等)执行SQL查询。 实现SQL层: |
CopyRight 2018-2019 实验室设备网 版权所有 |