Compartir a través de


Get-AzStorageBlobQueryResult

Aplica una instrucción simple del lenguaje de consulta estructurado (SQL) en el contenido de un blob y guarda solo el subconjunto consultado de los datos en un archivo local.

Sintaxis

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

El cmdlet Get-AzStorageBlobQueryResult aplica una instrucción simple del lenguaje de consulta estructurado (SQL) en el contenido de un blob y guarda el subconjunto consultado de los datos en un archivo local.

Ejemplos

Ejemplo 1: Consulta de un blob

$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

Este comando consulta un blob correctamente con la configuración de entrada como csv y la configuración de salida como json y guarda la salida en el archivo local "c:\resultfile.json".

Ejemplo 2: Consulta de una instantánea de blob

$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

Este comando obtiene primero un objeto de blob para la instantánea de blob y, a continuación, consulta la instantánea de blob y muestra el error de consulta de inclusión del resultado.

Parámetros

-Blob

Nombre del blob

Tipo:String
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-BlobBaseClient

BlobBaseClient (objeto)

Tipo:BlobBaseClient
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-BlobContainerClient

BlobContainerClient (objeto)

Tipo:BlobContainerClient
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-ClientTimeoutPerRequest

Tiempo máximo de ejecución del lado cliente para cada solicitud en segundos.

Tipo:Nullable<T>[Int32]
Alias:ClientTimeoutPerRequestInSeconds
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ConcurrentTaskCount

Cantidad total de tareas asincrónicas simultáneas. El valor predeterminado es 10.

Tipo:Nullable<T>[Int32]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Container

Nombre del contenedor

Tipo:String
Posición:1
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Context

Objeto de contexto de Azure Storage

Tipo:IStorageContext
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-DefaultProfile

Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con Azure.

Tipo:IAzureContextContainer
Alias:AzureRmContext, AzureCredential
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Force

Forzar a sobrescribir el archivo existente.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-InputTextConfiguration

Configuración que se usa para controlar el texto de entrada de la consulta. Cree el objeto de configuración con New-AzStorageBlobQueryConfig.

Tipo:PSBlobQueryTextConfiguration
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-OutputTextConfiguration

Configuración utilizada para controlar el texto de salida de la consulta. Cree el objeto de configuración con New-AzStorageBlobQueryConfig.

Tipo:PSBlobQueryTextConfiguration
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-PassThru

Devuelve si el blob especificado se consulta correctamente.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-QueryString

Cadena de consulta, consulte más detalles en: https://learn.microsoft.com/azure/storage/blobs/query-acceleration-sql-reference

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ResultFile

Ruta de acceso del archivo local para guardar el resultado de la consulta.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ServerTimeoutPerRequest

Tiempo de espera del servidor para cada solicitud en segundos.

Tipo:Nullable<T>[Int32]
Alias:ServerTimeoutPerRequestInSeconds
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-SnapshotTime

SnapshotTime de blobs

Tipo:Nullable<T>[DateTimeOffset]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-TagCondition

Instrucción de expresión tag opcional para comprobar la condición de coincidencia. Se producirá un error en la solicitud de blob cuando las etiquetas de blob no coincidan con la expresión especificada. Consulte los detalles de https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-VersionId

Blob VersionId

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

BlobBaseClient

BlobContainerClient

IStorageContext

Salidas

Boolean