1 DEFINE{query_name 'handovers_join';
2 max_lfta_disorder '1'; max_hfta_disorder '1';
5 select r.timestamp_ms/$window as TB,
6 non_temporal(g.timestamp_ms) as timestamp_ms,
8 r.id_SgNB_UE_X2AP_ID, g.gTP_TEID, g.gnb_id
9 INNER_JOIN from SGNB_ADDITION_REQ.sgnb_addreq_gtp_teid g,
10 RECONCOMPLETE.reconfig_success r
12 r.id_MeNB_UE_X2AP_ID = g.id_MeNB_UE_X2AP_ID
13 and r.timestamp_ms/$window = g.timestamp_ms/$window
16 DEFINE{ query_name 'handovers_gnb';
17 max_lfta_disorder '1'; max_hfta_disorder '1';
18 comment 'Number of handovers on a per-gtp_teid basis';
22 // Need to correlate with reconfiguration complete
23 // n_handovers, n_pingpong
24 // From raw sgnb_addreq_gtp_teid feed
25 // n_pingpong_attempts
26 Select ($window*(TB+1))/1000 as TS,
27 $window/1000.0 as measurementInterval,
28 gTP_TEID as GTP_TEID, GNB_ID,
29 count(*) as total_addition_requests,
30 count_diff(gnb_id) - 1 as n_handovers,
31 count(*) - count_diff(gnb_id) as n_ping_pong
33 group by TB, gTP_TEID, gnb_id as GNB_ID
36 DEFINE{ query_name 'requests_per_gtp_teid';
37 max_lfta_disorder '1'; max_hfta_disorder '1';
38 comment 'Number of sgnb addition requests requests per gTP_TEID';
41 Select ($window*(tb+1))/1000 as TS, $window/1000.0 as measurementInterval,
42 gnb_id as GNB_ID, gTP_TEID,
43 count(*) as n_requests
44 from SGNB_ADDITION_REQ.sgnb_addreq_gtp_teid
45 group by timestamp_ms/$window as tb, gnb_id, gTP_TEID
48 DEFINE{query_name 'gnb_ueid_teid_map';
49 max_lfta_disorder '1'; max_hfta_disorder '1';
50 comment 'Output the last known map from (gnb, gnb_ueid) to gtp_teid';
53 Select TB, GNB_ID, id_SgNB_UE_X2AP_ID, id_MeNB_UE_X2AP_ID,
54 LAST(gTP_TEID) as gTP_TEID
56 group by TB, gnb_id as GNB_ID, id_SgNB_UE_X2AP_ID, id_MeNB_UE_X2AP_ID
57 CLOSING_WHEN ((TB+1)*$window-LAST(timestamp_ms))/1000.0 >= 3600
60 -------------------------------------------
63 DEFINE{query_name 'modification_confirm_count';
64 max_lfta_disorder '1'; max_hfta_disorder '1';
65 comment 'Number of sgnb modification confirms, by UE, part of handover count';
68 Select TB, GNB_ID, id_SgNB_UE_X2AP_ID, id_MeNB_UE_X2AP_ID,
70 from SGNBMODCONF.sgnb_mod_conf
71 group by timestamp_ms/$window as TB, gnb_id as GNB_ID,
72 id_SgNB_UE_X2AP_ID, id_MeNB_UE_X2AP_ID
75 DEFINE{query_name 'modification_req_ack_count';
76 max_lfta_disorder '1'; max_hfta_disorder '1';
77 comment 'Number of sgnb modification request acknowledgements, by UE, part of handover count';
80 Select TB, GNB_ID, id_SgNB_UE_X2AP_ID, id_MeNB_UE_X2AP_ID,
82 from SGNBMODREQACK.sgnb_mod_req_ack
83 group by timestamp_ms/$window as TB, gnb_id as GNB_ID,
84 id_SgNB_UE_X2AP_ID, id_MeNB_UE_X2AP_ID
87 DEFINE{query_name 'ho_count_events';}
90 from modification_confirm_count p1, modification_req_ack_count p2
93 DEFINE{query_name 'ho_count_events_gtp_teid';
94 max_lfta_disorder '1'; max_hfta_disorder '1';
95 comment 'Label ho count events with UE (gtp_teid)';
98 Select h.TB, h.GNB_ID, m.gTP_TEID, cnt
99 LEFT_OUTER_JOIN from ho_count_events h, gnb_ueid_teid_map m
100 where h.TB=m.TB and h.id_MeNB_UE_X2AP_ID=m.id_MeNB_UE_X2AP_ID
101 and h.GNB_ID=m.GNB_ID
104 DEFINE{query_name 'ho_counts_gtp_teid';
105 max_lfta_disorder '1'; max_hfta_disorder '1';
106 comment 'Number of handovers, by UE (gTP_TEID)';
109 Select ($window*(TB+1))/1000 as TS, GNB_ID, gTP_TEID,
110 $window/1000.0 as measurementInterval,
111 sum(cnt) as n_handovers
112 from ho_count_events_gtp_teid
113 group by TB, GNB_ID, gTP_TEID
116 DEFINE{query_name 'gtp_teid_pci_join';
117 max_lfta_disorder '1'; max_hfta_disorder '1';
118 comment 'Join erab_stats_join with gnb_ueid_cellid_map to create data stream for requests_per_gtp_teid_cell';
120 PARAM{ window uint; }
121 select M.TB, M.GNB_ID, M.physCellId, g.gTP_TEID
122 INNER_JOIN from SGNB_ADDITION_REQ.sgnb_addreq_gtp_teid g, gnb_ueid_cellid_map M
123 Where g.gnb_id=M.GNB_ID and g.id_MeNB_UE_X2AP_ID=M.id_MeNB_UE_X2AP_ID
124 and g.timestamp_ms/$window=M.TB
127 DEFINE{ query_name 'requests_per_gtp_teid_pci';
128 max_lfta_disorder '1'; max_hfta_disorder '1';
129 comment 'Number of sgnb addition requests requests per gTP_TEID';
132 Select ($window*(TB+1))/1000 as TS, $window/1000.0 as measurementInterval,
133 GNB_ID, gTP_TEID, physCellId,
134 count(*) as n_requests
135 from gtp_teid_pci_join
136 group by TB, GNB_ID, gTP_TEID, physCellId