Execute Analytic Service for sdk experiment (input from csv) - sonata-nfv/tng-analytics-engine GitHub Wiki
Scope: This functionality is used for realizing an analysis upon the data generated by one or more sdk benchmark experiment(s). This is used when benchmarking data are in a csv format
REST - API: http://profiler_server_IP_address/profiling_service_from_csv
POST body parameters
{
"name": "String with the name of the analytic service",
"files": "JSONArray with all participating csv files"
"metrics": "JSONArray. This is an optional field"
}
Some examples are:
See how two specific metrics are related between them:
{
"name": "linearRegression",
"files": ["/results/result_ts_metrics.csv"],
"metrics": [mn_mp_output_vdu01_cpu_stats__online_cpus_int{ns_id:"ns-1vnf-ids-suricata",experiment_id:"suricata_performance"}, mn_mp_output_vdu01_networks__eth0__rx_bytes {ns_id:"ns-1vnf-ids-suricata",experiment_id:"suricata_performance"} ]
}
See via a chord diagram how all csv metrics are related between them:
{
"name": "chordDiagram",
"files": ["/results/result_ts_metrics.csv"]
}
See via a chord diagram how all metrics coming from two different csv files are related between them. Only columns with common name in two files will participate to the profiling analysis service:
{
"name": "chordDiagram",
"files": ["/results/result_ts_metrics1.csv","/results/result_ts_metrics2.csv"]
}
The result of such a call is a JSONArray that contains a set of urls where the end user can see the profiling analysis results.
A response example should be:
[
"http://opencpu_server/ocpu/tmp/x0d8b61dcbe8022/console",
"http://opencpu_server/ocpu/tmp/x0d8b61dcbe8022/files/finaldata.csv",
"http://opencpu_server/ocpu/tmp/x0d8b61dcbe8022/files/metricsCombination.html"
]