Разбор JSON в Писпарке с уникальными ключами - PullRequest
0 голосов
/ 13 марта 2020

В данный момент я пытаюсь разобраться, как разобрать некоторые JSON, где ключи уникальны, поэтому я не уверен, как это сделать с обычными функциями pyspark sql. Можно ли сделать следующее без UDF?

{
  "key 1": "value 1",
  "key 2": {
    "key 3": {
      "key 4": {
        "key 5": "value 2",
        "key 6": "value 3"
      },
      "key 7": {
        "key 5": "value 4",
        "key 6": "value 5"
      },
      "key 8": {
        "key 5": "value 6",
        "key 6": "value 7"
      }
    }
  }
}

Моя цель состоит в том, чтобы превратить его в следующую таблицу:

| A       | B     | C     | D     | E       | F       |
|---------|-------|-------|-------|---------|---------|
| value 1 | key 2 | key 3 | key 4 | value 2 | value 3 |
| value 1 | key 2 | key 3 | key 7 | value 4 | value 5 |
| value 1 | key 2 | key 3 | key 8 | value 6 | value 7 |

Если бы ключи 4,7 и 8 были одинаковыми, я мог бы легко разобрать нижеследующее, однако я не могу найти никакого контекста при выполнении этого, где ключи для 4,7,8 и так далее неизвестны и поэтому не могут быть определены в функции get_json_object.

Спасибо

...