> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> Documentación sobre el formato PuffinMetadata

# PuffinMetadata

<div id="description">
  ## Descripción
</div>

Formato de entrada especial para leer metadatos del pie de página de archivos [Apache Iceberg Puffin](https://iceberg.apache.org/puffin-spec/).
Genera una fila por cada entrada de blob de la lista `BlobMetadata` del pie de página.

`deletion-vector-v1` es el único tipo de blob compatible: se rechazan los archivos que contienen cualquier otro tipo de blob (por ejemplo, `apache-datasketches-theta-v1`).

Columnas de salida fijas:

* `blob_type` (`String`): tipo de blob, por ejemplo, `deletion-vector-v1`
* `snapshot_id` (`Int64`): ID del snapshot del blob
* `sequence_number` (`Int64`): número de secuencia del blob
* `fields` (`Array(Int32)`): lista de ID de los campos a los que se aplica el blob
* `offset` (`Int64`): desplazamiento del payload del blob dentro del archivo
* `length` (`Int64`): longitud del payload del blob en bytes
* `compression_codec` (`String`): códec de compresión del payload del blob, si está presente
* `properties` (`Map(String, String)`): propiedades específicas del blob

Las `FileMetadata.properties` opcionales de nivel superior del pie de página (por ejemplo, `created-by`) se validan por tipo cuando están presentes, pero no se devuelven como columnas. Si la clave está presente, debe ser un objeto JSON con valores de tipo cadena (se rechaza `null`).

Se admiten pies de página de Puffin comprimidos con LZ4 y sin comprimir. El tamaño del payload del pie de página (y el tamaño de contenido LZ4 declarado) está limitado, cuando corresponde, por una relación de compresión y un límite absoluto; los pies de página demasiado grandes se rechazan antes de asignar memoria.

<div id="example-usage">
  ## Ejemplo de uso
</div>

Inspeccione los blobs del pie de página:

```sql theme={null}
SELECT blob_type, snapshot_id, sequence_number, offset, length, compression_codec,
       mapKeys(properties), mapValues(properties)
FROM file(deletes.puffin, PuffinMetadata);
```

Combínalo con el formato `Puffin` para leer los payloads de los blobs `deletion-vector-v1`.
