Upsolver
Search…
SESSION_COUNT
Gets the number of sessions, where a session is defined as events separated by no more than WINDOWSIZE time.

Syntax

SESSION_COUNT(TIME[, WINDOWSIZE(WHERE cond)])

Arguments

TIME: An expression of any type that can be ordered. WINDOWSIZE: An optional boolean expression filtering the rows used for aggregation. STORED SESSIONS: This is optional. If it is omitted there is, in effect, no limit.

Returns

The result type matches the type of the argument.

Notes

Nulls are not counted. In Athena, SESSION_COUNT data can be BIGINT or NUMBER type. In Upsolver output, SESSION_COUNT data can be NUMBER type only.

Example

Data

1
[
2
{
3
"serverIp":"10.0.0.1",
4
"time":1628894700000,
5
"cpuUsage":52.3
6
},
7
{
8
"serverIp":"10.0.0.1",
9
"time":1628894760000,
10
"cpuUsage":2.4
11
},
12
{
13
"serverIp":"10.0.0.1",
14
"time":1628894820000,
15
"cpuUsage":99.3
16
},
17
{
18
"serverIp":"10.0.0.1",
19
"time":1628894880000,
20
"cpuUsage":99.6
21
},
22
{
23
"serverIp":"10.0.0.1",
24
"time":1628894940000,
25
"cpuUsage":12.3
26
},
27
{
28
"serverIp":"10.0.0.1",
29
"time":1628895000000,
30
"cpuUsage":55
31
},
32
{
33
"serverIp":"10.0.0.2",
34
"time":1628894700000,
35
"cpuUsage":2.3
36
},
37
{
38
"serverIp":"10.0.0.2",
39
"time":1628894760000
40
},
41
{
42
"serverIp":"10.0.0.2",
43
"time":1628894820000,
44
"cpuUsage":9.3
45
},
46
{
47
"serverIp":"10.0.0.2",
48
"time":1628894880000,
49
"cpuUsage":9.6
50
},
51
{
52
"serverIp":"10.0.0.2",
53
"time":1628894940000,
54
"cpuUsage":2.3
55
}
56
]
Copied!

Query

Find the number of sessions on each serverIp:
1
SET
2
DATE_TIME = UNIX_EPOCH_TO_DATE(data.time);
3
SET
4
string_date = TO_STRING(data.time);
5
SELECT
6
data.serverIp AS serverip:STRING,
7
SESSION_COUNT(data.time, data.cpuUsage)
8
AS session_count_data_cpuusage__60000:NUMBER
9
FROM
10
"TIME_SERIES_DATA_w_NULL"
11
GROUP BY
12
data.serverIp
Copied!

Results

1
{
2
"session_count_data_cpuusage60000":4,
3
"serverip":"10.0.0.2"
4
}{
5
"session_count_data_cpuusage60000":6,
6
"serverip":"10.0.0.1"
7
}
Copied!
COUNT

Dialog