FileSystemClient 클래스

해당 파일 시스템이 아직 존재하지 않더라도 특정 파일 시스템과 상호 작용하는 클라이언트입니다.

이 파일 시스템 내의 특정 디렉터리 또는 파일과 관련된 작업의 경우 또는 get_file_client 함수를 사용하여 디렉터리 클라이언트 또는 파일 클라이언트를 get_directory_client 검색할 수 있습니다.

상속
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixin
FileSystemClient

생성자

FileSystemClient(account_url: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

매개 변수

account_url
str
필수

스토리지 계정에 대한 URI입니다.

file_system_name
str
필수

디렉터리 또는 파일의 파일 시스템입니다.

credential
기본값: None

인증할 자격 증명입니다. 계정 URL에 이미 SAS 토큰이 있는 경우 선택 사항입니다. 값은 SAS 토큰 문자열, azure.core.credentials에서 AzureSasCredential 또는 AzureNamedKeyCredential의 instance, 계정 공유 액세스 키 또는 azure.identity에서 TokenCredentials 클래스의 instance 수 있습니다. 리소스 URI에 이미 SAS 토큰이 포함된 경우 명시적 자격 증명을 위해 무시됩니다.

  • 충돌하는 SAS 토큰이 ValueError를 발생시키는 AzureSasCredential의 경우를 제외하고. AzureNamedKeyCredential의 instance 사용하는 경우 "name"은 스토리지 계정 이름이고 "키"는 스토리지 계정 키여야 합니다.
api_version
str

요청에 사용할 Storage API 버전입니다. 기본값은 현재 SDK와 호환되는 최신 서비스 버전입니다. 이전 버전으로 설정하면 기능 호환성이 저하될 수 있습니다.

예제

기존 DataLakeServiceClient에서 FileSystemClient를 가져옵니다.


   # Instantiate a DataLakeServiceClient using a connection string
   from azure.storage.filedatalake import DataLakeServiceClient
   datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)

   # Instantiate a FileSystemClient
   file_system_client = datalake_service_client.get_file_system_client("mynewfilesystem")

변수

url
str

사용되는 경우 SAS 토큰을 포함하여 파일 시스템에 대한 전체 엔드포인트 URL입니다.

primary_endpoint
str

전체 기본 엔드포인트 URL입니다.

primary_hostname
str

기본 엔드포인트의 호스트 이름입니다.

메서드

acquire_lease

새로운 임대를 요청합니다. 파일 시스템에 활성 임대가 없는 경우 DataLake 서비스는 파일 시스템에 임대를 만들고 새 임대 ID를 반환합니다.

close

이 메서드는 클라이언트에서 연 소켓을 닫는 것입니다. 컨텍스트 관리자와 함께 를 사용할 때는 사용할 필요가 없습니다.

create_directory

디렉터리 만들기

create_file

파일 만들기

create_file_system

지정된 계정 아래에 새 파일 시스템을 만듭니다.

이름이 같은 파일 시스템이 이미 있는 경우 ResourceExistsError가 발생합니다. 이 메서드는 새로 만든 파일 시스템과 상호 작용할 클라이언트를 반환합니다.

delete_directory

삭제할 지정된 경로를 표시합니다.

delete_file

삭제할 지정된 파일을 표시합니다.

delete_file_system

삭제할 지정된 파일 시스템을 표시합니다.

파일 시스템과 그 안에 포함된 파일은 나중에 가비지 수집 중에 삭제됩니다. 파일 시스템을 찾을 수 없으면 ResourceNotFoundError가 발생합니다.

exists

파일 시스템이 있으면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

from_connection_string

연결 문자열에서 FileSystemClient를 만듭니다.

:return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient

get_directory_client

지정된 디렉터리와 상호 작용할 클라이언트를 가져옵니다.

디렉터리가 아직 필요하지 않습니다.

get_file_client

지정된 파일과 상호 작용할 클라이언트를 가져옵니다.

파일이 아직 필요하지 않습니다.

get_file_system_access_policy

지정된 파일 시스템에 대한 권한을 가져옵니다. 사용 권한은 파일 시스템 데이터에 공개적으로 액세스할 수 있는지 여부를 나타냅니다.

get_file_system_properties

지정된 파일 시스템의 모든 사용자 정의 메타데이터 및 시스템 속성을 반환합니다. 반환된 데이터에는 파일 시스템의 경로 목록이 포함되지 않습니다.

get_paths

지정된 파일 시스템 아래의 경로(파일 또는 디렉터리일 수 있음)를 나열하는 생성기를 반환합니다. 생성기는 서비스에서 반환하는 연속 토큰을 지연적으로 따릅니다.

list_deleted_paths

지정된 파일 시스템에서 삭제된(파일 또는 디렉터리) 경로를 나열하는 생성기를 반환합니다. 생성기는 서비스에서 반환하는 연속 토큰을 지연적으로 따릅니다.

버전 12.4.0의 새로운 기능: 이 작업은 API 버전 '2020-06-12'에서 도입되었습니다.

set_file_system_access_policy

공유 액세스 서명과 함께 사용할 수 있는 지정된 파일 시스템 또는 저장된 액세스 정책에 대한 권한을 설정합니다. 사용 권한은 파일 시스템의 파일에 공개적으로 액세스할 수 있는지 여부를 나타냅니다.

set_file_system_metadata

지정된 파일 시스템에 대해 하나 이상의 사용자 정의 이름-값 쌍을 설정합니다. 이 작업에 대한 각 호출은 파일 시스템에 연결된 모든 기존 메타데이터를 대체합니다. 파일 시스템에서 모든 메타데이터를 제거하려면 메타데이터 받아쓰기 없이 이 작업을 호출합니다.

acquire_lease

새로운 임대를 요청합니다. 파일 시스템에 활성 임대가 없는 경우 DataLake 서비스는 파일 시스템에 임대를 만들고 새 임대 ID를 반환합니다.

acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> DataLakeLeaseClient

매개 변수

lease_duration
int
필수

임대 기간(초)을 지정하거나 만료되지 않는 임대의 경우 -1을 지정합니다. 가능한 유한 임대 기간은 15~60초 사이입니다. 갱신 또는 변경을 사용하여 임대 기간을 변경할 수 없습니다. 기본값은 -1(무한 임대)입니다.

lease_id
str
필수

GUID 문자열 형식의 제안된 임대 ID입니다. 제안된 임대 ID가 올바른 형식이 아닌 경우 DataLake 서비스는 400(잘못된 요청)을 반환합니다.

if_modified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

etag
str

ETag 값 또는 와일드카드 문자(*)입니다. 리소스가 변경되었는지 검사 match_condition 매개 변수에 지정된 조건에 따라 작동하는 데 사용됩니다.

match_condition
MatchConditions

etag에 사용할 일치 조건입니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

컨텍스트 관리자에서 실행할 수 있는 DataLakeLeaseClient 개체입니다.

반환 형식

예제

파일 시스템에서 임대를 획득합니다.


   # Acquire a lease on the file system
   lease = file_system_client.acquire_lease()

   # Delete file system by passing in the lease
   file_system_client.delete_file_system(lease=lease)

close

이 메서드는 클라이언트에서 연 소켓을 닫는 것입니다. 컨텍스트 관리자와 함께 를 사용할 때는 사용할 필요가 없습니다.

close() -> None

create_directory

디렉터리 만들기

create_directory(directory: DirectoryProperties | str, metadata: Dict[str, str] | None = None, **kwargs) -> DataLakeDirectoryClient

매개 변수

directory
str 또는 DirectoryProperties
필수

상호 작용할 디렉터리입니다. 디렉터리의 이름 또는 DirectoryProperties의 instance 수 있습니다.

metadata
dict(str, str)
필수

파일 내에서 메타데이터로 연결된 이름-값 쌍입니다.

content_settings
ContentSettings

경로 속성을 설정하는 데 사용되는 ContentSettings 개체입니다.

lease
DataLakeLeaseClient 또는 str

파일에 활성 임대가 있는 경우 필요합니다. 값은 DataLakeLeaseClient 개체 또는 임대 ID를 문자열로 사용할 수 있습니다.

umask
str

선택 사항이며 계정에 대해 계층 구조 네임스페이스를 사용하는 경우에만 유효합니다. 파일 또는 디렉터리를 만들고 부모 폴더에 기본 ACL이 없는 경우 umask는 만들 파일 또는 디렉터리의 권한을 제한합니다. 결과 권한은 p & ^u에 의해 부여됩니다. 여기서 p는 권한이며 umask입니다. 예를 들어 p가 0777이고 0057인 경우 결과 권한은 0720입니다. 기본 권한은 디렉터리의 경우 0777이고 파일의 경우 0666입니다. 기본 umask는 0027입니다. umask는 4자리 8진수 표기법(예: 0766)으로 지정해야 합니다.

owner
str

파일 또는 디렉터리의 소유자입니다.

group
str

파일 또는 디렉터리의 소유 그룹입니다.

acl
str

파일 및 디렉터리에 대한 POSIX 액세스 제어 권한을 설정합니다. 값은 쉼표로 구분된 액세스 제어 항목 목록입니다. ACE(각 액세스 제어 항목)는 "[scope:][type]:[id]:[permissions]" 형식의 scope, 형식, 사용자 또는 그룹 식별자 및 권한으로 구성됩니다.

lease_id
str

GUID 문자열 형식의 제안된 임대 ID입니다. 제안된 임대 ID가 올바른 형식이 아닌 경우 DataLake 서비스는 400(잘못된 요청)을 반환합니다.

lease_duration
int

임대 기간(초)을 지정하거나 만료되지 않는 임대의 경우 -1을 지정합니다. 가능한 유한 임대 기간은 15~60초 사이입니다. 갱신 또는 변경을 사용하여 임대 기간을 변경할 수 없습니다.

permissions
str

선택 사항이며 계정에 대해 계층 구조 네임스페이스를 사용하는 경우에만 유효합니다. 파일 소유자, 파일 소유 그룹 등에 대한 POSIX 액세스 권한을 설정합니다. 각 클래스에는 읽기, 쓰기 또는 실행 권한이 부여될 수 있습니다. 고정 비트도 지원됩니다. 기호(rwxrw-rw-) 및 4자리 8진수 표기법(예: 0766)이 모두 지원됩니다.

if_modified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

etag
str

ETag 값 또는 와일드카드 문자(*)입니다. 리소스가 변경되었는지 검사 match_condition 매개 변수에 지정된 조건에 따라 작동합니다.

match_condition
MatchConditions

etag에 사용할 일치 조건입니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

DataLakeDirectoryClient

예제

파일 시스템에서 디렉터리를 만듭니다.


   directory_client = file_system_client.create_directory("mydirectory")

create_file

파일 만들기

create_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

매개 변수

file
str 또는 FileProperties
필수

상호 작용할 파일입니다. 파일의 이름 또는 FileProperties의 instance 수 있습니다.

content_settings
ContentSettings
필수

경로 속성을 설정하는 데 사용되는 ContentSettings 개체입니다.

metadata
dict(str, str)
필수

파일 내에서 메타데이터로 연결된 이름-값 쌍입니다.

lease
DataLakeLeaseClient 또는 str

파일에 활성 임대가 있는 경우 필요합니다. 값은 DataLakeLeaseClient 개체이거나 임대 ID를 문자열로 사용할 수 있습니다.

umask
str

선택 사항이며 계층 구조 네임스페이스가 계정에 대해 사용하도록 설정된 경우에만 유효합니다. 파일 또는 디렉터리를 만들고 부모 폴더에 기본 ACL이 없는 경우 umask는 만들 파일 또는 디렉터리의 권한을 제한합니다. 결과 권한은 p & ^u에 의해 부여됩니다. 여기서 p는 사용 권한이며 umask입니다. 예를 들어 p가 0777이고 0057인 경우 결과 권한은 0720입니다. 기본 권한은 디렉터리의 경우 0777이고 파일의 경우 0666입니다. 기본 umask는 0027입니다. umask는 4자리 8진수 표기법(예: 0766)으로 지정해야 합니다.

owner
str

파일 또는 디렉터리의 소유자입니다.

group
str

파일 또는 디렉터리의 소유 그룹입니다.

acl
str

파일 및 디렉터리에 대한 POSIX 액세스 제어 권한을 설정합니다. 값은 액세스 제어 항목의 쉼표로 구분된 목록입니다. ACE(각 액세스 제어 항목)는 scope, 형식, 사용자 또는 그룹 식별자 및 "[scope:][type]:[id]:[permissions]" 형식의 권한으로 구성됩니다.

lease_id
str

GUID 문자열 형식의 제안된 임대 ID입니다. 제안된 임대 ID가 올바른 형식이 아닌 경우 DataLake 서비스는 400(잘못된 요청)을 반환합니다.

lease_duration
int

임대 기간(초)을 지정하거나 만료되지 않는 임대의 경우 -1을 지정합니다. 가능한 유한 임대 기간은 15~60초 사이입니다. 갱신 또는 변경을 사용하여 임대 기간을 변경할 수 없습니다.

expires_on
datetime 또는 int

파일을 만료로 설정하는 시간입니다. expires_on 유형이 int인 경우 만료 시간은 생성 시간으로부터 경과된 밀리초 수로 설정됩니다. expires_on 유형이 datetime인 경우 만료 시간은 제공된 시간으로 절대로 설정됩니다. 표준 시간대 정보가 제공되지 않으면 UTC로 해석됩니다.

permissions
str

선택 사항이며 계층 구조 네임스페이스가 계정에 대해 사용하도록 설정된 경우에만 유효합니다. 파일 소유자, 파일 소유 그룹 등에 대한 POSIX 액세스 권한을 설정합니다. 각 클래스에는 읽기, 쓰기 또는 실행 권한이 부여될 수 있습니다. 고정 비트도 지원됩니다. 기호(rwxrw-rw-) 및 4자리 8진수 표기법(예: 0766)이 모두 지원됩니다.

if_modified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함된 경우 UTC가 아닌 날짜/시간은 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함된 경우 UTC가 아닌 날짜/시간은 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

etag
str

ETag 값 또는 와일드카드 문자(*)입니다. 리소스가 변경되었는지 검사 match_condition 매개 변수에 지정된 조건에 따라 작동합니다.

match_condition
MatchConditions

etag에 사용할 일치 조건입니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

DataLakeFileClient

예제

파일 시스템에 파일을 만듭니다.


   file_client = file_system_client.create_file("myfile")

create_file_system

지정된 계정 아래에 새 파일 시스템을 만듭니다.

이름이 같은 파일 시스템이 이미 있는 경우 ResourceExistsError가 발생합니다. 이 메서드는 새로 만든 파일 시스템과 상호 작용할 클라이언트를 반환합니다.

create_file_system(metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

매개 변수

metadata
dict(str, str)
필수

파일 시스템과 메타데이터로 연결할 이름-값 쌍이 있는 받아쓰기입니다. 예: {'Category':'test'}

public_access
PublicAccess
필수

파일 시스템의 데이터에 공개적으로 액세스할 수 있는지 여부와 액세스 수준을 지정합니다.

encryption_scope_options
dict 또는 EncryptionScopeOptions

파일 시스템에서 설정하고 이후의 모든 쓰기에 사용할 기본 암호화 scope 지정합니다.

버전 12.9.0의 새로운 기능

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

응답 헤더의 사전입니다.

반환 형식

예제

datalake 서비스에서 파일 시스템 만들기


   file_system_client.create_file_system()

delete_directory

삭제할 지정된 경로를 표시합니다.

delete_directory(directory: DirectoryProperties | str, **kwargs) -> DataLakeDirectoryClient

매개 변수

directory
str 또는 DirectoryProperties
필수

상호 작용할 디렉터리입니다. 디렉터리의 이름 또는 DirectoryProperties의 instance 수 있습니다.

lease
DataLakeLeaseClient 또는 str

파일에 활성 임대가 있는 경우 필요합니다. 값은 LeaseClient 개체이거나 임대 ID를 문자열로 사용할 수 있습니다.

if_modified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함된 경우 UTC가 아닌 날짜/시간은 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함된 경우 UTC가 아닌 날짜/시간은 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

etag
str

ETag 값 또는 와일드카드 문자(*)입니다. 리소스가 변경되었는지 검사 match_condition 매개 변수에 지정된 조건에 따라 작동합니다.

match_condition
MatchConditions

etag에 사용할 일치 조건입니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

DataLakeDirectoryClient

예제

파일 시스템에서 디렉터리를 삭제합니다.


   file_system_client.delete_directory("mydirectory")

delete_file

삭제할 지정된 파일을 표시합니다.

delete_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

매개 변수

file
str 또는 FileProperties
필수

상호 작용할 파일입니다. 파일의 이름이거나 FileProperties의 instance 수 있습니다.

lease
DataLakeLeaseClient 또는 str

파일에 활성 임대가 있는 경우 필요합니다. 값은 LeaseClient 개체이거나 임대 ID를 문자열로 사용할 수 있습니다.

if_modified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

etag
str

ETag 값 또는 와일드카드 문자(*)입니다. 리소스가 변경되었는지 검사 match_condition 매개 변수에 지정된 조건에 따라 작동하는 데 사용됩니다.

match_condition
MatchConditions

etag에 사용할 일치 조건입니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

DataLakeFileClient

예제

파일 시스템에서 파일을 삭제합니다.


   file_system_client.delete_file("myfile")

delete_file_system

삭제할 지정된 파일 시스템을 표시합니다.

파일 시스템과 그 안에 포함된 파일은 나중에 가비지 수집 중에 삭제됩니다. 파일 시스템을 찾을 수 없으면 ResourceNotFoundError가 발생합니다.

delete_file_system(**kwargs: Any) -> None

매개 변수

lease
str 또는 DataLakeLeaseClient

지정된 경우 delete_file_system 파일 시스템의 임대가 활성 상태이고 이 ID와 일치하는 경우에만 성공합니다. 파일 시스템에 활성 임대가 있는 경우 필요합니다.

if_modified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

etag
str

ETag 값 또는 와일드카드 문자(*)입니다. 리소스가 변경되었는지 검사 match_condition 매개 변수에 지정된 조건에 따라 작동하는 데 사용됩니다.

match_condition
MatchConditions

etag에 사용할 일치 조건입니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환 형식

예제

datalake 서비스에서 파일 시스템 삭제.


   file_system_client.delete_file_system()

exists

파일 시스템이 있으면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

exists(**kwargs: Any) -> bool

매개 변수

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

파일 시스템이 있으면 True, 그렇지 않으면 False입니다.

반환 형식

from_connection_string

연결 문자열에서 FileSystemClient를 만듭니다.

:return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient

from_connection_string(conn_str: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

매개 변수

conn_str
str
필수

Azure Storage 계정에 대한 연결 문자열입니다.

file_system_name
str
필수

상호 작용할 파일 시스템의 이름입니다.

credential
기본값: None

인증할 자격 증명입니다. 계정 URL에 이미 SAS 토큰이 있거나 연결 문자열에 공유 액세스 키 값이 이미 있는 경우 선택 사항입니다. 값은 SAS 토큰 문자열, azure.core.credentials에서 AzureSasCredential 또는 AzureNamedKeyCredential의 instance, 계정 공유 액세스 키 또는 azure.identity에서 TokenCredentials 클래스의 instance 수 있습니다. 여기에 제공된 자격 증명이 연결 문자열의 자격 증명보다 우선합니다. AzureNamedKeyCredential의 instance 사용하는 경우 "name"은 스토리지 계정 이름이고 "키"는 스토리지 계정 키여야 합니다.

예제

연결 문자열에서 FileSystemClient 만들기


   from azure.storage.filedatalake import FileSystemClient
   file_system_client = FileSystemClient.from_connection_string(self.connection_string, "filesystem")

get_directory_client

지정된 디렉터리와 상호 작용할 클라이언트를 가져옵니다.

디렉터리가 아직 필요하지 않습니다.

get_directory_client(directory: DirectoryProperties | str) -> DataLakeDirectoryClient

매개 변수

directory
str 또는 DirectoryProperties
필수

상호 작용할 디렉터리입니다. 디렉터리의 이름 또는 DirectoryProperties의 instance 수 있습니다.

반환

DataLakeDirectoryClient입니다.

반환 형식

예제

디렉터리 클라이언트가 특정 디렉터리와 상호 작용하도록 합니다.


   # Get the DataLakeDirectoryClient from the FileSystemClient to interact with a specific file
   directory_client = file_system_client.get_directory_client("mynewdirectory")

get_file_client

지정된 파일과 상호 작용할 클라이언트를 가져옵니다.

파일이 아직 필요하지 않습니다.

get_file_client(file_path: FileProperties | str) -> DataLakeFileClient

매개 변수

file_path
str 또는 FileProperties
필수

상호 작용할 파일입니다. 이 경로는 파일의 경로(루트 디렉터리에서) 또는 FileProperties의 instance 수 있습니다. 예를 들어 디렉터리/하위 디렉터리/파일

반환

DataLakeFileClient입니다.

반환 형식

예제

파일 클라이언트가 특정 파일과 상호 작용하도록 합니다.


   # Get the FileClient from the FileSystemClient to interact with a specific file
   file_client = file_system_client.get_file_client("mynewfile")

get_file_system_access_policy

지정된 파일 시스템에 대한 권한을 가져옵니다. 사용 권한은 파일 시스템 데이터에 공개적으로 액세스할 수 있는지 여부를 나타냅니다.

get_file_system_access_policy(**kwargs: Any) -> Dict[str, Any]

매개 변수

lease
DataLakeLeaseClient 또는 str

지정된 경우 파일 시스템의 임대가 활성 상태이고 이 ID와 일치하는 경우에만 작업이 성공합니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

받아쓰기에서 정책 정보에 액세스합니다.

반환 형식

get_file_system_properties

지정된 파일 시스템의 모든 사용자 정의 메타데이터 및 시스템 속성을 반환합니다. 반환된 데이터에는 파일 시스템의 경로 목록이 포함되지 않습니다.

get_file_system_properties(**kwargs: Any) -> FileSystemProperties

매개 변수

lease
str 또는 DataLakeLeaseClient

지정된 경우 get_file_system_properties 파일 시스템의 임대가 활성 상태이고 이 ID와 일치하는 경우에만 성공합니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

파일 시스템 개체 내의 지정된 파일 시스템에 대한 속성입니다.

반환 형식

예제

파일 시스템에서 속성을 가져옵니다.


   properties = file_system_client.get_file_system_properties()

get_paths

지정된 파일 시스템 아래의 경로(파일 또는 디렉터리일 수 있음)를 나열하는 생성기를 반환합니다. 생성기는 서비스에서 반환하는 연속 토큰을 지연적으로 따릅니다.

get_paths(path: str | None = None, recursive: bool | None = True, max_results: int | None = None, **kwargs) -> ItemPaged[PathProperties]

매개 변수

path
str
필수

지정된 경로 아래의 경로만 반환하도록 결과를 필터링합니다.

recursive
Optional[bool]
필수

(선택 사항) 재귀의 경우 True, 반복의 경우 False를 설정합니다.

max_results
int
필수

페이지당 반환할 최대 항목 수를 지정하는 선택적 값입니다. 생략되거나 5,000개보다 큰 경우 응답에는 페이지당 최대 5,000개 항목이 포함됩니다.

upn

(선택 사항) 계정에 대해 계층 구조 네임스페이스를 사용하는 경우에만 유효합니다. "true"이면 x-ms-owner, x-ms-group 및 x-ms-acl 응답 헤더에 반환된 사용자 ID 값이 Azure Active Directory 개체 ID에서 사용자 계정 이름으로 변환됩니다. "false"이면 값이 Azure Active Directory 개체 ID로 반환됩니다. 기본값은 False입니다. 그룹 및 애플리케이션 개체 ID는 고유한 식별 이름이 없으므로 번역되지 않습니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

PathProperties의 반복 가능(자동 페이징) 응답입니다.

반환 형식

예제

파일 시스템의 경로를 나열합니다.


   path_list = file_system_client.get_paths()
   for path in path_list:
       print(path.name + '\n')

list_deleted_paths

지정된 파일 시스템에서 삭제된(파일 또는 디렉터리) 경로를 나열하는 생성기를 반환합니다. 생성기는 서비스에서 반환하는 연속 토큰을 지연적으로 따릅니다.

버전 12.4.0의 새로운 기능: 이 작업은 API 버전 '2020-06-12'에서 도입되었습니다.

list_deleted_paths(**kwargs: Any) -> ItemPaged[DeletedPathProperties]

매개 변수

path_prefix
str

지정된 경로 아래의 경로만 반환하도록 결과를 필터링합니다.

results_per_page
int

페이지당 반환할 최대 항목 수를 지정하는 선택적 값입니다. 생략되거나 5,000개보다 큰 경우 응답에는 페이지당 최대 5,000개 항목이 포함됩니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

DeletedPathProperties의 반복 가능(자동 페이징) 응답입니다.

반환 형식

set_file_system_access_policy

공유 액세스 서명과 함께 사용할 수 있는 지정된 파일 시스템 또는 저장된 액세스 정책에 대한 권한을 설정합니다. 사용 권한은 파일 시스템의 파일에 공개적으로 액세스할 수 있는지 여부를 나타냅니다.

set_file_system_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

매개 변수

signed_identifiers
dict[str, AccessPolicy]
필수

파일 시스템과 연결할 액세스 정책 사전입니다. 사전에는 최대 5개의 요소가 포함될 수 있습니다. 빈 사전은 서비스에 설정된 액세스 정책을 지웁히게 됩니다.

public_access
PublicAccess
필수

파일 시스템의 데이터에 공개적으로 액세스할 수 있는지 여부와 액세스 수준을 지정합니다.

lease
DataLakeLeaseClient 또는 str

파일 시스템에 활성 임대가 있는 경우 필요합니다. 값은 DataLakeLeaseClient 개체 또는 임대 ID를 문자열로 사용할 수 있습니다.

if_modified_since
datetime

datetime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

datetime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

파일 시스템 업데이트 속성 dict(Etag 및 마지막으로 수정됨).

반환 형식

set_file_system_metadata

지정된 파일 시스템에 대해 하나 이상의 사용자 정의 이름-값 쌍을 설정합니다. 이 작업에 대한 각 호출은 파일 시스템에 연결된 모든 기존 메타데이터를 대체합니다. 파일 시스템에서 모든 메타데이터를 제거하려면 메타데이터 받아쓰기 없이 이 작업을 호출합니다.

set_file_system_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]

매개 변수

metadata
dict[str, str]
필수

파일 시스템과 메타데이터로 연결할 이름-값 쌍을 포함하는 받아쓰기입니다. 예: {'category':'test'}

lease
str 또는 DataLakeLeaseClient

지정된 경우 set_file_system_metadata 파일 시스템의 임대가 활성 상태이고 이 ID와 일치하는 경우에만 성공합니다.

if_modified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 시간 이후 리소스가 수정된 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

if_unmodified_since
datetime

DateTime 값입니다. Azure는 전달된 날짜 값이 UTC일 것으로 예상합니다. 표준 시간대가 포함되면 UTC가 아닌 날짜/시간이 UTC로 변환됩니다. 날짜가 표준 시간대 정보 없이 전달되는 경우 UTC로 간주됩니다. 지정된 날짜/시간 이후 리소스가 수정되지 않은 경우에만 작업을 수행하려면 이 헤더를 지정합니다.

etag
str

ETag 값 또는 와일드카드 문자(*)입니다. 리소스가 변경되었는지 검사 match_condition 매개 변수에 지정된 조건에 따라 작동하는 데 사용됩니다.

match_condition
MatchConditions

etag에 사용할 일치 조건입니다.

timeout
int

작업에 대한 서버 쪽 시간 제한을 초 단위로 설정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 를 참조하세요. 이 값은 클라이언트에서 추적되거나 유효성이 검사되지 않습니다. 클라이언트 쪽 네트워크 시간 제한을 구성하려면 여기를 참조 하세요.

반환

filesystem-updated 속성 dict(Etag 및 마지막으로 수정됨).

반환 형식

예제

파일 시스템에서 메타데이터 설정.


   # Create key, value pairs for metadata
   metadata = {'type': 'test'}

   # Set metadata on the file system
   file_system_client.set_file_system_metadata(metadata=metadata)

특성

api_version

요청에 사용되는 Storage API의 버전입니다.

location_mode

클라이언트가 현재 사용 중인 위치 모드입니다.

기본적으로 "기본"입니다. 옵션에는 "기본" 및 "보조"가 포함됩니다.

primary_endpoint

전체 기본 엔드포인트 URL입니다.

primary_hostname

기본 엔드포인트의 호스트 이름입니다.

secondary_endpoint

구성된 경우 전체 보조 엔드포인트 URL입니다.

사용할 수 없는 경우 ValueError가 발생합니다. 보조 호스트 이름을 명시적으로 지정하려면 인스턴스화에 선택적 secondary_hostname 키워드(keyword) 인수를 사용합니다.

예외

secondary_hostname

보조 엔드포인트의 호스트 이름입니다.

사용할 수 없는 경우 없음이 됩니다. 보조 호스트 이름을 명시적으로 지정하려면 인스턴스화에 선택적 secondary_hostname 키워드(keyword) 인수를 사용합니다.

url

사용되는 경우 SAS 토큰을 포함하여 이 엔터티에 대한 전체 엔드포인트 URL입니다.

이는 기본 엔드포인트이거나 현재 location_mode에 따라 보조 엔드포인트일 수 있습니다. :returns: 사용되는 경우 SAS 토큰을 포함하여 이 엔터티에 대한 전체 엔드포인트 URL입니다. :rtype: str