DBFS 경로 지정 방법

Azure Databricks 작업할 때 DBFS(Databricks 파일 시스템)에 액세스해야 하는 경우가 있습니다.

DBFS의 파일에 액세스하는 작업은 표준 파일 시스템 명령을 사용하여 수행됩니다. 그러나 구문은 사용되는 언어 또는 도구에 따라 달라집니다.

예를 들어 다음 DBFS 경로를 수행합니다.

dbfs:/mnt/test_folder/test_folder1/

Apache Spark

Spark에서 Spark 읽기 명령 내의 전체 경로를 지정해야 합니다.

spark.read.parquet(“dbfs:/mnt/test_folder/test_folder1/file.parquet”)

DBUtils

DBUtils 를사용하는 경우 Spark 명령과 마찬가지로 전체 DBFS 경로를 사용해야 합니다. DBFS 경로 주위의 언어별 서식은 사용되는 언어에 따라 다릅니다.

%fs
ls dbfs:/mnt/test_folder/test_folder1/
dbutils.fs.ls(‘dbfs:/mnt/test_folder/test_folder1/’)
dbutils.fs.ls(“dbfs:/mnt/test_folder/test_folder1/”)

참고

dbfs:DBUtils 또는 Spark 명령을 사용할 때는 를 지정할 필요가 없습니다. 경로는 에 dbfs:/mnt/test_folder/test_folder1//mnt/test_folder/test_folder1/ 해당합니다.

셸 명령

셸 명령은 DFBS 경로를 인식하지 않습니다. 대신 DBFS 및 내의 파일은 파일 시스템의 다른 폴더와 동일한 구문으로 액세스됩니다.

Bash

ls /dbfs/mnt/test_folder/test_folder1/
cat /dbfs/mnt/test_folder/test_folder1/file_name.txt

Python

import os
os.listdir('/dbfs/mnt/test_folder/test_folder1/’)

Scala

import java.io.File
val directory = new File("/dbfs/mnt/test_folder/test_folder1/")
directory.listFiles