В наличии "big.json" размером около 70 Гб, представляет собой один объект {}.
Структура JSON:
Основная часть файла, 99.99999999 хранится в "body".
Подскажите, пожалуйста, каким образом можно загрузить данный файл во временную таблицу (PostgreSQL), либо облачное решение (Snowflake). Вся сложность заключается в структуре файла, в память файл нет смысла записывать. Пытался использовать библиотеку ijson для итеративного чтения и разбивки на более мелкие, но если и разбивать, то как? По сути это отчетные данные одной компании.
Думал, разбить файл на более мелкие, после или сконвертировать в CSV или в JSON виде осуществить параллельную загрузку.
Но не понимаю каким образом это наиболее эффективно сделать и менее затратно по времени (в первую очередь), по ресурсам.
Структура JSON:
JSON:
{
"entity_name": "Cars",
"entity_type": "Manual",
"last_updated_on": "2023-04-01",
"version": "1.0.0",
"model_name": null,
"model_id_type": null,
"model_id": null,
"model_market_type": null,
"provider_references": null,
"body": [{
"negotiation_arrangement": "bundle",
"name": "Narrative not found",
"billing_code_type": "CPT",
"billing_code_type_version": "2022",
"billing_code": "Y3600",
"description": "Narrative not found",
"negotiated_rates": [{
"provider_groups": [{
"npi": [
1083010953
],
"tin": {
"type": "ein",
"value": "47-1161992"
}
}],
"negotiated_prices": [{
"negotiated_type": "derived",
"negotiated_rate": 100.02,
"expiration_date": "9999-12-31",
"service_code": [
"19",
"22",
"23"
],
"billing_class": "institutional"
}]
},
{
"provider_groups": [{
"npi": [
1962402354
],
"tin": {
"type": "ein",
"value": "13-4257646"
}
}],
"negotiated_prices": [{
"negotiated_type": "derived",
"negotiated_rate": 100.09,
"expiration_date": "9999-12-31",
"service_code": [
"19",
"22",
"23"
],
"billing_class": "institutional"
}]
}
]
}
]}
Основная часть файла, 99.99999999 хранится в "body".
Подскажите, пожалуйста, каким образом можно загрузить данный файл во временную таблицу (PostgreSQL), либо облачное решение (Snowflake). Вся сложность заключается в структуре файла, в память файл нет смысла записывать. Пытался использовать библиотеку ijson для итеративного чтения и разбивки на более мелкие, но если и разбивать, то как? По сути это отчетные данные одной компании.
Думал, разбить файл на более мелкие, после или сконвертировать в CSV или в JSON виде осуществить параллельную загрузку.
Но не понимаю каким образом это наиболее эффективно сделать и менее затратно по времени (в первую очередь), по ресурсам.