Interakce se soubory pracovního prostoru prostřednictvím kódu programu
Soubory pracovního prostoru uložené v Azure Databricks můžete interagovat programově. To umožňuje úlohy, jako jsou:
- Ukládání malých datových souborů spolu s poznámkovými bloky a kódem
- Zápis souborů protokolu do adresářů synchronizovaných s Gitem
- Import modulů pomocí relativních cest
- Vytvoření nebo úprava souboru specifikace prostředí
- Zápis výstupu z poznámkových bloků
- Zápis výstupu ze spouštění knihoven, jako je Tensorboard.
Soubory pracovního prostoru můžete vytvářet, upravovat a odstraňovat prostřednictvím kódu programu v Databricks Runtime 11.3 LTS a novějších.
Poznámka:
Chcete-li zakázat zápis do souborů pracovního prostoru, nastavte proměnnou WSFS_ENABLE_WRITE_SUPPORT=false
prostředí clusteru . Další informace naleznete v tématu Proměnné prostředí.
Poznámka:
Ve službě Databricks Runtime 14.0 a vyšší je výchozí aktuální pracovní adresář (CWD) pro kód spuštěný místně, je adresář obsahující spuštěný poznámkový blok nebo skript. Jedná se o změnu chování z Databricks Runtime 13.3 LTS a níže. Podívejte se, co je výchozí aktuální pracovní adresář?
Čtení umístění souborů
Příkazy prostředí slouží ke čtení umístění souborů, například v úložišti nebo v místním systému souborů.
Pokud chcete určit umístění souborů, zadejte následující:
%sh ls
- Soubory nejsou v úložišti: Příkaz vrátí systém
/databricks/driver
souborů . - Soubory jsou v úložišti: Příkaz vrátí virtualizované úložiště, například
/Workspace/Repos/name@domain.com/public_repo_2/repos_file_system
.
Čtení souborů pracovního prostoru dat
V poznámkových blocích můžete programově číst malé datové soubory, jako .csv
jsou soubory nebo .json
soubory z kódu. Následující příklad používá Pandas k dotazování souborů uložených v /data
adresáři vzhledem ke kořenovému adresáři úložiště projektu:
import pandas as pd
df = pd.read_csv("./data/winequality-red.csv")
df
Spark můžete použít ke čtení datových souborů. Spark musíte poskytnout plně kvalifikovanou cestu.
- Soubory pracovního prostoru ve složkách Gitu používají cestu
file:/Workspace/Repos/<user-folder>/<repo-name>/path/to/file
. - Soubory pracovního prostoru ve vašem osobním adresáři používají cestu:
file:/Workspace/Users/<user-folder>/path/to/file
.
Absolutní nebo relativní cestu k souboru můžete zkopírovat z rozevírací nabídky vedle souboru:
Následující příklad ukazuje použití {os.getcwd()}
k získání úplné cesty.
import os
spark.read.format("csv").load(f"file:{os.getcwd()}/my_data.csv")
Další informace o souborech v Azure Databricks najdete v tématu Práce se soubory v Azure Databricks.
Vytváření, aktualizace a odstraňování souborů a adresářů prostřednictvím kódu programu
V Databricks Runtime 11.3 LTS a novějších můžete přímo manipulovat se soubory pracovního prostoru v Azure Databricks. Následující příklady používají standardní balíčky a funkce Pythonu k vytváření a manipulaci se soubory a adresáři.
# 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')