Utilisation du système de fichiers¶
Le système de fichiers Workspaces¶
Les fichiers affichés dans le volet gauche de l’environnement Workspaces représentent le contenu de votre répertoire Workspaces, qui est le répertoire de travail du notebook.
Pour voir le chemin complet, exécutez pwd ou la commande suivante :
import os
print(os.getcwd())
Un chemin est imprimé dans le format suivant :
/workspace/<workspace_hash representing your workspace>
La création d’une liste de fichiers via ls affiche les fichiers du notebook ainsi que les dossiers et les ressources du projet stockés dans le répertoire Workspaces.
Limitations¶
Bien que le répertoire Workspaces soit en lecture/écriture, la persistance des fichiers est limitée :
Les fichiers créés dans le code ou à partir du terminal n’existent que pour la durée de la session en cours du service de notebook. Lorsque le service de notebook est suspendu, ces fichiers sont supprimés. Pendant la session, vous verrez ces fichiers si vous répertoriez le répertoire (en utilisant
ls) sous :file :/workspace/<workspace_hash>, mais ils ne persistent pas après la fin de la session.Uniquement les fichiers qui sont chargés ou créés dans Snowsight persistent d’une session à l’autre.
Les fichiers créés à partir du code ou du terminal n’apparaissent pas dans le volet de gauche. Il s’agit d’une limitation temporaire. Contactez l’équipe de votre compte pour plus d’informations.
Le répertoire /tmp du conteneur¶
Le répertoire /tmp est également en lecture/écriture et convient au travail temporaire ou aux données temporaires qui n’ont pas besoin de persister.
Exemple d’écriture d’un fichier dans /tmp :
file_path = "/tmp/sample.txt"
with open(file_path, "w") as f:
f.write("Hello from Python!\\nThis is a sample file saved in /tmp.")
print(f"File written to {file_path}")
Pour lister les fichiers dans le répertoire /tmp, exécutez ce qui suit :
%%bash
cd /tmp
ls
Fichiers persistants¶
Pour stocker des fichiers en vue d’une utilisation ultérieure, écrivez-les dans une zone de préparation Snowflake avec un accès en écriture à l’aide des APIs d’opération sur les fichiers Snowpark.
Pour en savoir plus sur les privilèges requis par les zones de préparation, voir Accès en écriture. Pour les opérations sur les fichiers Snowpark, voir APIsd’opération sur les fichiers Snowpark.