SparkContext.textFile не хранит ничего в контексте Spark.Взгляните на источники
/**
* Read a text file from HDFS, a local file system (available on all nodes), or any
* Hadoop-supported file system URI, and return it as an RDD of Strings.
* The text files must be encoded as UTF-8.
*
. Вы всегда можете кэшировать свои RDD, чтобы сохранить их в памяти.Это сообщение объясняет механизм кэширования.
Если вы хотите отслеживать файлы в вашем задании на искру, spark-submit предоставляет флаг --files
для загрузки файлов в каталоги выполнения.Если у вас есть небольшие файлы, которые не изменяются.
Если вы добавляете внешние файлы, spark-submit предоставляет флаг --files
spark-submit --files
, ваши файлы будут загружены в эту папку HDFS.: hdfs: //your-cluster/user/your-user/.sparkStaging/application_1449220589084_0508
application_1449220589084_0508 - это пример идентификатора приложения пряжи!
В приложении Spark вы можете найти свои файлы2 способами:
1 - найдите каталог промежуточной обработки по следующему коду: (но вам нужно указать hdfs uri и ваше имя пользователя)
System.getenv("SPARK_YARN_STAGING_DIR");
.sparkStaging / application_1449220589084_0508
2 - найдите полные пути к файлам через запятую, используя:
System.getenv("SPARK_YARN_CACHE_FILES");
hdfs: //yourcluster/user/hdfs/.sparkStaging/application_1449220589084_0508/spark-Узел-1.4.1.2.3.2.0-2950-hadoop2.7.1.2.3.2.0-2950.jar # * * 1 034 * искра * .jar тысяча тридцать-пять, HDFS: //yourcluster/user/hdfs/.sparkStaging/application_1449220589084_0508/your-spark-job.jar # приложение .jar, HDFS: //yourcluster / user / hdfs / .sparkStaging / application_1449220589084_0508 / test_file.txt # test_file.txt