Понимание доступа к файлам в файловой системе Databricks (DBFS) и томах с помощью Python и SparkPython

Программы на Python
Anonymous
Понимание доступа к файлам в файловой системе Databricks (DBFS) и томах с помощью Python и Spark

Сообщение Anonymous »

В настоящее время я пытаюсь прочитать и отобразить файл из файловой системы Databricks (DBFS), но столкнулся с проблемой. Вот код, который я использовал:

Код: Выделить всё

file_path = "/dbfs/cluster-logs/use_case/default_job_cluster/cluster_id/init_scripts/cluster_id/20240801_proxy-init.sh.stderr.log"

with open(file_path, 'r') as file:
contents = file.read()
print(contents)
Однако, что интересно, я получаю следующую ошибку:

Код: Выделить всё

bash: line 11: /Volumes/landing/default/artifacts/projects/use_case/databricks/scripts/proxy-init.sh: No such file or directory
Как видите, путь не соответствует исходному вводу.
В конце концов мне удалось правильно прочитать и отобразить содержимое файла журнала с помощью следующего кода:< /p>

Код: Выделить всё

file_path = "/dbfs/cluster-logs/use_case/default_job_cluster/cluster_id/init_scripts/cluster_id/20240801_proxy-init.sh.stderr.log"

from pyspark.sql import functions as F
from pyspark.sql.functions import collect_list

if dbutils.fs.ls(file_path):
file_df_to_check = spark.read.text(file_path).agg(collect_list("value").alias("all_lines"))
display(file_df_to_check)
Вопросы:
  • Почему первый фрагмент кода выдает ошибку, ссылающуюся на путь к тому?
  • Что в документации означает, что DBFS предоставляет схему для томов? Разве первый фрагмент не должен работать?
  • Почему файл можно прочитать только с помощью Spark, а не с помощью стандартной функции открытия Python?
Спасибо за помощь.

Подробнее здесь: https://stackoverflow.com/questions/788 ... mes-with-p

Вернуться в «Python»