概述
GreptimeDB 的 Elasticsearch 兼容层旨在提供与 Elasticsearch 的在一定程度上的兼容性,以便用户能够相对轻松地将现有的 Elasticsearch 应用程序迁移到 GreptimeDB。
但是,GreptimeDB 并不完全兼容 Elasticsearch 的所有功能和特性。在某些情况下,用户可能需要对其应用程序进行调整和修改,以便在 GreptimeDB 中实现相同的功能。
原理
本质上 GreptimeDB 是接收 Elasticsearch 的 QueryDSL 语法,并将其转换为 GreptimeDB 的查询语法,并且按照 Elasticsearch API 格式来返回数据。从而实现与 Elasticsearch 的兼容性。
API 支持列表
API | Method | Description |
---|---|---|
/{table_name}/_search | POST | 执行搜索查询 |
/{table_name}/_async_search | POST | 执行搜索查询 |
/_resolve/index/{schema_name} | POST | 索引文档 |
/{table_name}/_field_caps | GET | 获取字段信息 |
查询支持列表
Query | Description |
---|---|
match | 匹配查询 |
match_phrase | 短语匹配 |
match_all | 匹配所有 |
term | 精确匹配 |
prefix | 前缀匹配 |
range | 范围查询 |
exists | 字段存在查询 |
bool | 复合查询 |
aggregation | 聚合查询 |
聚合支持列表
Aggregation | 实现情况 | Description |
---|---|---|
avg | 平均值 | |
sum | 求和 | |
min | 最小值 | |
max | 最大值 | |
count | ✅ | 计数 |
date_histogram | ✅ | 日期直方图 |
histogram | 直方图 | |
terms | 词条聚合 |
使用 Kibana 查询 GreptimeDB
如需了解更多信息,请联系我们。