Bagikan melalui


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=falselingkungan 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:

menu drop-down 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')