다음을 통해 공유


DataLakeServiceClient class

DataLakeServiceClient를 사용하면 Azure Data Lake 서비스 리소스 및 파일 시스템을 조작할 수 있습니다. 스토리지 계정은 Data Lake 서비스에 대한 최상위 네임스페이스를 제공합니다.

Extends

StorageClient

생성자

DataLakeServiceClient(string, Pipeline)

URL 및 파이프라인에서 DataLakeServiceClient의 인스턴스를 만듭니다.

DataLakeServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

URL에서 DataLakeServiceClient의 인스턴스를 만듭니다.

상속된 속성

accountName
credential

AnonymousCredential, StorageSharedKeyCredential 또는 패키지의 @azure/identity 자격 증명과 같이 서비스에 대한 요청을 인증합니다. TokenCredential 인터페이스를 구현하는 개체를 제공할 수도 있습니다. 지정하지 않으면 AnonymousCredential이 사용됩니다.

url

인코딩된 URL 문자열 값입니다.

메서드

fromConnectionString(string, StoragePipelineOptions)

연결 문자열에서 DataLakeServiceClient의 인스턴스를 만듭니다.

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

공유 키 자격 증명을 사용하여 생성된 DataLakeServiceClient에만 사용할 수 있습니다.

전달된 클라이언트 속성 및 매개 변수를 기반으로 계정 SAS(공유 액세스 서명) URI를 생성합니다. SAS는 클라이언트의 공유 키 자격 증명으로 서명됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas를 참조하세요.

getFileSystemClient(string)

DataLakeFileSystemClient 개체를 만듭니다.

getProperties(ServiceGetPropertiesOptions)

스토리지 분석 및 CORS(원본 간 리소스 공유) 규칙에 대한 속성을 포함하여 스토리지 계정의 Blob 서비스 엔드포인트 속성을 가져옵니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties를 참조하세요.

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

전달자 토큰 인증(TokenCredential)을 사용하는 경우에만 사용할 수 있습니다.

Data Lake 서비스의 사용자 위임 키를 검색합니다. 이는 전달자 토큰 인증을 사용하는 경우에만 유효한 작업입니다.

예제

// Generate user delegation SAS for a file system
const userDelegationKey = await dataLakeServiceClient.getUserDelegationKey(startsOn, expiresOn);
const fileSystemSAS = generateDataLakeSASQueryParameters({
    fileSystemName, // Required
    permissions: FileSystemSASPermissions.parse("racwdl"), // Required
    startsOn, // Required. Date type
    expiresOn, // Optional. Date type
    ipRange: { start: "0.0.0.0", end: "255.255.255.255" }, // Optional
    protocol: SASProtocol.HttpsAndHttp, // Optional
    version: "2018-11-09" // Must greater than or equal to 2018-11-09 to generate user delegation SAS
  },
  userDelegationKey, // UserDelegationKey
  accountName
).toString();

https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key를 참조하세요.

listFileSystems(ServiceListFileSystemsOptions)

지정된 계정 아래의 모든 파일 시스템을 나열하는 비동기 반복기를 반환합니다.

.byPage()는 비동기 반복 반복기를 반환하여 파일 시스템을 페이지에 나열합니다.

구문을 사용하는 for await 예제:

let i = 1;
for await (const fileSystem of serviceClient.listFileSystems()) {
  console.log(`FileSystem ${i++}: ${fileSystem.name}`);
}

iter.next()을(를) 사용하는 예제:

let i = 1;
const iter = serviceClient.listFileSystems();
let fileSystemItem = await iter.next();
while (!fileSystemItem.done) {
  console.log(`FileSystem ${i++}: ${fileSystemItem.value.name}`);
  fileSystemItem = await iter.next();
}

byPage()을(를) 사용하는 예제:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of serviceClient.listFileSystems().byPage({ maxPageSize: 20 })) {
  if (response.fileSystemItems) {
    for (const fileSystem of response.fileSystemItems) {
      console.log(`FileSystem ${i++}: ${fileSystem.name}`);
    }
  }
}

표식과 함께 페이징을 사용하는 예제:

let i = 1;
let iterator = serviceClient.listFileSystems().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = serviceClient
  .listContainers()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
     console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

https://docs.microsoft.com/en-us/rest/api/storageservices/list-containers2를 참조하세요.

setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

스토리지 분석, CORS(원본 간 리소스 공유) 규칙 및 일시 삭제 설정에 대한 속성을 포함하여 스토리지 계정의 Blob 서비스 엔드포인트에 대한 속성을 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties를 참조하세요.

undeleteFileSystem(string, string, ServiceUndeleteFileSystemOptions)

이전에 삭제한 파일 시스템을 복원합니다. 이 API는 스토리지 계정에 대해 컨테이너 일시 삭제를 사용하도록 설정한 경우에만 작동합니다.

생성자 세부 정보

DataLakeServiceClient(string, Pipeline)

URL 및 파이프라인에서 DataLakeServiceClient의 인스턴스를 만듭니다.

new DataLakeServiceClient(url: string, pipeline: Pipeline)

매개 변수

url

string

Azure Storage 데이터 레이크 서비스를 가리키는 클라이언트 문자열(예: "https://myaccount.dfs.core.windows.net") AnonymousCredential(예: "https://myaccount.dfs.core.windows.net?sasString")을 사용하는 경우 SAS를 추가할 수 있습니다.

pipeline
Pipeline

newPipeline()을 호출하여 기본 파이프라인을 만들거나 사용자 지정된 파이프라인을 제공합니다.

DataLakeServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

URL에서 DataLakeServiceClient의 인스턴스를 만듭니다.

new DataLakeServiceClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

매개 변수

url

string

Azure Storage 데이터 레이크 서비스를 가리키는 클라이언트 문자열(예: "https://myaccount.dfs.core.windows.net") AnonymousCredential(예: "https://myaccount.dfs.core.windows.net?sasString")을 사용하는 경우 SAS를 추가할 수 있습니다.

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

AnonymousCredential, StorageSharedKeyCredential 또는 패키지의 @azure/identity 자격 증명과 같이 서비스에 대한 요청을 인증합니다. TokenCredential 인터페이스를 구현하는 개체를 제공할 수도 있습니다. 지정하지 않으면 AnonymousCredential이 사용됩니다.

options
StoragePipelineOptions

(선택 사항) HTTP 파이프라인을 구성하는 옵션입니다.

상속된 속성 세부 정보

accountName

accountName: string

속성 값

string

상속된 위치에서 StorageClient.accountName

credential

AnonymousCredential, StorageSharedKeyCredential 또는 패키지의 @azure/identity 자격 증명과 같이 서비스에 대한 요청을 인증합니다. TokenCredential 인터페이스를 구현하는 개체를 제공할 수도 있습니다. 지정하지 않으면 AnonymousCredential이 사용됩니다.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

속성 값

상속된 위치에서 StorageClient.credential

url

인코딩된 URL 문자열 값입니다.

url: string

속성 값

string

상속된 위치에서 StorageClient.url

메서드 세부 정보

fromConnectionString(string, StoragePipelineOptions)

연결 문자열에서 DataLakeServiceClient의 인스턴스를 만듭니다.

static function fromConnectionString(connectionString: string, options?: StoragePipelineOptions): DataLakeServiceClient

매개 변수

connectionString

string

계정 연결 문자열 또는 Azure Storage 계정의 SAS 연결 문자열입니다. [ 참고 - 계정 연결 문자열은 NODE.JS 런타임에서만 사용할 수 있습니다. ] 계정 연결 문자열 예제 -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net SAS 연결 문자열 예제 - BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

options
StoragePipelineOptions

(선택 사항) HTTP 파이프라인을 구성하는 옵션입니다.

반환

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

공유 키 자격 증명을 사용하여 생성된 DataLakeServiceClient에만 사용할 수 있습니다.

전달된 클라이언트 속성 및 매개 변수를 기반으로 계정 SAS(공유 액세스 서명) URI를 생성합니다. SAS는 클라이언트의 공유 키 자격 증명으로 서명됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas를 참조하세요.

function generateAccountSasUrl(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string

매개 변수

expiresOn

Date

(선택 사항) 공유 액세스 서명이 유효하지 않은 시간입니다. 지정하지 않으면 기본값은 1시간 후입니다.

permissions
AccountSASPermissions

SAS와 연결할 사용 권한 목록을 지정합니다.

resourceTypes

string

공유 액세스 서명과 연결된 리소스 유형을 지정합니다.

options
ServiceGenerateAccountSasUrlOptions

선택적 매개 변수입니다.

반환

string

이 클라이언트가 나타내는 리소스에 대한 URI와 생성된 SAS 토큰으로 구성된 계정 SAS URI입니다.

getFileSystemClient(string)

DataLakeFileSystemClient 개체를 만듭니다.

function getFileSystemClient(fileSystemName: string): DataLakeFileSystemClient

매개 변수

fileSystemName

string

파일 시스템 이름입니다.

반환

getProperties(ServiceGetPropertiesOptions)

스토리지 분석 및 CORS(원본 간 리소스 공유) 규칙에 대한 속성을 포함하여 스토리지 계정의 Blob 서비스 엔드포인트 속성을 가져옵니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties를 참조하세요.

function getProperties(options?: ServiceGetPropertiesOptions): Promise<ServiceGetPropertiesResponse>

매개 변수

options
ServiceGetPropertiesOptions

서비스 속성 가져오기 작업에 대한 옵션입니다.

반환

서비스 속성 가져오기 작업에 대한 응답 데이터입니다.

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

전달자 토큰 인증(TokenCredential)을 사용하는 경우에만 사용할 수 있습니다.

Data Lake 서비스의 사용자 위임 키를 검색합니다. 이는 전달자 토큰 인증을 사용하는 경우에만 유효한 작업입니다.

예제

// Generate user delegation SAS for a file system
const userDelegationKey = await dataLakeServiceClient.getUserDelegationKey(startsOn, expiresOn);
const fileSystemSAS = generateDataLakeSASQueryParameters({
    fileSystemName, // Required
    permissions: FileSystemSASPermissions.parse("racwdl"), // Required
    startsOn, // Required. Date type
    expiresOn, // Optional. Date type
    ipRange: { start: "0.0.0.0", end: "255.255.255.255" }, // Optional
    protocol: SASProtocol.HttpsAndHttp, // Optional
    version: "2018-11-09" // Must greater than or equal to 2018-11-09 to generate user delegation SAS
  },
  userDelegationKey, // UserDelegationKey
  accountName
).toString();

https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key를 참조하세요.

function getUserDelegationKey(startsOn: Date, expiresOn: Date, options?: ServiceGetUserDelegationKeyOptions): Promise<ServiceGetUserDelegationKeyResponse>

매개 변수

startsOn

Date

사용자 위임 SAS의 시작 시간입니다. 현재 시간에서 7일 이내여야 합니다.

expiresOn

Date

사용자 위임 SAS의 종료 시간입니다. 현재 시간에서 7일 이내여야 합니다.

반환

listFileSystems(ServiceListFileSystemsOptions)

지정된 계정 아래의 모든 파일 시스템을 나열하는 비동기 반복기를 반환합니다.

.byPage()는 비동기 반복 반복기를 반환하여 파일 시스템을 페이지에 나열합니다.

구문을 사용하는 for await 예제:

let i = 1;
for await (const fileSystem of serviceClient.listFileSystems()) {
  console.log(`FileSystem ${i++}: ${fileSystem.name}`);
}

iter.next()을(를) 사용하는 예제:

let i = 1;
const iter = serviceClient.listFileSystems();
let fileSystemItem = await iter.next();
while (!fileSystemItem.done) {
  console.log(`FileSystem ${i++}: ${fileSystemItem.value.name}`);
  fileSystemItem = await iter.next();
}

byPage()을(를) 사용하는 예제:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of serviceClient.listFileSystems().byPage({ maxPageSize: 20 })) {
  if (response.fileSystemItems) {
    for (const fileSystem of response.fileSystemItems) {
      console.log(`FileSystem ${i++}: ${fileSystem.name}`);
    }
  }
}

표식과 함께 페이징을 사용하는 예제:

let i = 1;
let iterator = serviceClient.listFileSystems().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = serviceClient
  .listContainers()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
     console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

https://docs.microsoft.com/en-us/rest/api/storageservices/list-containers2를 참조하세요.

function listFileSystems(options?: ServiceListFileSystemsOptions): PagedAsyncIterableIterator<FileSystemItem, ServiceListFileSystemsSegmentResponse, PageSettings>

매개 변수

반환

setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

스토리지 분석, CORS(원본 간 리소스 공유) 규칙 및 일시 삭제 설정에 대한 속성을 포함하여 스토리지 계정의 Blob 서비스 엔드포인트에 대한 속성을 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties를 참조하세요.

function setProperties(properties: BlobServiceProperties, options?: ServiceSetPropertiesOptions): Promise<ServiceSetPropertiesResponse>

매개 변수

options
ServiceSetPropertiesOptions

서비스 설정 속성 작업에 대한 옵션입니다.

반환

서비스 집합 속성 작업에 대한 응답 데이터입니다.

undeleteFileSystem(string, string, ServiceUndeleteFileSystemOptions)

이전에 삭제한 파일 시스템을 복원합니다. 이 API는 스토리지 계정에 대해 컨테이너 일시 삭제를 사용하도록 설정한 경우에만 작동합니다.

function undeleteFileSystem(deletedFileSystemName: string, deleteFileSystemVersion: string, options?: ServiceUndeleteFileSystemOptions): Promise<{ fileSystemClient: DataLakeFileSystemClient, fileSystemUndeleteResponse: ContainerUndeleteResponse }>

매개 변수

deletedFileSystemName

string

원본 파일 시스템의 이름입니다.

deleteFileSystemVersion

string

파일 시스템의 새 이름입니다.

options
ServiceUndeleteFileSystemOptions

파일 시스템 복원 작업을 구성하는 옵션입니다.

반환

Promise<{ fileSystemClient: DataLakeFileSystemClient, fileSystemUndeleteResponse: ContainerUndeleteResponse }>