ETL с искрой: Как удалить атрибуты из вложенных объектов в массиве - PullRequest
0 голосов
/ 16 января 2020

У меня есть документы в исходной схеме, и я хотел бы преобразовать их в схему назначения, что означало бы удаление определенных ненужных атрибутов.

Дело в том, что исходная схема имеет вложенные объекты в массиве, например так (представьте, что многие из них):

  {
     "attrOne": "some value",
     "attrTwo": "some other value",
     "attrThree": [
        {
            "moep": "huch1",
            "blubb": "huch2",
            "gnah": "huch3"
        },
        {
            "moep": "blubber1",
            "blubb": "blubber2",
            "gnah": "blubber3"
        }
    ]
}

удаление атрибутов очень просто с помощью df.drop (), также вложенные объекты могут быть удалены с помощью df.drop (), но эту вещь в массиве я не могу выяснять. Насколько я понимаю, мне нужно как-то перебрать его, но я не могу заставить его работать.

Я довольно много гуглил, но не могу найти, как удалить, например, атрибут "blubb" из все вложенные объекты в "attrThree", когда все это находится в кадре данных.

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

Или это супер прямолинейно, и существует другой способ, кроме модификации кадра данных, для преобразования из одной схемы в другую.

На этом этапе любая помощь будет очень признательна

Спасибо

...