Как реляционировать JSON для плоской структуры в AWS Glue

Попытка сгладить входные данные JSON, имеющие два поля карты / словаря (custom_event1 и custom_event2), которые могут содержать любые данные пары ключей и значений. Чтобы создать таблицу вывода из фрейма данных, вам нужно будет избежать сглаживания custom_events и сохранить его как строку JSON в столбце.

После этого документа Relationalize.apply также выравнивает карту custom_events.

Sample JSON:

{
    "id": "sklfsdfskdlfsdfsdfkhsdfssdf",
    "idtype": "cookieId",
    "event": "install",
    "sub_event": null,
    "ip": "XXXXXX",
    "geo": {
        "country": "IN",
        "city": null,
        "region": null
    },
    "carrier": {
        "operator": null,
        "network": null,
        "connection_type": null
    },
    "user_agent": "Mozilla/5.0",
    "device": {
        "brand": "LYF",
        "model": null,
        "type": null
    },
    "package": {
        "pkgName": "XXXXXXXX",
        "pkgVersion": "1.5.6.3",
        "pkgRating": null,
        "timestamp": "2017-12-14 11:51:27"
    },
    "custom_event1": {
        "key1": "value1",
        "key2": "value2"
    },
    "custom_event2": {
        "key": "value"
    }
}

Как хранить данные JSON с динамическим полем карты в реляционном хранилище?

python,amazon-web-services,pyspark,spark-dataframe,aws-glue,

1

Ответов: 1


0

Шаги, которые вам понадобятся, предположение, что данные json находятся в S3

  1. Создайте Crawler в AWS Glue и создайте схему в каталоге (базе данных). Предполагается, что вы знакомы с AWS Glue.

  2. Создайте задачу «Клей», которая преобразует json в ваш любимый формат (parqet), который использует шаг преобразования, чтобы сгладить данные, используя Rationalize class - https://aws.amazon.com/blogs/big-data/simplify-querying-nested- json-with-the-aws-glue-renationalize-transform / и записывает в формат паркета

  3. Создайте сканер для новых данных сглаживания и создайте таблицу в aws-клее

  4. Используйте Athena или AWS Quick sight или ваш любимый инструмент BI для запроса данных паркета

питон, амазонки-веб-сервисы, pyspark, искровой dataframe, AWS-клей,
Похожие вопросы
Яндекс.Метрика