Megosztás a következőn keresztül:


Get-AzStorageBlobQueryResult

Egy egyszerű strukturált lekérdezési nyelv (SQL) utasítást alkalmaz egy blob tartalmára, és csak az adatok lekérdezett részhalmazát menti egy helyi fájlba.

Syntax

Get-AzStorageBlobQueryResult
   [-Blob] <String>
   [-Container] <String>
   [-SnapshotTime <DateTimeOffset>]
   [-VersionId <String>]
   -QueryString <String>
   -ResultFile <String>
   [-InputTextConfiguration <PSBlobQueryTextConfiguration>]
   [-OutputTextConfiguration <PSBlobQueryTextConfiguration>]
   [-PassThru]
   [-Force]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Get-AzStorageBlobQueryResult
   -BlobBaseClient <BlobBaseClient>
   -QueryString <String>
   -ResultFile <String>
   [-InputTextConfiguration <PSBlobQueryTextConfiguration>]
   [-OutputTextConfiguration <PSBlobQueryTextConfiguration>]
   [-PassThru]
   [-Force]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Get-AzStorageBlobQueryResult
   -BlobContainerClient <BlobContainerClient>
   [-Blob] <String>
   [-SnapshotTime <DateTimeOffset>]
   [-VersionId <String>]
   -QueryString <String>
   -ResultFile <String>
   [-InputTextConfiguration <PSBlobQueryTextConfiguration>]
   [-OutputTextConfiguration <PSBlobQueryTextConfiguration>]
   [-PassThru]
   [-Force]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

A Get-AzStorageBlobQueryResult parancsmag egy egyszerű strukturált lekérdezési nyelv (SQL) utasítást alkalmaz egy blob tartalmára, és menti az adatok lekérdezett részhalmazát egy helyi fájlba.

Példák

1. példa: Blob lekérdezése

$inputconfig = New-AzStorageBlobQueryConfig -AsCsv -HasHeader

$outputconfig = New-AzStorageBlobQueryConfig -AsJson

$queryString = "SELECT * FROM BlobStorage WHERE Name = 'a'"

$result = Get-AzStorageBlobQueryResult -Container $containerName -Blob $blobName -QueryString $queryString -ResultFile "c:\resultfile.json" -InputTextConfiguration $inputconfig -OutputTextConfiguration $outputconfig -Context $ctx

$result

BytesScanned FailureCount BlobQueryError
------------ ------------ --------------
         449            0

Ez a parancs lekérdez egy blobot csv-ként, a kimeneti konfigurációt pedig jsonként, és menti a kimenetet a "c:\resultfile.json" helyi fájlba.

2. példa: Blob-pillanatkép lekérdezése

$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName -SnapshotTime "2020-07-29T11:08:21.1097874Z" -Context $ctx

$inputconfig = New-AzStorageBlobQueryConfig -AsCsv -ColumnSeparator "," -QuotationCharacter """" -EscapeCharacter "\" -RecordSeparator "`n" -HasHeader

$outputconfig = New-AzStorageBlobQueryConfig -AsJson -RecordSeparator "`n" 

$queryString = "SELECT * FROM BlobStorage WHERE _1 LIKE '1%%'"

$result = $blob | Get-AzStorageBlobQueryResult -QueryString $queryString -ResultFile $localFilePath -InputTextConfiguration $inputconfig -OutputTextConfiguration $outputconfig

$result

BytesScanned FailureCount BlobQueryError
------------ ------------ --------------
   187064971            1 {ParseError}  



$result.BlobQueryError

Name       Description                                                   IsFatal Position
----       -----------                                                   ------- --------
ParseError Unexpected token '1' at [byte: 3077737]. Expecting token ','.    True  7270632

Ez a parancs először lekéri a blobobjektumot a blob pillanatképéhez, majd lekérdezi a blob pillanatképét, és megjeleníti az eredményt a lekérdezési hibával.

Paraméterek

-Blob

A blob neve

Típus:String
Position:0
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-BlobBaseClient

BlobBaseClient objektum

Típus:BlobBaseClient
Position:Named
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:True
Helyettesítő karakterek elfogadása:False

-BlobContainerClient

BlobContainerClient objektum

Típus:BlobContainerClient
Position:Named
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:True
Helyettesítő karakterek elfogadása:False

-ClientTimeoutPerRequest

Az ügyféloldali maximális végrehajtási idő az egyes kérésekhez másodpercben.

Típus:Nullable<T>[Int32]
Aliasok:ClientTimeoutPerRequestInSeconds
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-ConcurrentTaskCount

Az egyidejű aszinkron tevékenységek teljes mennyisége. Az alapértelmezett érték 10.

Típus:Nullable<T>[Int32]
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Confirm

Jóváhagyást kér a parancsmag futtatása előtt.

Típus:SwitchParameter
Aliasok:cf
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Container

Tárolónév

Típus:String
Position:1
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Context

Azure Storage környezeti objektum

Típus:IStorageContext
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:True
Helyettesítő karakterek elfogadása:False

-DefaultProfile

Az Azure-ral való kommunikációhoz használt hitelesítő adatok, fiók, bérlő és előfizetés.

Típus:IAzureContextContainer
Aliasok:AzureRmContext, AzureCredential
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Force

Kényszerítés a meglévő fájl felülírására.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-InputTextConfiguration

A lekérdezés bemeneti szövegének kezeléséhez használt konfiguráció. Hozzon létre konfigurációs objektumot a New-AzStorageBlobQueryConfig használatával.

Típus:PSBlobQueryTextConfiguration
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-OutputTextConfiguration

A lekérdezés kimeneti szövegének kezeléséhez használt konfiguráció. Hozzon létre konfigurációs objektumot a New-AzStorageBlobQueryConfig használatával.

Típus:PSBlobQueryTextConfiguration
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-PassThru

Adja vissza, hogy a megadott blob lekérdezése sikeresen megtörtént-e.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-QueryString

Lekérdezési sztring, további részletek: https://learn.microsoft.com/azure/storage/blobs/query-acceleration-sql-reference

Típus:String
Position:Named
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-ResultFile

A lekérdezés eredményének mentéséhez a helyi fájl elérési útja.

Típus:String
Position:Named
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-ServerTimeoutPerRequest

A kiszolgáló másodpercek alatt időtúllépést hajt végre az egyes kérések esetében.

Típus:Nullable<T>[Int32]
Aliasok:ServerTimeoutPerRequestInSeconds
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-SnapshotTime

Blob SnapshotTime

Típus:Nullable<T>[DateTimeOffset]
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-TagCondition

Nem kötelező címkekifejezési utasítás az egyezés feltételének ellenőrzéséhez. A blobkérés sikertelen lesz, ha a blobcímkék nem felelnek meg a megadott kifejezésnek. Részletek a következőben találhatók: https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations.

Típus:String
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-VersionId

Blob verzióazonosítója

Típus:String
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-WhatIf

Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.

Típus:SwitchParameter
Aliasok:wi
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

Bevitelek

BlobBaseClient

BlobContainerClient

IStorageContext

Kimenetek

Boolean