Конвертировать CSV, содержащий вложенные строки JSON, в таблицу SQL - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть CSV-файл с несколькими миллионами строк, и я хочу загрузить его в виде таблицы PostgreSQL.Одна из строк в столбце 'json_doc' в качестве примера содержит:

{"id": <>,
 "base": 
    {"ateco": 
        [
            {
            "code": "<>", 
            "rootCode": "<>", 
            "description": "<>"
            }
        ], 
        "founded": "<>", 
        "legalName": "<>", 
        "legalForms": 
            [
                {
                "name": "<>", 
                "level": <>
                }, 
                {
                "name": "<>", 
                "level": <>
                }
            ]
    }, 
 "name": "<>", 
 "people": 
        {
            "items": 
                [
                    {
                    "name": "<>", 
                    "givenName": "<>", 
                    "familyName": "<>"
                    }
                ]
        },
 "country": "<>",
 "locations": {}
 }

Который, как вы можете видеть, имеет много вложенных словарей.И их несколько миллионов.

Я хотел бы поместить этот файл в таблицу SQL, в которой даже значения подсловаря находятся в своих собственных столбцах.Как я могу это сделать?Может показаться, что для вложенных данных мне нужно использовать какую-то технику разделения имен, поскольку есть несколько дублирующих ключей, например, «имя».

Данные будут проанализированы с использованием Pandas, но я бы хотел получить этопрямо в Postgres, если это возможно.Любая помощь с благодарностью.

Результат будет выглядеть так:

id |base_ateco_code |и т. д. |base_ateco_legalForms_name |и т. д.

Если нет никаких идей по этому поводу - это довольно открытый проект от моего работодателя - мне просто нужно иметь возможность использовать эту информацию как часть JOIN с другой таблицей.

Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...