collect () замедляет процесс, есть ли альтернатива? - PullRequest
0 голосов
/ 06 марта 2020

Это мой код:

def fun(df, file):
    symbol = df.select(df.SMBL).distinct().collect()

    for i in symbol: 
        csv_data = df.filter(df.SMBL == i.SMBL)
        csv_data.write.csv('%s/'%(BUCKET_PATH))

с использованием collect() замедляет процесс. Как получить доступ к столбцу SMBL без использования команды collect?

1 Ответ

2 голосов
/ 06 марта 2020

Насколько я понимаю, вы пытаетесь записать файлы, имена которых основаны на столбце данных SMBL. Я предлагаю написать фрейм данных с partitionBy(), в котором вы указываете столбец. Может потребоваться сделать user defined function на основе столбца SMBL, чтобы получить правильное наименование раздела.

При этом вам не нужно предварительно вызывать метод collect для действия записи.

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