Apache Calcite 源码分析-06-ES schema
概述
简单看一下 ES 的查询是如何实现的
ElasticsearchSchema
基本属性
public class ElasticsearchSchema extends AbstractSchema {
//es client
private final RestClient client;
private final ObjectMapper mapper;...
2024-01-10 13:01:55 |
Database
Apache Calcite 源码分析-05-csv table schema
测试例子
代码
import org.apache.calcite.adapter.csv.CsvSchema;
import org.apache.calcite.adapter.csv.CsvTable;
import org.apache.calcite.jdbc.CalciteConnection;
import org.apache.calcite.schema.SchemaP...
2024-01-10 13:01:55 |
Database
Apache Calcite 源码分析-04-CalciteConnection sql execute 执行过程
回顾
我们上一节看了 calcite 如何委托给 calcite Driver 获取 connection 的,可以看出如何得到 CalciteConnection
CalciteConnection 得到后我们可以执行语句:
Statement statement = calciteConnection.createStatement();
ResultSet resultSet =...
2024-01-10 13:01:55 |
Database
Apache Calcite 源码分析-03-calcite driver
回顾
我们上一节看了 calcite 的 DriverManager,本节重点看一下 calcite org.apache.calcite.jdbc.Driver
源码
基础属性
public class Driver extends UnregisteredDriver {
// 驱动前缀
public static final String CONNECT_STR...
2024-01-10 13:01:55 |
Database
Apache Calcite 源码分析-02-module 模块介绍
源码模块
下面是Apache Calcite源码中各个模块的简要介绍:
babel:提供将SQL转换为不同数据库方言的功能,使得Calcite可以支持多种数据库的查询。
bom:这个模块定义了一个“Bill of Materials”,用于管理Calcite项目中使用的依赖库的版本。
buildSrc:包含构建工具和脚本,用于构建C...
2024-01-10 13:01:55 |
Database
Apache Calcite 源码分析-01-DriverManager 源码浅析 jdbc 的驱动是如何加载的?
源码应该怎么阅读?
直接根据例子,找到核心的类。
回归入门回顾
我们看一下 csv 的入门例子:
public static void main(String[] args) throws Exception {
// 0.获取csv文件的路径,注意获取到文件所在上层路径就可以了
String path = "D:\\github\\calci...
2024-01-10 13:01:55 |
Database
Apache Calcite 源码分析-01-CsvSchema 源码浅析
#
源码应该怎么阅读?
直接根据例子,找到核心的类。
回归入门回顾
我们看一下 csv 的入门例子:
public static void main(String[] args) throws Exception {
// 0.获取csv文件的路径,注意获取到文件所在上层路径就可以了
String path = "D:\\github\\ca...
2024-01-10 13:01:55 |
Database
Apache Calcite 动态数据管理框架整合 csv 实战笔记
序言
我们在 Apache Calcite 动态数据管理框架介绍 介绍了 calcite 的基本功能,本文一起来看一下如何实现一个 csv 的 sql 查询。
入门例子
依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
...
2024-01-10 13:01:55 |
Database