Introducción a las clonaciones de tablas
En este documento, se muestra una descripción general de las clonaciones de tablas en BigQuery. Está dirigido a usuarios familiarizados con BigQuery y las tablas de BigQuery.
Una clonación de tabla es una copia liviana y editable de otra tabla (llamada tabla base). Solo se te cobra por el almacenamiento de datos en la clonación de tabla que difiere de la tabla base, por lo que inicialmente no hay costo de almacenamiento para una clonación de tabla. Además del modelo de facturación para el almacenamiento y algunos metadatos adicionales para la tabla base, una clonación de tabla es similar a una tabla estándar: puedes consultarla, hacer una copia de ella, borrarla, etcétera.
Los casos de uso comunes para las clonaciones de tablas son los siguientes:
- Crear copias de tablas de producción que puedas usar para el desarrollo y las pruebas
- Crear zonas de pruebas para que los usuarios generen sus propias estadísticas de datos y manipulaciones de datos, sin copiar físicamente todos los datos de producción. Solo se facturan los datos modificados.
Después de crear una clonación de tabla, es independiente de la tabla base. Los cambios que se realicen en la tabla base o la clonación de tabla no se reflejarán en el otra.
Si necesitas copias livianas y de solo lectura de tus tablas, considera usar instantáneas de tablas.
Metadatos de clonaciones de tablas
Una clonación de tabla tiene los mismos metadatos que una tabla estándar, más los siguientes elementos:
- El proyecto, el conjunto de datos y el nombre de la tabla base de la clonación de tabla.
- La hora de la operación de clonación de tabla. Si se usó el viaje en el tiempo para crear la clonación de tabla, esta es la marca del viaje en el tiempo.
Para obtener más información, consulta INFORMATION_SCHEMA.TABLES.
Operaciones de clonaciones de tablas
En general, debes usar las clonaciones de tablas de la misma manera que usas tablas estándar, incluidas las siguientes operaciones:
- Realiza consultas
- Control de acceso
- Obtén metadatos
- Partición y agrupamiento en clústeres
- Trabaja con esquemas
- Borrando
Sin embargo, la creación de una clonación de tabla es diferente de la creación de una tabla estándar. Para obtener más información, consulta Crea clonaciones de tablas.
Costos de almacenamiento
Los costos de almacenamiento se aplican a las clonaciones de tablas, pero BigQuery solo cobra por los datos en una clonación de tabla que no se cobra en otra tabla:
Cuando se crea una clonación de tabla, al principio no se genera un costo de almacenamiento por ella.
Si se agregan o cambian datos en una clonación de tabla, se te cobra por el almacenamiento de los datos agregados o actualizados.
Si se cambian o borran datos en la tabla base que también existen en la clonación de tabla, se te cobrará por almacenar en la clonación de tabla los datos modificados o borrados. Si hay varias clonaciones que contienen los datos modificados o borrados, solo se te cobrará por el almacenamiento que usa la clonación más antigua.
Si se agregan datos a la tabla base después de crear la clonación de tabla, no se te cobrará por el almacenamiento de esos datos en la clonación de tabla, pero se te cobrará por ellos en la tabla base.
La diferencia entre los cargos de almacenamiento de tablas base y de instantáneas de tabla se muestra en la siguiente imagen:
Para obtener más información, consulta los precios de almacenamiento de BigQuery.
Limitaciones
- Puedes clonar una tabla entre conjuntos de datos del mismo proyecto y entre conjuntos de datos en proyectos diferentes. Sin embargo, el conjunto de datos de destino para la clonación de tabla debe estar en la misma región y en la misma organización que la de la tabla que se está clonando. Por ejemplo, no puedes clonar una tabla de un conjunto de datos que reside en la UE en un conjunto de datos que reside en EE.UU.
- No puedes crear una clonación de los datos de una tabla porque estaban más allá de la duración del período de viaje en el tiempo para el conjunto de datos de la tabla.
- No puedes crear un clon de una vista o una vista materializada.
- No puedes crear un clon de una tabla externa.
- No puedes reemplazar una tabla existente o una clonación de tabla cuando creas una clonación de tabla. Para conocer las limitaciones específicas, consulta Nombres de las tablas.
- Si clonas una tabla que tiene datos en el almacenamiento optimizado para escritura (el búfer de transmisión para filas transmitidas recientemente), los datos en el almacenamiento optimizado para escritura no se incluyen en la tabla clonación.
- Si clonas una tabla que tiene datos en viaje en el tiempo, los datos en el viaje en el tiempo no se incluyen en la clonación de la tabla.
- Las clonaciones de las tablas no se pueden distinguir de las tablas estándar en el panel Explorer. Sin embargo, puedes indicar una clonación de tabla a partir de una tabla estándar si observas los detalles de la tabla. Los detalles de la clonación de tabla tienen una sección de Información de tabla base que las tablas estándar no tienen.
- No puedes usar una operación de clonación para agregar datos a una tabla existente. Por ejemplo, no puedes usar la configuración de marcas
--append_table=true
y--clone=true
en el mismo comandobq cp
. Para agregar datos cuando duplicas una tabla, usa una operación de copia. - Cuando creas una clonación de tabla, su nombre debe respetar las mismas reglas de nombres que cuando creas una tabla.
- La creación de clonaciones de tablas está sujeta a límites de BigQuery para trabajos de copia.
- El tiempo que BigQuery tarda en crear clonaciones de tablas puede variar de manera significativa en las diferentes ejecuciones porque el almacenamiento subyacente se administra de forma dinámica.
Cuotas y límites
Las clonaciones de tablas están sujetas a las mismas cuotas y límites que las tablas estándar. Para obtener más información, consulta Cuotas y límites de las tablas. También tienen límites de clonación de tablas que se aplican.