Influxdb 使用位测试进行XDB选择?

Influxdb 使用位测试进行XDB选择?,influxdb,bitmask,Influxdb,Bitmask,XDB中有没有办法在搜索查询中使用位运算符?例如,如果我想找到设置了标记或字段值的第二位的所有点,我希望能够执行以下操作: 从测量中选择*,其中tag_name&(1 1)&1=true

XDB中有没有办法在搜索查询中使用位运算符?例如,如果我想找到设置了标记或字段值的第二位的所有点,我希望能够执行以下操作:


从测量中选择*,其中tag_name&(1 1)&1=true

我能找到在
标记或
字段中设置了第二位的所有点吗

A:不可能用于
标记
,因为它的值总是
字符串
类型

对于
字段
是,但是对其执行
过滤
会对性能产生影响,因为
字段
没有索引。也就是说,每个
SELECT
查询都是一次完整的表扫描

位运算符
仅在influx
1.3.x
中引入,因此如果您使用的是早期版本,则无法执行以下操作

假设您有以下
数据集

> show field keys from measurement_abcd
name: measurement_abcd
fieldKey fieldType
-------- ---------
value    integer

> select * from measurement_abcd
name: measurement_abcd
time                tag1 value
----                ---- -----
1434086562000000000      2
1434087562000000000      3
1434088562000000000      4
1434089562000000000 abc  5
1434089562000000000      5
您可以通过执行来检索在字段
值中设置了第二位的行

> SELECT * FROM measurement_abcd WHERE "value" | 2 = "value"
name: measurement_abcd
time                tag1 value
----                ---- -----
1434086562000000000      2
1434087562000000000      3
从测量中选择*其中的“值”\124; 2=“值”

这将为您提供以下输出

> SELECT * FROM measurement_abcd WHERE "value" | 2 = "value"
name: measurement_abcd
time                tag1 value
----                ---- -----
1434086562000000000      2
1434087562000000000      3
值得注意的是,influx的按位运算符仅适用于
布尔
整数
。它在浮子上不起作用

参考资料:

使用以下数据复制上述实验:

curl-i-XPOST“” --数据二进制“测量值”\u abcd值=2i 143408656200000000”

curl-i-XPOST'--data binary'measurement_abcd value=3i 14340875620000000'

curl-i-XPOST ''--数据二进制 “测量值=4i 14340885620000000”

curl-i-XPOST ''--数据二进制 “测量值=5i 143408956200000000”


Q:我能找到在
标签或
字段中设置了第二位的所有点吗

A:不可能用于
标记
,因为它的值总是
字符串
类型

对于
字段
是,但是对其执行
过滤
会对性能产生影响,因为
字段
没有索引。也就是说,每个
SELECT
查询都是一次完整的表扫描

位运算符
仅在influx
1.3.x
中引入,因此如果您使用的是早期版本,则无法执行以下操作

假设您有以下
数据集

> show field keys from measurement_abcd
name: measurement_abcd
fieldKey fieldType
-------- ---------
value    integer

> select * from measurement_abcd
name: measurement_abcd
time                tag1 value
----                ---- -----
1434086562000000000      2
1434087562000000000      3
1434088562000000000      4
1434089562000000000 abc  5
1434089562000000000      5
您可以通过执行来检索在字段
值中设置了第二位的行

> SELECT * FROM measurement_abcd WHERE "value" | 2 = "value"
name: measurement_abcd
time                tag1 value
----                ---- -----
1434086562000000000      2
1434087562000000000      3
从测量中选择*其中的“值”\124; 2=“值”

这将为您提供以下输出

> SELECT * FROM measurement_abcd WHERE "value" | 2 = "value"
name: measurement_abcd
time                tag1 value
----                ---- -----
1434086562000000000      2
1434087562000000000      3
值得注意的是,influx的按位运算符仅适用于
布尔
整数
。它在浮子上不起作用

参考资料:

使用以下数据复制上述实验:

curl-i-XPOST“” --数据二进制“测量值”\u abcd值=2i 143408656200000000”

curl-i-XPOST'--data binary'measurement_abcd value=3i 14340875620000000'

curl-i-XPOST ''--数据二进制 “测量值=4i 14340885620000000”

curl-i-XPOST ''--数据二进制 “测量值=5i 143408956200000000”


InfluxDB支持轮班操作员吗?@Vignesh Raja InfluxDB支持轮班操作员吗?@Vignesh Raja