我有以下RedisTimeSeries密钥:
127.0.0.1:6379> ts.info ts_raw_l:TSLA
1) totalSamples
2) (integer) 771
3) memoryUsage
4) (integer) 8416
5) firstTimestamp
6) (integer) 1546405200000
7) lastTimestamp
8) (integer) 1642741200000
9) retentionTime
10) (integer) 0
11) chunkCount
12) (integer) 2
13) chunkSize
14) (integer) 4096
15) chunkType
16) compressed
17) duplicatePolicy
18) (nil)
19) labels
20) (empty array)
21) sourceKey
22) (nil)
23) rules
24) 1) 1) "ts_agg_y_l:TSLA"
2) (integer) 31556952000
3) MIN
127.0.0.1:6379>我有一个范围查询,其中fromTimestamp和toTimestamp代表5个工作日的时间段。
127.0.0.1:6379> ts.range ts_raw_l:TSLA 1641790800000 1642222799000
1) 1) (integer) 1641790800000
2) 980
2) 1) (integer) 1641877200000
2) 1038.82
3) 1) (integer) 1641963600000
2) 1072.5901
4) 1) (integer) 1642050000000
2) 1026.5391
5) 1) (integer) 1642136400000
2) 1013.3788
127.0.0.1:6379>我将min聚合筛选器应用于此范围,timeBucket值为5天,并将其与fromTimestamp一起应用。
127.0.0.1:6379> TS.RANGE ts_raw_l:TSLA 1641790800000 1642222799000 ALIGN 1641790800000 AGGREGATION min 432000000
1) 1) (integer) 1641600000000
2) 980
2) 1) (integer) 1642032000000
2) 1013.3788
127.0.0.1:6379> 我希望有一个结果,980和我希望该结果的时间戳在查询中提供的fromTimestamp和toTimestamp范围内。
为什么我会得到两个结果?另外,为什么返回980时时间戳早于fromTimestamp
Redis/模块版本:
127.0.0.1:6379> MODULE LIST
1) 1) "name"
2) "bf"
3) "ver"
4) (integer) 20206
2) 1) "name"
2) "ai"
3) "ver"
4) (integer) 10205
3) 1) "name"
2) "timeseries"
3) "ver"
4) (integer) 10410
4) 1) "name"
2) "rg"
3) "ver"
4) (integer) 10008
5) 1) "name"
2) "graph"
3) "ver"
4) (integer) 20411
6) 1) "name"
2) "ReJSON"
3) "ver"
4) (integer) 20004
7) 1) "name"
2) "search"
3) "ver"
4) (integer) 20205
127.0.0.1:6379> 发布于 2022-01-25 08:48:06
master和1.6 (或更新的)版本都支持此特性。确保您使用的是较新版本的RedisTimeSeries。
https://stackoverflow.com/questions/70827459
复制相似问题