Вывод из pyspark не будет отображаться в корзине s3 - PullRequest
0 голосов
/ 03 декабря 2018

Новичок AWS здесь, я пытаюсь запустить задание pyspark в кластере EMR, но не могу понять, почему мой вывод не будет сохранен в указанном сегменте s3.

from pyspark import SparkContext

if __name__ == "__main__":
    sc = SparkContext(appName="appName")
    rdd = sc.parallelize([1,2,3,4,5])
    rdd.saveAsTextFile("s3a://ouput-bucket/output")
    sc.stop()

Я отправляю работу со сценарием

#!bin/bash
aws s3 cp $2 s3://bucket-with-script/script.py 

aws emr add-steps --cluster-id $1 \
--steps Type=spark,Name=appName,\
Args=[--deploy-mode,cluster,--master,yarn,\
--verbose,\
--conf,spark.yarn.submit.waitAppCompletion=False,\
--num-executors,5,\
--executor-cores,5,\
--executor-memory,2g,\
s3a://bucket-with-script/script.py,\]\
,ActionOnFailure=CONTINUE

Есть ли что-то, что я делаю не так?

stderr: https://paste.ee/p/OwSOj

РЕДАКТИРОВАТЬ: я незнаю, если это что-то меняет, но я делаю все это через экземпляр ec2.

1 Ответ

0 голосов
/ 03 декабря 2018

попробуйте сохранить один уровень вниз, например, s3a: //bucket/dest/out.csv

всегда есть некоторые "аномалии" с этим корневым каталогом, потому что он особенный: он всегда есть, дажеесли вы удалите его и тому подобное.

...