Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure Databricks'te depolanan çalışma alanı dosyalarıyla program aracılığıyla etkileşim kurabilirsiniz. Bu, aşağıdaki gibi görevleri etkinleştirir:
- Not defterleri ve kodlarla birlikte küçük veri dosyalarını depolama.
- Git ile senkronize edilen dizinlere günlük dosyaları yazma.
- Göreli yolları kullanarak modülleri içeri aktarma.
- Ortam belirtimi dosyası oluşturma veya değiştirme.
- Not defterlerinden çıkış yazılıyor.
- Tensorboard gibi kitaplıkların yürütülmesi sırasında çıktılar kaydediliyor.
Databricks Runtime 11.3 LTS ve üzerinde program aracılığıyla çalışma alanı dosyaları oluşturabilir, düzenleyebilir, yeniden adlandırabilir ve silebilirsiniz. Bu işlevsellik Databricks Runtime 16.2 ve üzeri ile sunucusuz ortam 2 ve üzeri not defterleri için desteklenir.
Not
Çalışma alanı dosyalarına yazmayı devre dışı bırakmak için WSFS_ENABLE_WRITE_SUPPORT=falseküme ortam değişkenini ayarlayın. Daha fazla bilgi için bkz. Ortam değişkenleri.
Not
Databricks Runtime 14.0 ve üzerinde, yerel olarak yürütülen kod için varsayılan geçerli çalışma dizini (CWD), çalıştırılmakta olan not defterini veya betiği içeren dizindir. Bu, Databricks Runtime 13.3 LTS ve altındaki davranışlarda bir değişikliktir. Bkz. Varsayılan geçerli çalışma dizini nedir?.
Dosyaların konumlarını okuma
Bir depoda veya yerel dosya sisteminde dosyaların konumlarını okumak için kabuk komutlarını kullanın.
Dosyaların konumunu belirlemek için aşağıdakileri girin:
%sh ls
-
Dosyalar bir depoda değil: komutu dosya sistemini
/databricks/driverdöndürür. -
Dosyalar bir depoda: Komut,
/Workspace/Repos/name@domain.com/public_repo_2/repos_file_systemgibi sanallaştırılmış bir depo döndürür.
Veri çalışma alanı dosyalarını okuma
not defterlerinizdeki koddan .csv veya .json dosyaları gibi küçük veri dosyalarını program aracılığıyla okuyabilirsiniz. Aşağıdaki örnekte, proje deposunun köküne göre bir /data dizininde depolanan dosyaları sorgulamak için Pandas kullanılır:
import pandas as pd
df = pd.read_csv("./data/winequality-red.csv")
df
Veri dosyalarını okumak için Spark'ı kullanabilirsiniz. Tam yolu Spark'a sağlamalısınız.
- Git klasörlerindeki çalışma alanı dosyaları
file:/Workspace/Repos/<user-folder>/<repo-name>/path/to/fileyolunu kullanır. - Kişisel dizininizdeki çalışma alanı dosyaları şu yolu kullanır:
file:/Workspace/Users/<user-folder>/path/to/file.
Mutlak veya göreli yolu dosyanın yanındaki açılan menüden bir dosyaya kopyalayabilirsiniz:
Aşağıdaki örnekte, tam yolu almak için {os.getcwd()} kullanımı gösterilmektedir.
import os
spark.read.format("csv").load(f"file:{os.getcwd()}/my_data.csv")
Not
DBFS kök ve bağlamalarının devre dışı bırakıldığı çalışma alanlarında, Databricks yardımcı programları ile çalışma alanı dosyalarına erişmek için de kullanabilirsiniz dbfs:/Workspace . Bu, Databricks Runtime 13.3 LTS veya üzerini gerektirir. Bkz. Mevcut Azure Databricks çalışma alanınızda DBFS köküne ve bağlamalarına erişimi devre dışı bırakma.
Azure Databricks'te dosyalar hakkında daha fazla bilgi edinmek için bkz. Azure Databricks'te dosyalarla çalışma.
Program aracılığıyla dosya ve dizin oluşturma, güncelleştirme ve silme
Azure Databricks'teki çalışma alanı dosyalarını, herhangi bir standart dosya sistemindeki dosyalarla çalışma şeklinize benzer şekilde program aracılığıyla işleyebilirsiniz.
Not
Databricks Runtime 16.2 ve üzeri ile sunucusuz ortam 2 ve üzerinde, dosyalarla tüm programlı etkileşimler not defterleri için de kullanılabilir. Dosyayı not defterine dönüştürme hakkında bilgi için bkz. Dosyayı not defterine dönüştürme.
Aşağıdaki örneklerde, dosya ve dizin oluşturmak ve bunları işlemek için standart Python paketleri ve işlevleri kullanılır.
import os
# 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')
import shutil
# Copy a dashboard
shutil.copy("my-dashboard.lvdash.json", "my-dashboard-copy.lvdash.json")
# Move a query to a shared folder
shutil.move("test-query.dbquery","shared-queries/")