OpenTSDB数据源 Sugar BI中 OpenTSDB 数据源不支持数据模型,只能使用 SQL 建模 方式进行数据的可视化 ,但是 OpenTSDB 本身不支持 SQL,所以它的数据绑定方法比较特殊。 在 SQL 模型编辑里参考如下图所示的方式配置: 其中 SQL 语句对应的是 OpenTSDB 的 Query 中的写法。
Query 语句支持三种格式,形如: match 检索语句:根据检索条件,返回满足检索条件的日志直方图统计 SQL 语句:返回全部日志的直方图统计 match 检索语句 | SQL 语句:根据检索条件,返回满足检索条件的日志直方图统计 查询相关限制如下: 日志集必须开启索引,若未开启索引,直方图查询返回报错 查询时间上限60秒,超过60秒未统计出结果会返回报错 检索语法请参考 检索语法 请求 请求语法
SQL 语句中嵌入联动参数 」
因此建模以及对应的数据绑定就会不好做,这时我们可以开启 自动绑定所有字段 ;开启自动绑定所有字段后,会对 SQL 语句查询结果中的每一列都会作为一个属性放入属性表格中。
用户同样可以通过SQL注入查询页面查询被拦截的SQL。 注意: (1)在使用DB防火墙时,建议先选择告警级别,运行一段时间,确认是否有误报的情况,并将误报SQL加入到白名单中。待稳定后,切换至阻断模式,拦截SQL注入攻击。 (2)被添加到白名单的SQL将被DB防火墙识别放行。同时,与该SQL签名相同的一类SQL也将不再被拦截,请谨慎添加。而删除白名单中的SQL后,被放行的SQL将重新被拦截。
在使用SDK消费之前,需要先在数据传输控制台创建需要订阅的源数据库实例的订阅通道。 当订阅通道创建完成后,使用SDK可以实时订阅订阅通道中的增量数据。 目前:数据传输只提供JAVA版本SDK。 一个订阅通道只能被一个SDK消费,如果启动多个SDK连接同一个订阅通道时,最后启动的SDK进程将拉取到订阅数据,其他SDK将报错退出。如果有多个下游SDK需要订阅同一个RDS的增量数据。
下面具体介绍如何将 InfluxDB 2.X 中数据绑定到 Sugar BI 的图表中: 首先我们选择使用「SQL 建模」的方式绑定表格的数据: 然后在 SQL 建模中,我们书写 Flux 的查询语句,并且对查询结果的每个字段做描述(包括字段名、数据类型等): 最后,将多个字段绑定到表格的列上,并「刷新」即可看到数据,有问题也可「调试」查看具体信息:
编辑作业 示例作业的完整SQL语句如下(用户可以直接粘贴到编辑器中, 更新输出端BOS地址 ,进行作业调试): -- 创建输入端表(source),连接KAFKA消息队列 create table source_table_kafka( stringtype STRING, longtype BIGINT, floattype FLOAT, binarytype Binary, integertype
图表如果是使用数据模型方式绑定的数据,您可以不用关心查询 key; 图表如果是 API 方式绑定数据,「查询 key 值」将会作为过滤条件的「k 字段」在参数中传递到后端,详见 API 后端获取过滤条件参数 ; 图表如果是 SQL 方式绑定数据,「查询 key 值」将会作为 conditions 的 key 嵌入到 SQL 语句中,如 where {field = [conditions.key]}
对于 INSERT、DELETE 两类语句,会统计 SQL 内包含的所有列名和列值的总字节数; 对于 UPDATE 语句,会统计 SQL 的 SET 部分和 WHERE 两部分包含的所有列名和列值的总字节数; 由于 UPDATE 语句的的 SET 部分和 WHERE 部分均会包含表中的所有列名和列值(无论列值是否被修改),因此可以认为同表的单条 UPDATE 语句字节数为 INSERT 或 DELETE