Los datos exportados para tablas específicas se almacenan en el formato
, donde el prefijo base es el siguiente:base_prefix
/files
export_identifier
/database_name
/schema_name
.table_name
/
Por ejemplo:
export-1234567890123-459/rdststdb/rdststdb.DataInsert_7ADB5D19965123A2/
Hay dos convenciones para la forma en que se denominan los archivos.
-
Convención actual:
batch_index
/part-partition_index
-random_uuid
.format-based_extension
El índice de lote es un número secuencial que representa un lote de datos leídos desde la tabla. Si no podemos dividir su tabla en pequeños fragmentos para exportarlos en paralelo, habrá varios índices de lote. Lo mismo ocurre si la tabla está dividida en varias tablas. Habrá varios índices de lote, uno para cada una de las particiones de la tabla principal.
Si podemos dividir su tabla en pequeños fragmentos para que se lean en paralelo, solo estará la carpeta de índices de lote
1
.Dentro de la carpeta de índices de lote, habrá uno o varios archivos Parquet que contienen los datos de la tabla. El prefijo del nombre de archivo Parquet es
part-
. Si la tabla está particionada, habrá varios archivos que comiencen por el índice de particiónpartition_index
00000
.Puede haber huecos en la secuencia del índice de partición. Esto sucede porque cada partición se obtiene de una consulta por rangos de la tabla. Si no hay datos en el rango de esa partición, se omite ese número secuencial.
Por ejemplo, supongamos que la columna
id
es la clave principal de la tabla y que sus valores mínimo y máximo son100
y1000
. Al intentar exportar esta tabla con nueve particiones, la leemos con consultas paralelas como las siguientes:SELECT * FROM table WHERE id <= 100 AND id < 200 SELECT * FROM table WHERE id <= 200 AND id < 300
Esto debería generar nueve archivos, del
part-00000-
alrandom_uuid
.gz.parquetpart-00008-
. Sin embargo, si no hay filas con ID entrerandom_uuid
.gz.parquet200
y350
, una de las particiones completadas estará vacía y no se creará ningún archivo para ella. En el ejemplo anterior, no se creapart-00001-
.random_uuid
.gz.parquet -
Convención anterior:
part-
partition_index
-random_uuid
.format-based_extension
Es igual a la convención actual, pero sin el prefijo
, por ejemplo:batch_index
part-00000-c5a881bb-58ff-4ee6-1111-b41ecff340a3-c000.gz.parquet part-00001-d7a881cc-88cc-5ab7-2222-c41ecab340a4-c000.gz.parquet part-00002-f5a991ab-59aa-7fa6-3333-d41eccd340a7-c000.gz.parquet
La convención de nomenclatura de archivos está sujeta a cambios. Por lo tanto, cuando lea tablas de destino, recomendamos que lea todo lo que hay dentro del prefijo base de la tabla.