可在 Range Query 中使用表达式,例如 RANGE (INTERVAL '2' day - INTERVAL '1' day)
支持在分布式下使用 EXPLAIN ANALYZE 分析查询执行的开销
Tips

在过去的两周里,GreptimeDB 共合并了 86 个 PR,其中有 8 位独立贡献者,累计 12 个 PR 被成功合并,还有很多待合并的 PR。
@CookiePieWw (db#3932)
@etolbakov (db#3924)
@groobyming(promqlparser#84)
@irenjj (docs#946 docs#940 db#3910)
@ltratt (promqlparser#87)
@SergeTupchiy (ingester-erl#40)
@taobo (db#3901 db#3923 db#3995)
@tizee (db#3751)

#3823
在 Range 和 Align 参数中支持 Interval 类型的计算:比如使用 (INTERVAL '2' day - INTERVAL '1' day); 通过表达式指定查询对齐到的时间原点:比如 (now() - INTERVAL '1' hour) 指定了查询对齐到当前查询时间的一个小时之前。
SELECT
ts,
min(val) RANGE (INTERVAL '2' day - INTERVAL '1' day)
FROM
host
ALIGN (INTERVAL '2' day - INTERVAL '1' day)
TO (now() - INTERVAL '1' hour)
ORDER BY ts;
https://docs.greptime.com/reference/sql/range
EXPLAIN ANALYZE 会执行对应的 SQL 语句。通过运行 EXPLAIN ANALYZE,用户可以详细了解分布式查询的性能,包括执行时间和资源利用率等指标。这个功能对于在分布式环境中优化和排查复杂查询至关重要。
explain analyze SELECT count(*) FROM system_metrics;
+-------+------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| stage | node | plan |
+-------+------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 0 | 0 | MergeScanExec: peers=[4402341478400(1025, 0), ] metrics=[output_rows: 1, greptime_exec_read_cost: 0, ready_time: 6352264, finish_time: 7509279, first_consume_time: 7165836, ] |
| | | |
| 1 | 0 | AggregateExec: mode=Final, gby=[], aggr=[COUNT(greptime.public.system_metrics.ts)] metrics=[output_rows: 1, elapsed_compute: 108029, ] |
| | | CoalescePartitionsExec metrics=[output_rows: 32, elapsed_compute: 83055, ] |
| | | AggregateExec: mode=Partial, gby=[], aggr=[COUNT(greptime.public.system_metrics.ts)] metrics=[output_rows: 32, elapsed_compute: 334913, ] |
| | | RepartitionExec: partitioning=RoundRobinBatch(32), input_partitions=1 metrics=[repart_time: 1, fetch_time: 441565, send_time: 30325, ] |
| | | StreamScanAdapter { stream: "<SendableRecordBatchStream>" } metrics=[output_rows: 3, mem_used: 24, ] |
| | | |
| | | Total rows: 1 |
+-------+------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
#3923
#3997 为使用共享存储的 GreptimeDB 集群运行模糊测试
关键词:CI
难度:中等
#3973 为列类型变更的特性增加对应的模糊测试
关键词:模糊测试
难度:中等
在 db#3517 中我们支持了列的数据类型变更,我们需要为特性增加对应的模糊测试。
#3884 移除 query crate 中不必要的 traits 和 wrapper 类型
关键词:重构
难度:简单
大多数实现只是将请求转发到 Datafusion。由于我们与 Datafusion 高度耦合,并且没有计划支持另一个查询引擎,所以我们可以删除这些类型。
点击下方链接🔗关注 GreptimeDB,了解更多技术干货👇
关于 Greptime
Greptime 格睿科技专注于为物联网(如智慧能源、智能汽车等)及可观测等产生大量时序数据的领域提供实时、高效的数据存储和分析服务,帮助客户挖掘数据的深层价值。目前主要有以下三款产品:
GreptimeDB 是一款用 Rust 语言编写的开源时序数据库,具有云原生、无限水平扩展、高性能和融合分析等特点,帮助企业实时读写、处理和分析时序数据的同时,降低长期存储的成本。我们提供 GreptimeDB 企业版,支持更多企业特性和定制化服务,如有需要欢迎联系我们:15310923206(同微信)。
GreptimeCloud 是一款全托管的云上数据库即服务(DBaaS)解决方案,基于开源时序数据库 GreptimeDB 打造,能够高效支持可观测、物联网、金融等领域的应用。用户可以通过内置的可观测性解决方案 GreptimeAI 全面掌握 LLM 应用的成本、性能、流量和安全等情况。
车云一体解决方案 是一款深入车企实际业务场景的时序数据库解决方案,解决了企业车辆数据呈几何倍数增长后的实际业务痛点。多模态车端数据库结合云端 GreptimeDB 企业版帮助车企极大降低流量、计算和存储成本,并帮助提升数据实时性和业务洞察能力。

Star us on GitHub Now:
https://github.com/GreptimeTeam/greptimedb
官网:https://greptime.cn/
文档:https://docs.greptime.cn/
Twitter: https://twitter.com/Greptime
Slack: https://greptime.com/slack
LinkedIn: https://www.linkedin.com/company/greptime/
往期精彩文章:


👇 点击下方阅读原文,立即体验 GreptimeDB!





