Adding MC-NIB support
[ric-app/mc.git] / mc-core / mc / queries / addn_req_time.gsql
1 DEFINE{query_name 'add_req_start';}
2 PARAM{ window uint; }
3 select timestamp_ms as timestamp,
4         non_temporal(timestamp_ms) as start_time,
5         0ULL as end_time,
6         id_MeNB_UE_X2AP_ID as eUE_ID,
7         gnb_id,
8         0 as event_type
9 from SGNB_ADDITION_REQ.sgnb_addreq_for_ue
10 //where schemaId=401
11 ;
12
13 DEFINE{query_name 'add_req_success';}
14 PARAM{ window uint; }
15 select timestamp_ms as timestamp,
16         0ULL as start_time,
17         non_temporal(timestamp_ms) as end_time,
18         id_MeNB_UE_X2AP_ID as eUE_ID,
19         gnb_id,
20         1 as event_type
21 from RECONCOMPLETE.reconfig_success
22 //where schemaId=101
23 ;
24
25 DEFINE{query_name 'addreq_events';}
26 PARAM{ window uint; }
27 merge p1.timestamp : p2.timestamp
28 from add_req_start p1, add_req_success p2
29 ;
30
31
32 DEFINE{query_name 'addreq_success_time';
33         max_lfta_disorder '1'; max_hfta_disorder '1';
34 }
35 PARAM{ window uint; }
36 select eUE_ID, gnb_id, TB, 
37         UINT(max(end_time)-max(start_time)) as success_time
38 from addreq_events
39 group by eUE_ID, gnb_id, timestamp / $window as TB
40 having max(end_time)>0 and max(start_time)>0 and max(end_time)>max(start_time)
41 ;
42
43 DEFINE{query_name 'addreq_success_stats';
44         max_lfta_disorder '1'; max_hfta_disorder '1';
45         comment 'statistics on the time to successfully make a DC connection';
46 }
47 PARAM{ window uint; }
48 select gnb_id as GNB_ID,
49         ($window*(TB+1))/1000 as TS, 
50              $window/1000.0 as measurementInterval,
51         MIN(success_time)/1000.0 as min_success_time,
52         MAX(success_time)/1000.0 as max_success_time,
53         AVG(success_time)/1000.0 as avg_success_time,
54         quantile_of(success_time, .05)/1000.0 as pctl_05_success_time,
55         quantile_of(success_time, .95)/1000.0 as pctl_95_success_time,
56         sqrt(
57                 sum((success_time/1000.0)*(success_time/1000.0)) - sum(success_time/1000.0)*sum(success_time/1000.0)/count(*)
58         ) / count(*) as stddev_success_time
59 from addreq_success_time
60 group by gnb_id, TB