파일 시스템 작업하기¶
작업 공간 파일 시스템¶
작업 공간 환경의 왼쪽 창에 표시된 파일은 노트북의 작업 디렉터리인 작업 공간 디렉터리의 내용을 나타냅니다.
작업 공간 디렉터리에서 :code:`ls`를 실행하면 노트북 및 기타 프로젝트 자산을 포함하여 디렉터리의 모든 파일과 폴더가 나열됩니다.
파일 참조¶
상대 경로로 현재 작업 공간 디렉터리의 파일을 참조할 수 있습니다. 예를 들어, 작업 공간에 있는 노트북과 샘플 데이터 세트(CSV에서)에서 읽는 경우를 가정해 보겠습니다.
Python 셀에서 다음 코드를 실행합니다.
제한 사항¶
코드 또는 터미널에서 작업 공간 디렉터리에 파일을 쓰는 작업은 지원되지 않습니다. 파일 쓰기는 세션 중에 작동하는 것처럼 보일 수 있지만, 성공이 보장되지 않으며 향후 릴리스에서는 실패할 수 있습니다.
작업 공간 디렉터리의 파일 지속성에는 다음과 같은 제한 사항이 있습니다.
파일이 읽기 전용임:
/workspace/<workspace_hash>아래의 파일은 읽기 전용이며 노트북을 실행하는 동안 코드에서 업데이트할 수 없습니다.코드 또는 터미널에서 파일 쓰기가 지원되지 않음: 프로그래밍 방식으로 파일을 작업 공간 디렉터리에 쓰지 않습니다. 파일을 유지하려면 대신 Snowflake 스테이지를 사용합니다(파일 유지 참조).
Snowsight에서 업로드되거나 생성된 파일만 유지됨: Snowsight 를 통해 업로드되거나 생성된 파일만 세션 간에 유지됩니다.
세션 전용 가시성: 노트북 서비스가 일시 중단되면 세션 중에 코드 또는 터미널에서 생성된 모든 파일이 제거됩니다. 이러한 파일은 왼쪽 창에 표시되지 않습니다.
컨테이너의 /tmp 디렉터리¶
/tmp 디렉터리는 읽기/쓰기도 가능하며 스크래치 작업이나 지속할 필요가 없는 임시 데이터에 적합합니다.
:file:`/tmp`에 파일을 작성하는 예제:
/tmp 디렉터리의 파일을 나열하려면 다음을 실행합니다.
파일 유지하기¶
나중에 사용할 수 있도록 파일을 저장하려면 Snowpark 파일 작업 APIs를 사용하여 쓰기 액세스 권한이 있는 Snowflake 스테이지에 파일을 작성합니다.
필수 스테이지 권한에 대해 자세히 알아보려면 :ref:`쓰기 액세스<label-access_control_privileges_stage>`를 참조하세요. Snowpark 파일 작업의 경우 `Snowpark 파일 작업 APIs<https://docs.snowflake.com/en/developer-guide/snowpark/reference/python/1.6.1/api/snowflake.snowpark.FileOperation#snowflake.snowpark.FileOperation>`_를 참조하세요.