共用方式為


DataLakeFileClient class

DataLakeFileClient 代表 Azure 記憶體檔案的 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)

上傳要附加至檔案的數據。 數據只能附加至檔案。 若要將永久上傳的數據套用至檔案,請呼叫 flush。

請參閱 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 以讀取整個檔案。

警告:緩衝區只能在32位系統上支援最多一 GB 的檔案,或64位系統上最多支援大約2 GB的檔案,因為 Node.js/V8的限制。 對於大於此大小的檔案,請考慮 readToFile

readToBuffer(number, number, FileReadToBufferOptions)

僅適用於運行時間NODE.JS

平行讀取 Data Lake 檔案至緩衝區。 位移和計數是選擇性的,兩者都傳遞 0 以讀取整個檔案

警告:緩衝區只能在32位系統上支援最多一 GB 的檔案,或64位系統上最多支援大約2 GB的檔案,因為 Node.js/V8的限制。 對於大於此大小的檔案,請考慮 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。

效能改進秘訣:

  • 輸入數據流 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。

注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的檔案。 反之亦然,此函式完成之後,其他用戶端或應用程式可能會新增新的檔案。

getAccessControl(PathGetAccessControlOptions)

傳回路徑的訪問控制數據(檔案目錄)。

請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/getproperties

getDataLakeLeaseClient(string)

取得管理路徑 (目錄或檔案) 租用的 DataLakeLeaseClient

getProperties(PathGetPropertiesOptions)

傳回路徑 (目錄或檔案) 的所有使用者定義元數據、標準 HTTP 屬性和系統屬性。

警告:回應中傳回的 metadata 物件會以小寫表示,即使它們原本包含大寫字元也一樣。 這與 dataLakeFileSystemClient 方法所傳回的元數據索引鍵不同, 使用 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)

拿掉路徑和子路徑上的訪問控制。

請參閱 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)

設定路徑和子路徑上的訪問控制。

請參閱 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)

修改路徑和子路徑上的訪問控制。

請參閱 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 記憶體數據湖檔案的用戶端字串,例如 「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 記憶體數據湖檔案的用戶端字串,例如 「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)

上傳要附加至檔案的數據。 數據只能附加至檔案。 若要將永久上傳的數據套用至檔案,請呼叫 flush。

請參閱 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 的 “file”。

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 的 “file”。

傳回

flush(number, FileFlushOptions)

排清先前附加的數據至檔案。

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

參數

position

number

要排清的檔案位置。 此參數可讓呼叫端平行上傳數據,並控制數據附加至檔案的順序。 上傳要附加至檔案的數據,以及將先前上傳的數據排清至檔案時,這是必要專案。 值必須是要附加數據的位置。 上傳的數據不會立即排清或寫入檔案。 若要排清,先前上傳的數據必須連續、必須指定 position 參數,且在寫入所有數據之後等於檔案的長度,而且要求中不得包含要求實體主體。

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 以讀取整個檔案。

警告:緩衝區只能在32位系統上支援最多一 GB 的檔案,或64位系統上最多支援大約2 GB的檔案,因為 Node.js/V8的限制。 對於大於此大小的檔案,請考慮 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 以讀取整個檔案

警告:緩衝區只能在32位系統上支援最多一 GB 的檔案,或64位系統上最多支援大約2 GB的檔案,因為 Node.js/V8的限制。 對於大於此大小的檔案,請考慮 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>

檔案讀取作業的響應數據,但已將 readableStreamBody 設定為未定義,因為其內容已經讀取並寫入指定路徑的本機檔案。

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。

效能改進秘訣:

  • 輸入數據流 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。

注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的檔案。 反之亦然,此函式完成之後,其他用戶端或應用程式可能會新增新的檔案。

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

參數

options
PathExistsOptions

[存在] 作業的選項。

傳回

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

自選。 初始建議的租用標識碼。

傳回

繼承自DataLakePathClient.getDataLakeLeaseClient

getProperties(PathGetPropertiesOptions)

傳回路徑 (目錄或檔案) 的所有使用者定義元數據、標準 HTTP 屬性和系統屬性。

警告:回應中傳回的 metadata 物件會以小寫表示,即使它們原本包含大寫字元也一樣。 這與 dataLakeFileSystemClient 方法所傳回的元數據索引鍵不同, 使用 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 進行驗證,請將 SAS 新增至目的地路徑,例如 “directory/file?sasToken”。

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 進行驗證,請將 SAS 新增至目的地路徑,例如 「directory/file?sasToken」。

options
PathMoveOptions

自選。 移動目錄或檔案時的選項。

傳回

Promise<PathMoveResponse>

繼承自DataLakePathClient.move

removeAccessControlRecursive(RemovePathAccessControlItem[], PathChangeAccessControlRecursiveOptions)

拿掉路徑和子路徑上的訪問控制。

請參閱 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)

設定路徑和子路徑上的訪問控制。

請參閱 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)

修改路徑和子路徑上的訪問控制。

請參閱 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