Updating a set of supported NR metrics
[ric-app/mc.git] / mc-core / mc / queries / pcmd_throughput.gsql
diff --git a/mc-core/mc/queries/pcmd_throughput.gsql b/mc-core/mc/queries/pcmd_throughput.gsql
new file mode 100644 (file)
index 0000000..8ca9e2f
--- /dev/null
@@ -0,0 +1,72 @@
+--     Change to grouping by ECI+eUTRANTraceId
+
+DEFINE{query_name 'throughput_meas_crnti';
+       max_lfta_disorder '1'; max_hfta_disorder '1';
+       comment 'throughput experienced by a UE';
+}
+PARAM{ window uint; }
+select $window*(TB+1) as TS, eci, eutran_trace_id,
+       sum((8.0*sumOfSentNonGbrBytes+sumOfSentGbrBytes)) / sum(numOfTtiPositiveDlBuf/1000.0) as ue_lte_tput
+from LTE_PCMD.lte_thpt_meas
+group by timestamp_ms/$window as TB, eci, eutran_trace_id
+;
+
+
+DEFINE{query_name 'throughput_meas_alt_crnti';
+       max_lfta_disorder '1'; max_hfta_disorder '1';
+       comment 'throughput experienced by a UE (alternative version)';
+}
+PARAM{ window uint; }
+select $window*(TB+1) as TS, eci, eutran_trace_id,
+       sum((8.0*sumOfSentNonGbrBytes+sumOfSentGbrBytes)) / sum(numOfTtiUeSched/1000.0) as ue_lte_tput
+from LTE_PCMD.lte_thpt_meas
+Where numOfTtiUeSched>0
+group by timestamp_ms/$window as TB, eci, eutran_trace_id
+;
+
+
+DEFINE{query_name 'drb_pdcp_pdu_stats';
+       max_lfta_disorder '1'; max_hfta_disorder '1';
+       comment 'drb pdcp pdu stats';
+}
+PARAM{ window uint; }
+select $window*(TB+1) as TS, eci, eutran_trace_id, drb_Id,
+       sum(numOfPdcpPduRcvdForTx) as ue_drb_pdcppdu_count,
+       sum(numOfPdcpPduRcvdForTx) / sum(dataCollectionDuration/1000.0) as ue_drb_pdcppdu_count_per_time,
+       100.0*sum(numOfPdcpPduDiscarded) / (sum(1.0*numOfPdcpPduRcvdForTx)) as ue_drb_pdcppdu_discard_rate
+from LTE_PCMD.lte_rb_thpt
+group by timestamp_ms/$window as TB, eci, eutran_trace_id, drb_Id
+;
+
+DEFINE{query_name 'ue_drb_count';
+       max_lfta_disorder '1'; max_hfta_disorder '1';
+       comment 'ue drb count';
+}
+PARAM{ window uint; }
+select TS, eci, eutran_trace_id,
+       count(*) as ue_drb_count
+from drb_pdcp_pdu_stats
+group by TS, eci, eutran_trace_id
+;
+
+DEFINE{query_name 'dl_sched_trace_stats';
+       max_lfta_disorder '1'; max_hfta_disorder '1';
+       comment 'dl sched trace stats';
+}
+PARAM{ window uint; }
+select $window*(TB+1) as TS, eci, eutran_trace_id,
+       sum(numOfTtiUeSched) as ue_num_schedTTIs,
+       sum(numOfTtiUeSched) / (sum(recordCollectionDuration)/1000.0) as ue_num_schedTTIs_per_time,
+       sum(numOfPrbUsed) / (sum(recordCollectionDuration)/1000.0) as ue_avg_PRB_alloc_rate,
+       sum(numOfPrbUsed) / (1.0*sum(numOfTtiUeSched)) as ue_avg_PRB_alloc_rate_per_TTI,
+       sum(numOfHarq1stTx) as ue_HARQ_pid_count,
+       sum(numOfHarq1stTx) / (sum(numOfTtiUeSched)/1000.0) as ue_HARQ_pid_count_per_time,
+       100.0*sum(numOfTtiUeSchedMimo) / (1.0*sum(numOfTtiUeSched)) as ue_schedTTIs_MIMO_percent,
+       100.0*sum(numOfTtiUeSched - numOfTtiUeSchedMimo) / (1.0*sum(numOfTtiUeSched)) as ue_schedTTIs_TxDiversity_percent,
+       100.0*sum(numOfHarqReTx) / (1.0*sum(numOfHarq1stTx)) as ue_HARQ_retx_pid_count,
+       100.0*sum(numOfBad1stMacPduTx) / (1.0*sum(numOfHarq1stTx)) as ue_MAC_PDU_init_Tx_failed_percent,
+       100.0*sum(numOfBadLastMacPduTx) / (1.0*sum(numOfHarq1stTx)) as ue_MAC_PDU_last_Tx_failed_percent
+from LTE_PCMD.lte_dl_sched_trace
+group by timestamp_ms/$window as TB, eci, eutran_trace_id
+
+