定时SQL

本文介绍定时SQL的使用限制。

特殊任务

日志服务的Trace、Cloud Lens for SLB等功能依赖定时SQL。为了保证这些功能的正常运行,定时SQL限制了这类任务的变更操作,即不支持在定时SQL的任务管理界面对这类任务进行更新、复制和删除操作。如果您需要更新、复制和删除任务,请在相关功能的界面中执行。

查询与分析

重要

定时SQL仅支持SQL独享版引擎。

限制项

说明

操作并发数

单个Project支持的最大分析操作并发数为150个。

例如150个用户同时在同一个Project的各个Logstore中执行分析操作。

数据量

单次分析最大支持扫描2000亿行数据。

数据生效机制

分析功能只对开启统计功能后写入的数据生效。

如果您需要分析历史数据,请对历史数据重建索引。更多信息,请参见重建索引

返回结果

  • 执行分析操作后,默认最多返回100行数据,超出部分不会返回。

  • 如果您需要返回更多数据,请使用LIMIT语法(最大支持返回100万行数据)。更多信息,请参见LIMIT子句。超出LIMIT语法限制的部分不会返回。

  • 最大输出的数据量限制为20 GB,超出部分不会返回。

字段值大小

单个字段值默认为2048字节(2 KB),最大为16384字节(16 KB),超出部分不参与分析。

您可以在配置索引时,修改字段值的最大长度(64字节~16384字节)。具体操作,请参见创建索引

超时时间

分析操作的最大超时时间为10分钟。

Double类型的字段值位数

Double类型的字段值最多52位。

如果浮点数编码位数超过52位,会造成精度损失。

模糊查询

执行模糊查询时,日志服务最多查询到符合条件的100个词,并返回包含这100个词并满足查询条件的所有日志。

查询不精确

结果不精确不会报错,会记录在实例状态以及任务执行记录(需手动开启)中。

数据延迟

当数据存在延迟时,可能存在数据漏查的风险。即如果某时间点的数据在对应的调度实例执行完成之后才到达,则在下一个调度实例中也不会被执行。更多信息,请参见如何保证SQL分析的数据准确性

时间窗口

单次查询时间窗口最大为24小时,最小为1分钟。

关联Metastore

不支持。

LIMIT子句

在定时SQL中,只支持使用LIMIT x,不支持使用LIMIT y, x

数据写入

限制项

说明

目标Logstore写入阈值

如果写入数据时超过阈值,定时SQL任务将重试10分钟以上。超过重试时间后,将返回错误信息。更多信息,请参见数据读写

跨地域传输

中国内的跨地域传输数据时,网络较为稳定,但会有较高延迟(延迟大小随地域的不同而不同)。

国际网络无法保证。

任务执行

限制项

说明

超时时间

最大超时时间为1800秒,超过将视为本次任务执行失败。

建议添加告警监控任务,便于及时发现问题重试错误实例。更多信息,请参见为定时SQL任务设置告警重试定时SQL任务实例

重试次数

最大重试次数为100次,超过将视为本次任务执行失败。

延迟执行

延迟执行时间最大为120秒,延迟执行使用场景实例请参见调度与执行场景

历史执行记录

单个任务的历史执行记录最多保存5天。

建议添加告警监控任务,便于及时发现问题重试错误实例。更多信息,请参见为定时SQL任务设置告警重试定时SQL任务实例