Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El inventario de blobs de Azure Storage muestra los contenedores, los blobs, las versiones de blobs, las instantáneas y las propiedades asociadas de su cuenta de almacenamiento. El servicio genera informes diarios o semanales en valores separados por comas (CSV) o en formato Apache Parquet.
Utiliza los informes de inventario para auditar la retención, la retención legal o el estado de cifrado del contenido de tu cuenta de almacenamiento. También puedes analizar el tamaño total, la antigüedad, la distribución por niveles y otros atributos de tus datos.
El inventario de blobs puede simplificar los flujos de trabajo empresariales y acelerar los trabajos de procesamiento de datos. Proporciona automatización programada de las API List Containers y List Blobs. Las reglas de inventario filtran el contenido de los informes por tipo de blob, prefijo o propiedades de blob seleccionadas.
El inventario de blobs de Azure Storage está disponible para los siguientes tipos de cuentas de almacenamiento:
- De uso general estándar, v2
- Almacenamiento de blobs en bloques Premium
- Blob Storage
Características de inventario
Azure Storage Blob Inventory soporta las siguientes características y capacidades.
Informes de inventario para blobs y contenedores
Puede generar informes de inventario para blobs y contenedores. Un informe sobre blobs puede contener blobs base, instantáneas, longitud del contenido, versiones de blobs y sus propiedades asociadas, como la hora de creación y la hora de la última modificación. El informe no menciona contenedores vacíos. Un informe sobre contenedores describe los contenedores y sus propiedades asociadas, como el estado de la política de inmutabilidad y el estado legal de retención.
Esquema personalizado
Puede elegir qué campos aparecen en los informes. Elija entre una lista de campos admitidos. La lista aparece más adelante en este artículo.
Formato de salida CSV y Apache Parquet
Puede generar un informe de inventario con formato de salida CSV o Apache Parquet.
Archivo de manifiesto y evento de Azure Event Grid por informe de inventario
El servicio genera un archivo manifiesto y un evento de Azure Event Grid para cada informe de inventario. El artículo describe estos puntos más adelante.
Habilitación de los informes de inventario
Para habilitar los informes de inventario de blobs, agregue una directiva con una o más reglas a su cuenta de almacenamiento. Para obtener instrucciones, consulte Habilitación de los informes de inventario de blobs de Azure Storage.
Actualización de una directiva de inventario
Si configuraste el inventario de blobs de Azure Storage antes de junio de 2021, carga la política, haz los cambios necesarios y luego guárdala. Cuando vuelves a cargar la política, el servicio rellena el destino por regla, el archivo de manifiesto y la configuración de eventos de Azure Event Grid con valores predeterminados. Puedes cambiar estos valores.
Cada regla soporta un contenedor de destino en lugar de compartir un destino a nivel de política.
El servicio genera un archivo manifiesto y un evento de Azure Event Grid para cada regla en lugar de para la política.
Directiva de inventario
Para configurar informes de inventario, añade una política de inventario con una o más reglas a un documento JSON.
{
"enabled": true,
"rules": [
{
"enabled": true,
"name": "inventoryrule1",
"destination": "inventory-destination-container",
"definition": {
"filters": {
"blobTypes": ["blockBlob"]
},
"format": "csv",
"objectType": "blob",
"schedule": "daily",
"schemaFields": ["Name"]
}
},
{
"enabled": true,
"name": "inventoryrule2",
"destination": "inventory-destination-container",
"definition": {
"filters": {},
"format": "csv",
"objectType": "container",
"schedule": "weekly",
"schemaFields": ["Name"]
}
}]
}
Para ver el documento JSON para una directiva de inventario, seleccione la pestaña Vista Código en la sección Blob inventory (Inventario de blobs) de Azure Portal.
| Nombre de parámetro | Tipo de parámetro | Notas | ¿Necesario? |
|---|---|---|---|
enabled |
booleano | Se usa para deshabilitar toda la directiva. Cuando se establece en verdadero, el campo a nivel enabled de regla anula este parámetro. Cuando se desactiva, el inventario queda desactivado para todas las reglas. |
Sí |
rules |
Matriz de objetos de regla | Se requiere al menos una regla en una directiva. Se admiten hasta 100 reglas por directiva. | Sí |
Reglas de inventario
Una regla captura las condiciones de filtrado y los parámetros de salida para generar un informe de inventario. Cada regla crea un informe de inventario. Las reglas pueden tener prefijos superpuestos. Un blob puede aparecer en más de un inventario en función de las definiciones de la regla.
Cada regla de la directiva tiene varios parámetros:
| Nombre de parámetro | Tipo de parámetro | Notas | ¿Necesario? |
|---|---|---|---|
name |
cadena | Un nombre de regla puede incluir hasta 256 caracteres alfanuméricos que distinguen mayúsculas de minúsculas. El nombre debe ser único dentro de un proyecto. | Sí |
enabled |
booleano | Una bandera para activar o desactivar una regla. El valor predeterminado es true. | Sí |
definition |
Definición de regla de inventario JSON | Cada definición se compone de un conjunto de filtros de regla. | Sí |
destination |
cadena | El contenedor de destino donde el servicio genera todos los archivos de inventario. El contenedor de destino ya debe existir. |
La marca global Inventario de blobs habilitado tiene prioridad sobre el parámetro habilitado en una regla.
Definición de reglas
| Nombre de parámetro | Tipo de parámetro | Notas | Obligatorio |
|---|---|---|---|
filters |
JSON | Los filtros determinan si un blob o un contenedor forma parte del inventario. | Sí |
format |
cadena | Determina el formato de salida del archivo de inventario. Los valores válidos son csv (para formato CSV) y parquet (para formato Apache Parquet). |
Sí |
objectType |
cadena | Indica si la regla de inventario se aplica a blobs o contenedores. Los valores válidos son blob y container. |
Sí |
schedule |
cadena | Especifica cuándo ejecutar la regla. Los valores válidos son daily y weekly. |
Sí |
schemaFields |
Matriz JSON | Lista los campos de esquema para incluir en el inventario. | Sí |
Filtros de reglas
Utilice los siguientes filtros para personalizar un informe de inventario de blobs:
| Nombre de filtro | Tipo de filtro | Notas | ¿Necesario? |
|---|---|---|---|
blobTypes |
Matriz de valores de enumeración predefinidos | Los valores válidos son blockBlob y appendBlob para cuentas habilitadas con espacio de nombres jerárquicos, y blockBlob, appendBlob, y pageBlob para otras cuentas. Este campo no se aplica al inventario de contenedores (objectType: container). |
Sí |
creationTime |
Número | Especifica cuántos días hace que se creó el blob. Por ejemplo, un valor de 3 incluye solo los blobs creados en los últimos tres días. |
No |
prefixMatch |
Matriz de hasta 10 cuerdas | Si no defines prefixMatch o proporcionas un prefijo vacío, la regla se aplica a todos los blobs dentro de la cuenta de almacenamiento. Los prefijos deben ser prefijos de nombre de contenedor o nombres de contenedor. Por ejemplo, container o container1/foo. |
No |
excludePrefix |
Matriz de hasta 10 cuerdas | Especifica las rutas de acceso de blobs que se van a excluir del informe de inventario. Un excludePrefix debe ser un prefijo de nombre de contenedor o un nombre de contenedor. Con excludePrefix vacío, el informe enumera todos los blobs cuyos nombres coinciden con cualquier cadena de prefixMatch.Para incluir un prefijo pero excluir un subconjunto específico, utiliza el excludePrefix filtro. Por ejemplo, para incluir todas las manchas bajo container-a excepto las que están bajo container-a/folder, establece prefixMatch en container-a y excludePrefix en container-a/folder. |
No |
includeSnapshots |
booleano | Especifica si el inventario incluye instantáneas. El valor predeterminado es false. Este campo no se aplica al inventario de contenedores (objectType: container). |
No |
includeBlobVersions |
booleano | Especifica si el inventario incluye versiones en blob. El valor predeterminado es false. Este campo no se aplica al inventario de contenedores (objectType: container). |
No |
includeDeleted |
booleano | Especifica si el inventario incluye blobs eliminados. El valor predeterminado es false. En cuentas que tienen un espacio de nombres jerárquico, este filtro incluye carpetas y blobs en estado de eliminación suave.Solo aparecen carpetas y archivos explícitamente eliminados en los informes. No se incluyen las carpetas secundarias ni los archivos eliminados como resultado de la eliminación de una carpeta principal. |
No |
Para ver el documento JSON para reglas de inventario, seleccione la pestaña Vista Código en la sección Blob inventory (Inventario de blobs) de Azure Portal. Especificas filtros dentro de una definición de regla.
{
"destination": "inventory-destination-container",
"enabled": true,
"rules": [
{
"definition": {
"filters": {
"blobTypes": ["blockBlob", "appendBlob", "pageBlob"],
"prefixMatch": ["inventorytestcontainer1", "inventorytestcontainer2/abcd", "etc"],
"excludePrefix": ["inventorytestcontainer10", "etc/logs"],
"includeSnapshots": false,
"includeBlobVersions": true
},
"format": "csv",
"objectType": "blob",
"schedule": "daily",
"schemaFields": ["Name", "Creation-Time"]
},
"enabled": true,
"name": "blobinventorytest",
"destination": "inventorydestinationContainer"
},
{
"definition": {
"filters": {
"prefixMatch": ["inventorytestcontainer1", "inventorytestcontainer2/abcd", "etc"]
},
"format": "csv",
"objectType": "container",
"schedule": "weekly",
"schemaFields": ["Name", "HasImmutabilityPolicy", "HasLegalHold"]
},
"enabled": true,
"name": "containerinventorytest",
"destination": "inventorydestinationContainer"
}
]
}
Campos de esquema personalizados admitidos para un inventario de blobs
Nota
La columna Data Lake Storage muestra una compatibilidad con las cuentas que tienen habilitada la característica de espacio de nombres jerárquico.
| Campo | Blob Storage (compatibilidad predeterminada) | Almacenamiento de lago de datos |
|---|---|---|
| Nombre (obligatorio) |
|
|
| Hora de creación |
|
|
| Última modificación |
|
|
| LastAccessTime1 |
|
|
| ETag |
|
|
| Longitud del contenido |
|
|
| Tipo de contenido |
|
|
| Codificación de Contenido |
|
|
| Idioma del Contenido |
|
|
| Contenido-CRC64 |
|
|
| Content-MD5 |
|
|
| Cache-Control |
|
|
| Cache-Disposition |
|
|
| Tipo de Blob |
|
|
| NivelDeAcceso |
|
|
| AccessTierChangeTime |
|
|
| LeaseStatus |
|
|
| LeaseState |
|
|
| Cifrado por el Servidor |
|
|
| ClaveProporcionadaPorElClienteSHA256 |
|
|
| Metadatos |
|
|
| Hora de caducidad |
|
|
| hdi_isfolder |
|
|
| Propietario |
|
|
| Grupo |
|
|
| Permisos |
|
|
| Acl |
|
|
| Instantánea (disponible y obligatorio si opta por incluir instantáneas en el informe) |
|
|
| Eliminado |
|
|
| ID de eliminación |
|
|
| DeletedTime |
|
|
| Días de retención restantes |
|
|
| VersionId (disponible y obligatorio si opta por incluir versiones de blob en el informe) |
|
|
| IsCurrentVersion (disponible y obligatorio si opta por incluir versiones de blob en el informe) |
|
|
| Conteo de etiquetas |
|
|
| Etiquetas |
|
|
| CopyId |
|
|
| CopySource |
|
|
| Estado de Copia |
|
|
| Progreso de copia |
|
|
| TiempoDeFinalizaciónDeCopia |
|
|
| Descripción del estado de la copia |
|
|
| ImmutabilityPolicyUntilDate |
|
|
| ImmutabilityPolicyMode |
|
|
| LegalHold |
|
|
| RehydratePriority |
|
|
| ArchiveStatus |
|
|
| EncryptionScope |
|
|
| IncrementalCopy |
|
|
| x-ms-blob-sequence-number |
|
|
1 Deshabilitado de manera predeterminada. Habilitar el seguimiento de hora de acceso opcionalmente.
Campos de esquema personalizados admitidos para un inventario de contenedores
Nota
La columna Data Lake Storage muestra una compatibilidad con las cuentas que tienen habilitada la característica de espacio de nombres jerárquico.
| Campo | Blob Storage (compatibilidad predeterminada) | Almacenamiento de lago de datos |
|---|---|---|
| Nombre (obligatorio) |
|
|
| Última modificación |
|
|
| ETag |
|
|
| LeaseStatus |
|
|
| LeaseState |
|
|
| Duración del Arrendamiento |
|
|
| Metadatos |
|
|
| PublicAccess |
|
|
| ÁmbitoDeCifradoPredeterminado |
|
|
| DenegarModificaciónDelÁmbitoDeCifrado |
|
|
| TienePolíticaDeInmutabilidad |
|
|
| HasLegalHold |
|
|
| Almacenamiento inmutable con control de versiones habilitado |
|
|
| Eliminado (aparece solo si se selecciona incluir contenedores eliminados) |
|
|
| Versión (solo aparece si se selecciona incluir contenedores eliminados) |
|
|
| DeletedTime (Aparece solo si se selecciona incluir contenedores eliminados) |
|
|
| RemainingRetentionDays (solo aparece si se selecciona Incluir contenedores eliminados) |
|
|
Ejecución del inventario
Si configuras una regla para que funcione a diario, se ejecuta todos los días. Si configuras una regla para que se ejecute semanalmente, se ejecuta cada domingo en UTC.
Una operación de inventario puede tardar hasta seis días antes de fallar. Para conocer los factores que afectan al tiempo de ejecución, consulte características de rendimiento del inventario Blob.
Las ejecuciones no se solapan, por lo que una ejecución debe completarse antes de que pueda comenzar otra de la misma regla. Por ejemplo, si la ejecución del día anterior de una regla diaria sigue en curso, el servicio no inicia una nueva ejecución ese día. Las reglas semanales se aplican cada domingo, independientemente de si una carrera anterior tiene éxito o fracasa. Si una partida no se completa correctamente, revisa las siguientes antes de contactar con el soporte. El rendimiento de la ejecución puede variar, por lo que una ejecución posterior podría completarse correctamente.
Las directivas de inventario se leen o escriben en su totalidad. No se admiten las actualizaciones parciales. Las reglas de inventario se evalúan diariamente. Si cambias una definición de regla después de que el servicio evalúe la póliza de ese día, el servicio evaluará tus actualizaciones al día siguiente.
Evento de inventario completado
El evento BlobInventoryPolicyCompleted se genera cuando se completa la ejecución del inventario con relación a una regla. Este evento también tiene lugar si se produce un error de usuario en la ejecución del inventario antes de que se inicie el proceso. Por ejemplo, una política inválida o un contenedor de destino ausente activa el evento. El siguiente JSON muestra un evento de ejemplo BlobInventoryPolicyCompleted .
{
"topic": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/BlobInventory/providers/Microsoft.EventGrid/topics/BlobInventoryTopic",
"subject": "BlobDataManagement/BlobInventory",
"eventType": "Microsoft.Storage.BlobInventoryPolicyCompleted",
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"data": {
"scheduleDateTime": "2021-05-28T03:50:27Z",
"accountName": "testaccount",
"ruleName": "Rule_1",
"policyRunStatus": "Succeeded",
"policyRunStatusMessage": "Inventory run succeeded, refer manifest file for inventory details.",
"policyRunId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"manifestBlobUrl": "https://testaccount.blob.core.windows.net/inventory-destination-container/2021/05/26/13-25-36/Rule_1/Rule_1-manifest.json"
},
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-05-28T15:03:18Z"
}
En la siguiente tabla se describe el esquema del evento BlobInventoryPolicyCompleted:
| Campo | Tipo | Descripción |
|---|---|---|
| scheduleDateTime | cadena | Hora a la que se programó la regla de inventario. |
| nombre de cuenta | cadena | El nombre de la cuenta de almacenamiento. |
| ruleName | cadena | Nombre de la regla. |
| policyRunStatus | cadena | Estado de la ejecución del inventario. Los valores posibles son Succeeded, PartiallySucceeded y Failed. |
| policyRunStatusMessage | cadena | Mensaje de estado de la ejecución del inventario. |
| policyRunId | cadena | Id. de ejecución de la directiva para la ejecución del inventario. |
| manifestBlobUrl | cadena | Dirección URL del blob del archivo de manifiesto para la ejecución del inventario. |
Salida de inventario
Cada regla de inventario crea un conjunto de archivos en el contenedor de destino especificado para esa regla. La producción de inventario está disponible por el siguiente camino: https://<accountName>.blob.core.windows.net/<inventory-destination-container>/YYYY/MM/DD/HH-MM-SS/<ruleName> donde:
- accountName es el nombre de su cuenta de Azure Blob Storage.
- inventory-destination-container es el contenedor de destino que ha especificado en la regla de inventario.
- YYYY/MM/DD/HH-MM-SS es el momento en que empezó el inventario.
- ruleName es el nombre de la regla de inventario.
Archivos de inventario
Cada ejecución de inventario con relación a una regla genera los siguientes archivos:
Archivo de inventario: la ejecución de un inventario de una regla genera varios archivos con formato CSV o Apache Parquet. Cada archivo contiene los objetos coincidentes y sus metadatos.
Importante
Las ejecuciones de inventario producen múltiples archivos si el número de objetos es grande. Para más información, consulte Preguntas más frecuentes sobre la salida de varios archivos de inventario.
Los informes en formato Apache Parquet presentan fechas en el siguiente formato:
timestamp_millis [number of milliseconds since 1970-01-01 00:00:00 UTC]. En el caso de los archivos con formato CSV, la primera fila siempre es la fila de esquema. En la siguiente imagen se muestra un archivo CSV de inventario abierto en Microsoft Excel.
Importante
Es posible que las rutas de acceso de blob que aparecen en un archivo de inventario no aparezcan en un orden determinado.
Archivo de suma de comprobación: Un archivo de suma de comprobación contiene la suma de comprobación MD5 del contenido del
manifest.jsonarchivo. El nombre del archivo de suma de comprobación es<ruleName>-manifest.checksum. La generación del archivo de suma de comprobación marca la finalización de la ejecución de una regla de inventario.Archivo manifiesto: Un
manifest.jsonarchivo contiene los detalles de los archivos de inventario generados para esa regla. El nombre del archivo es<ruleName>-manifest.json. Este archivo también recoge la definición de la regla y la ruta al inventario de esa regla. El siguiente JSON muestra el contenido de un archivo de muestramanifest.json.{ "destinationContainer" : "inventory-destination-container", "endpoint" : "https://testaccount.blob.core.windows.net", "files" : [ { "blob" : "2021/05/26/13-25-36/Rule_1/Rule_1.csv", "size" : 12710092 } ], "inventoryCompletionTime" : "2021-05-26T13:35:56Z", "inventoryStartTime" : "2021-05-26T13:25:36Z", "ruleDefinition" : { "filters" : { "blobTypes" : [ "blockBlob" ], "includeBlobVersions" : false, "includeSnapshots" : false, "prefixMatch" : [ "penner-test-container-100003" ] }, "format" : "csv", "objectType" : "blob", "schedule" : "daily", "schemaFields" : [ "Name", "Creation-Time", "BlobType", "Content-Length", "LastAccessTime", "Last-Modified", "Metadata", "AccessTier" ] }, "ruleName" : "Rule_1", "status" : "Succeeded", "summary" : { "objectCount" : 110000, "totalObjectSize" : 23789775 }, "version" : "1.0" }Este archivo se crea cuando comienza la ejecución. El campo
statusde este archivo se establece enPendinghasta que se completa la ejecución. Tras completar la ejecución, este campo se establece en estado de finalización (por ejemplo:SucceededoFailed).
Precios y facturación
El precio del inventario se basa en el número de blobs y contenedores que escaneas durante el periodo de facturación. En la página de precios de Azure Blob Storage se muestra el precio por millón de objetos examinados. Por ejemplo, si el precio para examinar un millón de objetos es de $0.003, la cuenta contiene tres millones de objetos y genera cuatro informes en un mes, la factura sería de 4 * 3 * $0.003 = $0.036.
Después de crear archivos de inventario, incurres en cargos adicionales estándar de almacenamiento y operaciones de datos por almacenar, leer y escribir los archivos generados por inventario en la cuenta.
Si una regla contiene un prefijo que se solapa con un prefijo de cualquier otra regla, el mismo blob puede aparecer en más de un informe de inventario. En este caso, pagas por ambas ocasiones. Por ejemplo, imagine que el elemento prefixMatch de una regla se establece ["inventory-blob-1", "inventory-blob-2"] y que el elemento prefixMatch de otra regla se establece en ["inventory-blob-10", "inventory-blob-20"]. En este caso, aparecerá un objeto de nombre inventory-blob-200 en ambos informes de inventario.
Las instantáneas y las versiones de un blob también se tienen en cuenta a efectos de facturación, incluso si se configuran los filtros includeSnapshots y includeBlobVersions en false. Dichos valores de filtro no afectan a la facturación. Solo se pueden usar para filtrar lo que aparece en el informe.
Para obtener más información sobre los precios de los inventarios de blobs de Azure Storage, consulte la página Precios de Azure Blob Storage.
Compatibilidad de características
La compatibilidad con esta característica puede verse afectada al habilitar Data Lake Storage Gen2, el protocolo Network File System (NFS) 3.0 o el Protocolo de transferencia de archivos SSH (SFTP). Si ha habilitado cualquiera de estas funcionalidades, consulte Compatibilidad con características de Blob Storage en cuentas de Azure Storage para evaluar la compatibilidad con esta característica.
Limitaciones y problemas conocidos
En esta sección se describen las limitaciones y los problemas conocidos de la característica de inventario de blobs de Azure Storage.
El recuento de objetos y el tamaño de los datos del informe de inventario no deberían compararse con la facturación
Un informe de inventario no incluye metadatos, registros del sistema ni propiedades, así que no lo compares con el recuento de objetos facturados ni con el tamaño de los datos de la cuenta de almacenamiento.
En ciertos casos, los trabajos de inventario tardan más en completarse
Un trabajo de inventario puede tardar más en estos casos:
Añades una gran cantidad de datos nuevos.
Ejecutas una regla o un conjunto de reglas por primera vez.
La ejecución del inventario puede tardar más que las ejecuciones posteriores.
Una ejecución de inventario procesa una gran cantidad de datos en cuentas habilitadas para espacios de nombres jerárquicos.
Un trabajo de inventario puede tardar más de un día en completarse en cuentas con espacio de nombres jerárquico habilitado que contienen cientos de millones de blobs. A veces, se produce un error en el trabajo de inventario y no se crea un archivo de inventario. Si un trabajo no se completa correctamente, compruebe los trabajos posteriores para ver si se completan antes de ponerse en contacto con el soporte técnico.
No hay ninguna opción para generar un informe de forma retrospectiva para una fecha determinada.
Los trabajos de inventario no pueden escribir informes en contenedores que tengan una directiva de replicación de objetos
Una directiva de replicación de objetos puede impedir que un trabajo de inventario escriba informes de inventario en el contenedor de destino. Otros escenarios pueden archivar los informes o hacer que sean inmutables cuando están parcialmente completados, lo que puede hacer que los trabajos de inventario fallen.
Inventario y almacenamiento inmutable
No puedes configurar una política de inventario en la cuenta si el soporte para la inmutabilidad a nivel de versión está activado en esa cuenta, o si el soporte para la inmutabilidad a nivel de versión está activado en el contenedor de destino que defines en la política de inventario.
Los informes pueden excluir blobs eliminados temporalmente en cuentas que tienen un espacio de nombres jerárquico
Si eliminas un contenedor o directorio cuando la eliminación suave está activada, el servicio lo marca junto con todo su contenido como eliminado suavemente. Sin embargo, solo el contenedor o directorio, reportado como un blob de longitud cero, aparece en un informe de inventario. El informe no incluye los blobs secundarios eliminados temporalmente, incluso si se establece el campo includeDeleted de la directiva en true. Este comportamiento puede marcar una diferencia entre las métricas de capacidad en el portal de Azure y el informe de inventario.
Solo aparecen en los informes los blobs que eliminas explícitamente. Para obtener una lista completa de todos los blobs eliminados temporalmente (el directorio y todos los blobs secundarios), las cargas de trabajo deben eliminar cada blob de un directorio antes de eliminar el propio directorio.
Administración de duplicados en el inventario de blobs
El Inventario de Blob funciona en un sistema distribuido, lo que significa que en casos raros, pueden aparecer entradas duplicadas en tus informes.
Si tu caso de uso requiere entradas de blob únicas cuando posprocesas un informe de inventario, usa el Name campo para devolver solo blobs únicos.
Si tu informe incluye versiones de blobs, usa conjuntamente los campos Name y Version ID para identificar y devolver solo los blobs y las versiones únicos.