in parquet_flask/io_logic/sub_collection_statistics.py [0:0]
def __restructure_stats(self, es_result: dict):
"""
{
"by_provider": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "Florida State University, COAPS",
"doc_count": 4724,
"by_project": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "SAMOS",
"doc_count": 4724,
"by_platform_code": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "30",
"doc_count": 4724,
"min_lon": {
"value": 179.9308
},
"max_lat": {
"value": 80.5424
},
"max_datetime": {
"value": 1546300740
},
"max_lon": {
"value": 179.9996
},
"min_datetime": {
"value": 1546214460
},
"max_depth": {
"value": 6
},
"totals": {
"value": 14530387
},
"min_lat": {
"value": 80.5317
},
"min_depth": {
"value": 4
}
}
]
}
}
]
}
}
]
}
}
:param es_result:
:return:
"""
restructured_stats = {
"providers": [
{
"provider": m['key'],
"projects": [
{
"project": l['key'],
"platforms": [
self.__restructure_core_stats(k) for k in l['by_platform_code']['buckets']
]
} for l in m['by_project']['buckets']
]
} for m in es_result['by_provider']['buckets']
]
}
LOGGER.debug(f'restructured_stats: {restructured_stats}')
return restructured_stats