다음을 통해 공유


DataLakeFileClient class

DataLakeFileClient는 Azure Storage 파일에 대한 URL을 나타냅니다.

Extends

생성자

DataLakeFileClient(string, Pipeline)

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

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

URL 및 자격 증명에서 DataLakeFileClient의 인스턴스를 만듭니다.

속성

fileSystemName

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

name

현재 경로의 이름(디렉터리 또는 파일)입니다.

상속된 속성

accountName
credential

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

url

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

메서드

append(RequestBodyType, number, number, FileAppendOptions)

파일에 추가할 데이터를 업로드합니다. 데이터는 파일에만 추가할 수 있습니다. 파일에 악의적으로 업로드된 데이터를 적용하려면 플러시를 호출합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

create(FileCreateOptions)

파일을 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

create(PathResourceTypeModel, PathCreateOptions)

파일을 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

createIfNotExists(FileCreateIfNotExistsOptions)

파일이 아직 없는 경우 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

createIfNotExists(PathResourceTypeModel, PathCreateIfNotExistsOptions)

파일이 아직 없는 경우 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

flush(number, FileFlushOptions)

이전에 파일에 데이터를 추가한 플러시(쓰기)입니다.

generateSasStringToSign(FileGenerateSasUrlOptions)

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

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

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

generateSasUrl(FileGenerateSasUrlOptions)

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

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

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

generateUserDelegationSasStringToSign(FileGenerateSasUrlOptions, UserDelegationKey)

전달된 클라이언트 속성 및 매개 변수를 기반으로 SAS(서비스 공유 액세스 서명) URI에 서명하는 문자열을 생성합니다. SAS는 입력 사용자 위임 키로 서명됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

generateUserDelegationSasUrl(FileGenerateSasUrlOptions, UserDelegationKey)

전달된 클라이언트 속성 및 매개 변수를 기반으로 SAS(서비스 공유 액세스 서명) URI를 생성합니다. SAS는 입력 사용자 위임 키로 서명됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

query(string, FileQueryOptions)

JSON 또는 CSV 형식 파일에 대한 빠른 쿼리입니다.

예제 사용량(Node.js):

// Query and convert a file to a string
const queryResponse = await fileClient.query("select * from BlobStorage");
const downloaded = (await streamToBuffer(queryResponse.readableStreamBody)).toString();
console.log("Query file content:", downloaded);

async function streamToBuffer(readableStream) {
  return new Promise((resolve, reject) => {
    const chunks = [];
    readableStream.on("data", (data) => {
      chunks.push(data instanceof Buffer ? data : Buffer.from(data));
    });
    readableStream.on("end", () => {
      resolve(Buffer.concat(chunks));
    });
    readableStream.on("error", reject);
  });
}
read(number, number, FileReadOptions)

메타데이터 및 속성을 포함하여 서비스에서 파일을 다운로드합니다.

  • Node.js읽기 가능한 스트림 ReadableStreamBody에서 데이터가 반환됩니다.
  • 브라우저에서 데이터는 promise contentAsBlob에서 반환됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob 참조

  • 예제 사용량(Node.js):
// Download and convert a file to a string
const downloadResponse = await fileClient.read();
const downloaded = await streamToBuffer(downloadResponse.readableStreamBody);
console.log("Downloaded file content:", downloaded.toString());

async function streamToBuffer(readableStream) {
  return new Promise((resolve, reject) => {
    const chunks = [];
    readableStream.on("data", (data) => {
      chunks.push(data instanceof Buffer ? data : Buffer.from(data));
    });
    readableStream.on("end", () => {
      resolve(Buffer.concat(chunks));
    });
    readableStream.on("error", reject);
  });
}

사용 예(브라우저):

// Download and convert a file to a string
const downloadResponse = await fileClient.read();
const downloaded = await blobToString(await downloadResponse.contentAsBlob);
console.log("Downloaded file content", downloaded);

async function blobToString(blob: Blob): Promise<string> {
  const fileReader = new FileReader();
  return new Promise<string>((resolve, reject) => {
    fileReader.onloadend = (ev: any) => {
      resolve(ev.target!.result);
    };
    fileReader.onerror = reject;
    fileReader.readAsText(blob);
  });
}
readToBuffer(Buffer, number, number, FileReadToBufferOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

버퍼와 병렬로 Data Lake 파일을 읽습니다. 오프셋 및 개수는 선택 사항이며, 전체 파일을 읽으려면 둘 다 0을 전달합니다.

경고: 버퍼는 Node.js/V8의 제한으로 인해 32비트 시스템에서 최대 1GB 또는 64비트 시스템에서 약 2GB의 파일만 지원할 수 있습니다. 이 크기보다 큰 파일의 경우 readToFile것이 좋습니다.

readToBuffer(number, number, FileReadToBufferOptions)

NODE.JS 런타임에서만 사용 가능

버퍼와 병렬로 Data Lake 파일을 읽습니다. 오프셋 및 개수는 선택 사항이며, 전체 파일을 읽으려면 둘 다 0을 전달합니다.

경고: 버퍼는 Node.js/V8의 제한으로 인해 32비트 시스템에서 최대 1GB 또는 64비트 시스템에서 약 2GB의 파일만 지원할 수 있습니다. 이 크기보다 큰 파일의 경우 readToFile것이 좋습니다.

readToFile(string, number, number, FileReadOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

Data Lake 파일을 로컬 파일에 다운로드합니다. 지정된 파일 경로가 이미 종료되면 실패합니다. 오프셋 및 개수는 선택 사항이며, 전체 파일을 다운로드하기 위해 각각 0과 정의되지 않은 값을 전달합니다.

setExpiry(FileExpiryMode, FileSetExpiryOptions)

파일이 삭제되면 파일의 만료 시간을 설정합니다.

upload(Blob | ArrayBuffer | ArrayBufferView | Buffer, FileParallelUploadOptions)

버퍼(Node.js)/Blob/ArrayBuffer/ArrayBufferView를 파일에 업로드합니다.

uploadFile(string, FileParallelUploadOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

Data Lake 파일에 로컬 파일을 업로드합니다.

uploadStream(Readable, FileParallelUploadOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

Node.js 읽기 가능한 스트림을 Data Lake 파일에 업로드합니다. 이 메서드는 파일을 만든 다음 청크로 청크 업로드를 시작합니다. 스트림의 잠재적 크기가 FILE_MAX_SIZE_BYTES 초과하지 않고 잠재적 청크 수가 BLOCK_BLOB_MAX_BLOCKS 초과하지 않는지 확인하세요.

성능 향상 팁:

  • input stream highWaterMark는 options.chunkSize 매개 변수를 사용하여 동일한 값을 설정하는 것이 더 낫습니다. 그러면 Buffer.concat() 작업이 방지됩니다.

상속된 메서드

delete(boolean, PathDeleteOptions)

현재 경로(디렉터리 또는 파일)를 삭제합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete 참조

deleteIfExists(boolean, PathDeleteOptions)

현재 경로(디렉터리 또는 파일)가 있는 경우 삭제합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete 참조

exists(PathExistsOptions)

이 클라이언트가 나타내는 Data Lake 파일이 있으면 true를 반환합니다. false이면 false입니다.

참고: 다른 클라이언트 또는 애플리케이션에서 기존 파일을 삭제할 수 있기 때문에 이 함수를 주의해서 사용합니다. 그 반대로 이 함수가 완료된 후 다른 클라이언트 또는 애플리케이션에서 새 파일을 추가할 수 있습니다.

getAccessControl(PathGetAccessControlOptions)

경로(파일 디렉터리)에 대한 액세스 제어 데이터를 반환합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/getproperties 참조

getDataLakeLeaseClient(string)

경로(디렉터리 또는 파일)에서 임대를 관리하는 DataLakeLeaseClient 가져옵니다.

getProperties(PathGetPropertiesOptions)

경로(디렉터리 또는 파일)에 대한 모든 사용자 정의 메타데이터, 표준 HTTP 속성 및 시스템 속성을 반환합니다.

경고: 응답에서 반환된 metadata 개체에는 원래 대문자가 포함되어 있더라도 해당 키가 소문자로 표시됩니다. 이는 원래 대/소문자를 유지하는 옵션을 사용하여 경로를 나열하는 includeMetadata 메서드에서 반환하는 메타데이터 키와 다릅니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties 참조

move(string, PathMoveOptions)

동일한 파일 시스템 내에서 디렉터리 또는 파일을 이동합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

move(string, string, PathMoveOptions)

디렉터리 또는 파일을 다른 파일 시스템으로 이동합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

removeAccessControlRecursive(RemovePathAccessControlItem[], PathChangeAccessControlRecursiveOptions)

경로 및 하위 경로에서 Access Control을 제거합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

setAccessControl(PathAccessControlItem[], PathSetAccessControlOptions)

경로(파일 디렉터리)에 대한 액세스 제어 데이터를 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

setAccessControlRecursive(PathAccessControlItem[], PathChangeAccessControlRecursiveOptions)

경로 및 하위 경로에 대한 Access Control을 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

setHttpHeaders(PathHttpHeaders, PathSetHttpHeadersOptions)

경로(디렉터리 또는 파일)의 시스템 속성을 설정합니다.

값이 제공되지 않거나 지정된 Blob HTTP 헤더에 대해 값이 제공되지 않은 경우 값이 없는 이러한 Blob HTTP 헤더는 지워지게 됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties 참조

setMetadata(Metadata, PathSetMetadataOptions)

지정된 경로(파일 디렉터리)에 대한 사용자 정의 메타데이터를 하나 이상의 이름-값 쌍으로 설정합니다.

옵션이 제공되지 않거나 매개 변수에 정의된 메타데이터가 없는 경우 경로 메타데이터가 제거됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata 참조

setPermissions(PathPermissions, PathSetPermissionsOptions)

경로에 대한 파일 권한을 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

toDirectoryClient()

현재 경로가 디렉터리인 경우 현재 DataLakePathClient를 DataLakeDirectoryClient로 변환합니다.

toFileClient()

현재 경로가 파일인 경우 현재 DataLakePathClient를 DataLakeFileClient로 변환합니다.

updateAccessControlRecursive(PathAccessControlItem[], PathChangeAccessControlRecursiveOptions)

경로 및 하위 경로에서 Access Control을 수정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

생성자 세부 정보

DataLakeFileClient(string, Pipeline)

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

new DataLakeFileClient(url: string, pipeline: Pipeline)

매개 변수

url

string

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

pipeline
Pipeline

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

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

URL 및 자격 증명에서 DataLakeFileClient의 인스턴스를 만듭니다.

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

매개 변수

url

string

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

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

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

options
StoragePipelineOptions

선택적. HTTP 파이프라인을 구성하는 옵션입니다.

속성 세부 정보

fileSystemName

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

string fileSystemName

속성 값

string

name

현재 경로의 이름(디렉터리 또는 파일)입니다.

string name

속성 값

string

상속된 속성 세부 정보

accountName

accountName: string

속성 값

string

DataLakePathClient.accountName 상속된

credential

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

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

속성 값

DataLakePathClient.credential 상속된

url

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

url: string

속성 값

string

DataLakePathClient.url 상속된

메서드 세부 정보

append(RequestBodyType, number, number, FileAppendOptions)

파일에 추가할 데이터를 업로드합니다. 데이터는 파일에만 추가할 수 있습니다. 파일에 악의적으로 업로드된 데이터를 적용하려면 플러시를 호출합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

function append(body: RequestBodyType, offset: number, length: number, options?: FileAppendOptions): Promise<FileAppendResponse>

매개 변수

body
HttpRequestBody

업로드할 콘텐츠입니다.

offset

number

오프셋을 바이트 단위로 추가합니다.

length

number

바이트 단위로 추가할 콘텐츠의 길이입니다.

options
FileAppendOptions

선택적. 데이터를 추가할 때의 옵션입니다.

반환

create(FileCreateOptions)

파일을 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

function create(options?: FileCreateOptions): Promise<FileCreateResponse>

매개 변수

options
FileCreateOptions

선택적. 파일을 만들 때의 옵션입니다.

반환

create(PathResourceTypeModel, PathCreateOptions)

파일을 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

function create(resourceType: PathResourceTypeModel, options?: PathCreateOptions): Promise<PathCreateResponse>

매개 변수

resourceType
PathResourceTypeModel

리소스 종류는 DataLakeFileClient의 "파일"이어야 합니다.

options
PathCreateOptions

선택적. 파일을 만들 때의 옵션입니다.

반환

createIfNotExists(FileCreateIfNotExistsOptions)

파일이 아직 없는 경우 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

function createIfNotExists(options?: FileCreateIfNotExistsOptions): Promise<FileCreateIfNotExistsResponse>

매개 변수

options
FileCreateIfNotExistsOptions

선택적. 파일을 만들 때의 옵션입니다.

반환

createIfNotExists(PathResourceTypeModel, PathCreateIfNotExistsOptions)

파일이 아직 없는 경우 만듭니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

function createIfNotExists(resourceType: PathResourceTypeModel, options?: PathCreateIfNotExistsOptions): Promise<PathCreateIfNotExistsResponse>

매개 변수

resourceType
PathResourceTypeModel

리소스 종류는 DataLakeFileClient의 "파일"이어야 합니다.

반환

flush(number, FileFlushOptions)

이전에 파일에 데이터를 추가한 플러시(쓰기)입니다.

function flush(position: number, options?: FileFlushOptions): Promise<FileFlushResponse>

매개 변수

position

number

플러시할 파일 위치입니다. 이 매개 변수를 사용하면 호출자가 병렬로 데이터를 업로드하고 파일에 추가되는 순서를 제어할 수 있습니다. 파일에 추가할 데이터를 업로드하고 이전에 업로드한 데이터를 파일에 플러시할 때 필요합니다. 값은 데이터를 추가할 위치여야 합니다. 업로드된 데이터는 파일에 즉시 플러시되거나 기록되지 않습니다. 플러시하려면 이전에 업로드한 데이터가 연속되어야 하며, 위치 매개 변수를 지정하고 모든 데이터를 작성한 후 파일 길이와 같아야 하며 요청에 포함된 요청 엔터티 본문이 없어야 합니다.

options
FileFlushOptions

선택적. 데이터를 플러시할 때의 옵션입니다.

반환

generateSasStringToSign(FileGenerateSasUrlOptions)

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

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

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

function generateSasStringToSign(options: FileGenerateSasUrlOptions): string

매개 변수

options
FileGenerateSasUrlOptions

선택적 매개 변수입니다.

반환

string

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

generateSasUrl(FileGenerateSasUrlOptions)

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

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

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

function generateSasUrl(options: FileGenerateSasUrlOptions): Promise<string>

매개 변수

options
FileGenerateSasUrlOptions

선택적 매개 변수입니다.

반환

Promise<string>

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

generateUserDelegationSasStringToSign(FileGenerateSasUrlOptions, UserDelegationKey)

전달된 클라이언트 속성 및 매개 변수를 기반으로 SAS(서비스 공유 액세스 서명) URI에 서명하는 문자열을 생성합니다. SAS는 입력 사용자 위임 키로 서명됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

function generateUserDelegationSasStringToSign(options: FileGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): string

매개 변수

options
FileGenerateSasUrlOptions

선택적 매개 변수입니다.

userDelegationKey
UserDelegationKey

blobServiceClient.getUserDelegationKey() 반환 값

반환

string

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

generateUserDelegationSasUrl(FileGenerateSasUrlOptions, UserDelegationKey)

전달된 클라이언트 속성 및 매개 변수를 기반으로 SAS(서비스 공유 액세스 서명) URI를 생성합니다. SAS는 입력 사용자 위임 키로 서명됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas 참조

function generateUserDelegationSasUrl(options: FileGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): Promise<string>

매개 변수

options
FileGenerateSasUrlOptions

선택적 매개 변수입니다.

userDelegationKey
UserDelegationKey

blobServiceClient.getUserDelegationKey() 반환 값

반환

Promise<string>

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

query(string, FileQueryOptions)

JSON 또는 CSV 형식 파일에 대한 빠른 쿼리입니다.

예제 사용량(Node.js):

// Query and convert a file to a string
const queryResponse = await fileClient.query("select * from BlobStorage");
const downloaded = (await streamToBuffer(queryResponse.readableStreamBody)).toString();
console.log("Query file content:", downloaded);

async function streamToBuffer(readableStream) {
  return new Promise((resolve, reject) => {
    const chunks = [];
    readableStream.on("data", (data) => {
      chunks.push(data instanceof Buffer ? data : Buffer.from(data));
    });
    readableStream.on("end", () => {
      resolve(Buffer.concat(chunks));
    });
    readableStream.on("error", reject);
  });
}
function query(query: string, options?: FileQueryOptions): Promise<FileReadResponse>

매개 변수

query

string

반환

Promise<FileReadResponse>

read(number, number, FileReadOptions)

메타데이터 및 속성을 포함하여 서비스에서 파일을 다운로드합니다.

  • Node.js읽기 가능한 스트림 ReadableStreamBody에서 데이터가 반환됩니다.
  • 브라우저에서 데이터는 promise contentAsBlob에서 반환됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob 참조

  • 예제 사용량(Node.js):
// Download and convert a file to a string
const downloadResponse = await fileClient.read();
const downloaded = await streamToBuffer(downloadResponse.readableStreamBody);
console.log("Downloaded file content:", downloaded.toString());

async function streamToBuffer(readableStream) {
  return new Promise((resolve, reject) => {
    const chunks = [];
    readableStream.on("data", (data) => {
      chunks.push(data instanceof Buffer ? data : Buffer.from(data));
    });
    readableStream.on("end", () => {
      resolve(Buffer.concat(chunks));
    });
    readableStream.on("error", reject);
  });
}

사용 예(브라우저):

// Download and convert a file to a string
const downloadResponse = await fileClient.read();
const downloaded = await blobToString(await downloadResponse.contentAsBlob);
console.log("Downloaded file content", downloaded);

async function blobToString(blob: Blob): Promise<string> {
  const fileReader = new FileReader();
  return new Promise<string>((resolve, reject) => {
    fileReader.onloadend = (ev: any) => {
      resolve(ev.target!.result);
    };
    fileReader.onerror = reject;
    fileReader.readAsText(blob);
  });
}
function read(offset?: number, count?: number, options?: FileReadOptions): Promise<FileReadResponse>

매개 변수

offset

number

선택적. 파일을 읽을 오프셋이며 기본값은 0입니다.

count

number

선택적. 읽을 바이트 수, 기본값은 오프셋에서 끝까지 읽습니다.

options
FileReadOptions

선택적. 파일을 읽을 때의 옵션입니다.

반환

Promise<FileReadResponse>

readToBuffer(Buffer, number, number, FileReadToBufferOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

버퍼와 병렬로 Data Lake 파일을 읽습니다. 오프셋 및 개수는 선택 사항이며, 전체 파일을 읽으려면 둘 다 0을 전달합니다.

경고: 버퍼는 Node.js/V8의 제한으로 인해 32비트 시스템에서 최대 1GB 또는 64비트 시스템에서 약 2GB의 파일만 지원할 수 있습니다. 이 크기보다 큰 파일의 경우 readToFile것이 좋습니다.

function readToBuffer(buffer: Buffer, offset?: number, count?: number, options?: FileReadToBufferOptions): Promise<Buffer>

매개 변수

buffer

Buffer

채울 버퍼, 개수보다 큰 길이가 있어야 합니다.

offset

number

읽을 Data Lake 파일의 위치

count

number

읽을 데이터의 양입니다. 정의되지 않은 상태로 전달할 때 끝까지 읽습니다.

반환

Promise<Buffer>

readToBuffer(number, number, FileReadToBufferOptions)

NODE.JS 런타임에서만 사용 가능

버퍼와 병렬로 Data Lake 파일을 읽습니다. 오프셋 및 개수는 선택 사항이며, 전체 파일을 읽으려면 둘 다 0을 전달합니다.

경고: 버퍼는 Node.js/V8의 제한으로 인해 32비트 시스템에서 최대 1GB 또는 64비트 시스템에서 약 2GB의 파일만 지원할 수 있습니다. 이 크기보다 큰 파일의 경우 readToFile것이 좋습니다.

function readToBuffer(offset?: number, count?: number, options?: FileReadToBufferOptions): Promise<Buffer>

매개 변수

offset

number

Data Lake 파일의 위치를 읽을 위치(바이트)입니다.

count

number

읽을 데이터 양(바이트)입니다. 정의되지 않은 상태로 전달할 때 끝까지 읽습니다.

반환

Promise<Buffer>

readToFile(string, number, number, FileReadOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

Data Lake 파일을 로컬 파일에 다운로드합니다. 지정된 파일 경로가 이미 종료되면 실패합니다. 오프셋 및 개수는 선택 사항이며, 전체 파일을 다운로드하기 위해 각각 0과 정의되지 않은 값을 전달합니다.

function readToFile(filePath: string, offset?: number, count?: number, options?: FileReadOptions): Promise<FileReadResponse>

매개 변수

filePath

string

offset

number

다운로드할 파일의 위치입니다.

count

number

다운로드할 데이터의 양입니다. 정의되지 않은 상태로 전달할 때 끝까지 다운로드됩니다.

options
FileReadOptions

Data Lake 파일을 읽는 옵션입니다.

반환

Promise<FileReadResponse>

파일 읽기 작업에 대한 응답 데이터이지만 읽기 가능한StreamBody는 해당 콘텐츠가 지정된 경로의 로컬 파일에 이미 읽고 쓰여졌기 때문에 정의되지 않은 상태로 설정됩니다.

setExpiry(FileExpiryMode, FileSetExpiryOptions)

파일이 삭제되면 파일의 만료 시간을 설정합니다.

function setExpiry(mode: FileExpiryMode, options?: FileSetExpiryOptions): Promise<FileSetExpiryResponse>

매개 변수

반환

upload(Blob | ArrayBuffer | ArrayBufferView | Buffer, FileParallelUploadOptions)

버퍼(Node.js)/Blob/ArrayBuffer/ArrayBufferView를 파일에 업로드합니다.

function upload(data: Blob | ArrayBuffer | ArrayBufferView | Buffer, options?: FileParallelUploadOptions): Promise<FileUploadResponse>

매개 변수

data

Blob | ArrayBuffer | ArrayBufferView | Buffer

Buffer(Node), Blob, ArrayBuffer 또는 ArrayBufferView

반환

uploadFile(string, FileParallelUploadOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

Data Lake 파일에 로컬 파일을 업로드합니다.

function uploadFile(filePath: string, options?: FileParallelUploadOptions): Promise<FileUploadResponse>

매개 변수

filePath

string

로컬 파일의 전체 경로

반환

uploadStream(Readable, FileParallelUploadOptions)

NODE.JS 런타임에서만 사용할 수 있습니다.

Node.js 읽기 가능한 스트림을 Data Lake 파일에 업로드합니다. 이 메서드는 파일을 만든 다음 청크로 청크 업로드를 시작합니다. 스트림의 잠재적 크기가 FILE_MAX_SIZE_BYTES 초과하지 않고 잠재적 청크 수가 BLOCK_BLOB_MAX_BLOCKS 초과하지 않는지 확인하세요.

성능 향상 팁:

  • input stream highWaterMark는 options.chunkSize 매개 변수를 사용하여 동일한 값을 설정하는 것이 더 낫습니다. 그러면 Buffer.concat() 작업이 방지됩니다.
function uploadStream(stream: Readable, options?: FileParallelUploadOptions): Promise<FileUploadResponse>

매개 변수

stream

Readable

Node.js 읽기 가능한 스트림입니다.

반환

상속된 메서드 세부 정보

delete(boolean, PathDeleteOptions)

현재 경로(디렉터리 또는 파일)를 삭제합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete 참조

function delete(recursive?: boolean, options?: PathDeleteOptions): Promise<PathDeleteResponse>

매개 변수

recursive

boolean

리소스가 디렉터리인 경우에만 필수이며 유효합니다. "true"이면 디렉터리 아래의 모든 경로가 삭제됩니다.

options
PathDeleteOptions

선택적. 경로를 삭제할 때의 옵션입니다.

반환

DataLakePathClient.delete 상속된

deleteIfExists(boolean, PathDeleteOptions)

현재 경로(디렉터리 또는 파일)가 있는 경우 삭제합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete 참조

function deleteIfExists(recursive?: boolean, options?: PathDeleteOptions): Promise<PathDeleteIfExistsResponse>

매개 변수

recursive

boolean

리소스가 디렉터리인 경우에만 필수이며 유효합니다. "true"이면 디렉터리 아래의 모든 경로가 삭제됩니다.

반환

DataLakePathClient.deleteIfExists 상속된

exists(PathExistsOptions)

이 클라이언트가 나타내는 Data Lake 파일이 있으면 true를 반환합니다. false이면 false입니다.

참고: 다른 클라이언트 또는 애플리케이션에서 기존 파일을 삭제할 수 있기 때문에 이 함수를 주의해서 사용합니다. 그 반대로 이 함수가 완료된 후 다른 클라이언트 또는 애플리케이션에서 새 파일을 추가할 수 있습니다.

function exists(options?: PathExistsOptions): Promise<boolean>

매개 변수

options
PathExistsOptions

옵션에서 Exists 연산을 수행할 수 있습니다.

반환

Promise<boolean>

DataLakePathClient.exists에서 상속된

getAccessControl(PathGetAccessControlOptions)

경로(파일 디렉터리)에 대한 액세스 제어 데이터를 반환합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/getproperties 참조

function getAccessControl(options?: PathGetAccessControlOptions): Promise<PathGetAccessControlResponse>

매개 변수

options
PathGetAccessControlOptions

선택적. 파일 액세스 제어를 받을 때의 옵션입니다.

반환

DataLakePathClient.getAccessControl 상속된

getDataLakeLeaseClient(string)

경로(디렉터리 또는 파일)에서 임대를 관리하는 DataLakeLeaseClient 가져옵니다.

function getDataLakeLeaseClient(proposeLeaseId?: string): DataLakeLeaseClient

매개 변수

proposeLeaseId

string

선택적. 처음 제안된 임대 ID입니다.

반환

DataLakePathClient.getDataLakeLeaseClient 상속된

getProperties(PathGetPropertiesOptions)

경로(디렉터리 또는 파일)에 대한 모든 사용자 정의 메타데이터, 표준 HTTP 속성 및 시스템 속성을 반환합니다.

경고: 응답에서 반환된 metadata 개체에는 원래 대문자가 포함되어 있더라도 해당 키가 소문자로 표시됩니다. 이는 원래 대/소문자를 유지하는 옵션을 사용하여 경로를 나열하는 includeMetadata 메서드에서 반환하는 메타데이터 키와 다릅니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties 참조

function getProperties(options?: PathGetPropertiesOptions): Promise<PathGetPropertiesResponse>

매개 변수

options
PathGetPropertiesOptions

선택적. 경로 속성을 가져오는 경우의 옵션입니다.

반환

DataLakePathClient.getProperties 상속된

move(string, PathMoveOptions)

동일한 파일 시스템 내에서 디렉터리 또는 파일을 이동합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

function move(destinationPath: string, options?: PathMoveOptions): Promise<PathMoveResponse>

매개 변수

destinationPath

string

대상 디렉터리 경로(예: "directory" 또는 파일 경로 "directory/file")입니다. destinationPath가 SAS로 인증된 경우 "directory/file?sasToken"과 같은 대상 경로에 SAS를 추가합니다.

options
PathMoveOptions

선택적. 디렉터리 또는 파일을 이동할 때의 옵션입니다.

반환

Promise<PathMoveResponse>

DataLakePathClient.move 상속된

move(string, string, PathMoveOptions)

디렉터리 또는 파일을 다른 파일 시스템으로 이동합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create 참조

function move(destinationFileSystem: string, destinationPath: string, options?: PathMoveOptions): Promise<PathMoveResponse>

매개 변수

destinationFileSystem

string

대상 파일 시스템(예: "filesystem")입니다.

destinationPath

string

대상 디렉터리 경로(예: "directory" 또는 파일 경로 "directory/file")는 destinationPath가 SAS로 인증된 경우 "directory/file?sasToken"과 같은 대상 경로에 SAS를 추가합니다.

options
PathMoveOptions

선택적. 디렉터리 또는 파일을 이동할 때의 옵션입니다.

반환

Promise<PathMoveResponse>

DataLakePathClient.move 상속된

removeAccessControlRecursive(RemovePathAccessControlItem[], PathChangeAccessControlRecursiveOptions)

경로 및 하위 경로에서 Access Control을 제거합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

function removeAccessControlRecursive(acl: RemovePathAccessControlItem[], options?: PathChangeAccessControlRecursiveOptions): Promise<PathChangeAccessControlRecursiveResponse>

매개 변수

acl

RemovePathAccessControlItem[]

파일 또는 디렉터리에 대한 POSIX 액세스 제어 목록입니다.

options
PathChangeAccessControlRecursiveOptions

선택적. 옵션

반환

DataLakePathClient.removeAccessControlRecursive 상속된

setAccessControl(PathAccessControlItem[], PathSetAccessControlOptions)

경로(파일 디렉터리)에 대한 액세스 제어 데이터를 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

function setAccessControl(acl: PathAccessControlItem[], options?: PathSetAccessControlOptions): Promise<PathSetAccessControlResponse>

매개 변수

acl

PathAccessControlItem[]

파일 또는 디렉터리에 대한 POSIX 액세스 제어 목록입니다.

options
PathSetAccessControlOptions

선택적. 경로 액세스 제어를 설정할 때의 옵션입니다.

반환

DataLakePathClient.setAccessControl 상속된

setAccessControlRecursive(PathAccessControlItem[], PathChangeAccessControlRecursiveOptions)

경로 및 하위 경로에 대한 Access Control을 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

function setAccessControlRecursive(acl: PathAccessControlItem[], options?: PathChangeAccessControlRecursiveOptions): Promise<PathChangeAccessControlRecursiveResponse>

매개 변수

acl

PathAccessControlItem[]

파일 또는 디렉터리에 대한 POSIX 액세스 제어 목록입니다.

options
PathChangeAccessControlRecursiveOptions

선택적. 옵션

반환

DataLakePathClient.setAccessControlRecursive 상속된

setHttpHeaders(PathHttpHeaders, PathSetHttpHeadersOptions)

경로(디렉터리 또는 파일)의 시스템 속성을 설정합니다.

값이 제공되지 않거나 지정된 Blob HTTP 헤더에 대해 값이 제공되지 않은 경우 값이 없는 이러한 Blob HTTP 헤더는 지워지게 됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties 참조

function setHttpHeaders(httpHeaders: PathHttpHeaders, options?: PathSetHttpHeadersOptions): Promise<PathSetHttpHeadersResponse>

매개 변수

httpHeaders
PathHttpHeaders

반환

DataLakePathClient.setHttpHeaders 상속된

setMetadata(Metadata, PathSetMetadataOptions)

지정된 경로(파일 디렉터리)에 대한 사용자 정의 메타데이터를 하나 이상의 이름-값 쌍으로 설정합니다.

옵션이 제공되지 않거나 매개 변수에 정의된 메타데이터가 없는 경우 경로 메타데이터가 제거됩니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata 참조

function setMetadata(metadata?: Metadata, options?: PathSetMetadataOptions): Promise<PathSetMetadataResponse>

매개 변수

metadata
Metadata

선택적. 기존 메타데이터를 이 값으로 대체합니다. 제공된 값이 없으면 기존 메타데이터가 제거됩니다.

options
PathSetMetadataOptions

선택적. 경로 메타데이터를 설정할 때의 옵션입니다.

반환

DataLakePathClient.setMetadata 상속된

setPermissions(PathPermissions, PathSetPermissionsOptions)

경로에 대한 파일 권한을 설정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

function setPermissions(permissions: PathPermissions, options?: PathSetPermissionsOptions): Promise<PathSetPermissionsResponse>

매개 변수

permissions
PathPermissions

파일 소유자, 파일 소유 그룹 등에 대한 POSIX 액세스 권한입니다.

options
PathSetPermissionsOptions

선택적. 경로 사용 권한을 설정할 때의 옵션입니다.

반환

DataLakePathClient.setPermissions 상속된

toDirectoryClient()

현재 경로가 디렉터리인 경우 현재 DataLakePathClient를 DataLakeDirectoryClient로 변환합니다.

function toDirectoryClient(): DataLakeDirectoryClient

반환

DataLakePathClient.toDirectoryClient 상속된

toFileClient()

현재 경로가 파일인 경우 현재 DataLakePathClient를 DataLakeFileClient로 변환합니다.

function toFileClient(): DataLakeFileClient

반환

DataLakePathClient.toFileClient 상속된

updateAccessControlRecursive(PathAccessControlItem[], PathChangeAccessControlRecursiveOptions)

경로 및 하위 경로에서 Access Control을 수정합니다.

https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update 참조

function updateAccessControlRecursive(acl: PathAccessControlItem[], options?: PathChangeAccessControlRecursiveOptions): Promise<PathChangeAccessControlRecursiveResponse>

매개 변수

acl

PathAccessControlItem[]

파일 또는 디렉터리에 대한 POSIX 액세스 제어 목록입니다.

options
PathChangeAccessControlRecursiveOptions

선택적. 옵션

반환

DataLakePathClient.updateAccessControlRecursive 상속된