У меня есть приложение pyspark, которое отправляется на пряжу с несколькими узлами, а также читает паркет из hdfs
в моем коде, у меня есть фрейм данных, который читается непосредственно из hdfs:
df = self.spark.read.schema(self.schema).parquet("hdfs://path/to/file")
когда я использую df.show(n=2)
непосредственно в своем коде после кода выше, он выводит:
+---------+--------------+-------+----+
|aaaaaaaaa|bbbbbbbbbbbbbb|ccccccc|dddd|
+---------+--------------+-------+----+
+---------+--------------+-------+----+
Но когда я вручную go на путь hdfs, данные не пусты.
Что я пробовал?
1 - сначала я подумал, что мог использовать несколько ядер и память для моего исполнителя и драйвера, поэтому я удвоил их и ничего изменился.
2- тогда я подумал, что путь может быть неправильным, поэтому я дал ему неправильный путь hdfs, и он выдал ошибку, что этот путь не существует
Что я предполагая?
1- я думаю, что это может иметь какое-то отношение к драйверам и исполнителям
2 - может, я имею какое-то отношение к пряже
3- конфиги, предоставляемые при использовании spark-submit
текущая конфигурация:
spark-submit \
--master yarn \
--queue my_queue_name \
--deploy-mode cluster \
--jars some_jars \
--conf spark.yarn.dist.files some_files \
--conf spark.sql.catalogImplementation=in-memory \
--properties-file some_zip_file \
--py-files some_py_files \
main.py
Что я уверен
данные не пусты. тот же путь hdfs предоставляется в другом проекте, который работает нормально.