Berinteraksi secara terprogram dengan file ruang kerja
Anda dapat berinteraksi dengan file ruang kerja yang disimpan di Azure Databricks secara terprogram. Ini memungkinkan tugas seperti:
- Menyimpan file data kecil bersama buku catatan dan kode.
- Menulis file log ke direktori yang disinkronkan dengan Git.
- Mengimpor modul menggunakan jalur relatif.
- Membuat atau memodifikasi file spesifikasi lingkungan.
- Menulis output dari notebook.
- Menulis output dari eksekusi pustaka seperti Tensorboard.
Anda dapat membuat, mengedit, dan menghapus file ruang kerja secara terprogram di Databricks Runtime 11.3 LTS ke atas.
Catatan
Untuk menonaktifkan penulisan ke file ruang kerja, atur variabel WSFS_ENABLE_WRITE_SUPPORT=false
lingkungan kluster . Untuk informasi selengkapnya, lihat Variabel lingkungan.
Catatan
Dalam Databricks Runtime 14.0 ke atas, direktori kerja default saat ini (CWD) untuk kode yang dijalankan secara lokal adalah direktori yang berisi notebook atau skrip yang dijalankan. Ini adalah perubahan perilaku dari Databricks Runtime 13.3 LTS dan di bawahnya. Lihat Apa direktori kerja default saat ini?.
Membaca lokasi file
Gunakan perintah shell untuk membaca lokasi file, misalnya, dalam repositori atau di sistem file lokal.
Untuk menentukan lokasi file, masukkan yang berikut ini:
%sh ls
- File tidak berada dalam repositori: Perintah mengembalikan sistem file
/databricks/driver
. - File berada dalam repositori: Perintah mengembalikan repositori virtual seperti
/Workspace/Repos/name@domain.com/public_repo_2/repos_file_system
.
Membaca file ruang kerja data
Anda dapat membaca file data kecil secara terprogram seperti .csv
atau .json
file dari kode di buku catatan Anda. Contoh berikut menggunakan Panda untuk mengkueri file yang /data
disimpan dalam direktori yang relatif terhadap akar repositori proyek:
import pandas as pd
df = pd.read_csv("./data/winequality-red.csv")
df
Anda dapat menggunakan Spark untuk membaca file data. Anda harus memberi Spark jalur yang sepenuhnya memenuhi syarat.
- File ruang kerja di folder Git menggunakan jalur
file:/Workspace/Repos/<user-folder>/<repo-name>/path/to/file
. - File ruang kerja di direktori pribadi Anda menggunakan jalur:
file:/Workspace/Users/<user-folder>/path/to/file
.
Anda dapat menyalin jalur absolut atau relatif ke file dari menu dropdown di samping file:
Contoh di bawah ini menunjukkan penggunaan {os.getcwd()}
untuk mendapatkan jalur penuh.
import os
spark.read.format("csv").load(f"file:{os.getcwd()}/my_data.csv")
Untuk mempelajari selengkapnya tentang file di Azure Databricks, lihat Bekerja dengan file di Azure Databricks.
Membuat, memperbarui, dan menghapus file dan direktori secara terprogram
Di Databricks Runtime 11.3 LTS ke atas, Anda dapat langsung memanipulasi file ruang kerja di Azure Databricks. Contoh berikut menggunakan paket dan fungsionalitas Python standar untuk membuat dan memanipulasi file dan direktori.
# Create a new directory
os.mkdir('dir1')
# Create a new file and write to it
with open('dir1/new_file.txt', "w") as f:
f.write("new content")
# Append to a file
with open('dir1/new_file.txt', "a") as f:
f.write(" continued")
# Delete a file
os.remove('dir1/new_file.txt')
# Delete a directory
os.rmdir('dir1')