Apache Calcite v1.36.0 整合 mysql 实战笔记
架构的差异
原生数据源:
引入 apache calcite 之后:
说明
实战记录一下 mysql 如何整合 apache calcite。
mysql 数据准备
建表语句
use test;
CREATE TABLE "users" (
"id" int(11) NOT NULL,
"username" varchar(255) NOT NULL,
"...
2018-11-15 00:38:35 |
Search
Apache Calcite v1.36.0 整合 mysql 实战踩坑 按照时间范围查询不到数据?但是 mysql 原生 jdbc 可以正常运行
现象
使用 apache calicte 整合 mysql 测试,使用日期类型的 between and,发现无法查询到数据。
反复测试了多次,发现确实是 apache calicte 的兼容性问题,记录一下。
mysql 准备
版本
mysql> select @@version;
+------------+
| @@version |
+------------+
|...
2018-11-15 00:38:35 |
Search
Apache Calcite ES 各种 Query 的基本介绍
说明
我们参考了 org.apache.calcite.adapter.elasticsearch.QueryBuilders 中各种 query 的实现方式。
为了避免有些内容的混淆,这里对这个类中提到的 query 做一个基本的梳理。
chat
termQuery
在Elasticsearch中,termQuery是一种用于精确匹配特定词项(term)的查询。
它与其他查询类...
2018-11-15 00:38:35 |
Search
Apache Calcite 动态数据管理框架-06-Es 整合之 like 关键词支持
说明
apache calcite 在 v1.36.0 中,默认 ES 是不支持 like 的,同时 contains 必须要求是 date 类型。
我们有时候希望实现一个类似于 like 或者说 regex 的实现,这种常见需求就会变得比较麻烦。
这里演示一下一种可行的实现方式,作为参考。
需要修改源码。
ES 数据准备
数据结构
$ curl -X GET "localho...
2018-11-15 00:38:35 |
Search
Apache Calcite 动态数据管理框架-06-Es adaptor
Elasticsearch适配器
有关下载和构建Calcite的说明,请参阅教程。
一旦成功编译项目,您可以在此处开始使用Calcite查询Elasticsearch。
首先,我们需要一个模型定义。该模型为Calcite提供了创建Elasticsearch适配器实例所需的参数。模型可以包含对材料化的定义。在模型定义中定义的表的名称对应于Elasticsearch中的索引。
以下是一个...
2018-11-15 00:38:35 |
Search
Apache Calcite 动态数据管理框架-05-java 访问 ES 整合 apache calcite,使用标准 SQL 访问 ES
说明
通过 ES 的语法查询,还是有一定的门槛的。
有没有什么方法,可以使用标准的 SQL 查询 ES 呢。
ES 安装 elasticsearch-03-install-on-windows
sql ON ES 设想
为什么?
Elasticsearch是搜索的王者,其强大的DSL不让SQL,但缺少SQL的关键特性,如Join。
ES的策略是紧紧拥抱Hadoop/Hi...
2018-11-15 00:38:35 |
Search
Apache Calcite 动态数据管理框架-06-Es 整合官方例子,用 view 视图解决查询写法不优雅的问题?
思路
我们直接看一下 calcite es 中的例子代码,本地测试验证一下。
拓展阅读
https://github.com/quxiucheng/apache-calcite-tutorial
https://github.com/apache/calcite
代码位置
具体见;
https://github.com/apache/calcite/tree/main/elas...
2018-11-15 00:38:35 |
Search
Apache Calcite 动态数据管理框架-06-Es 整合 contains 方法如何使用?
思路
我们直接看一下 calcite es 中的例子代码,本地测试验证一下。
拓展阅读
https://github.com/quxiucheng/apache-calcite-tutorial
https://github.com/apache/calcite
代码位置
具体见;
https://github.com/apache/calcite/tree/main/elas...
2018-11-15 00:38:35 |
Search