Introducción a los clones de tablas

En este documento se ofrece una descripción general de los clones de tablas en BigQuery. Está dirigido a usuarios que conocen BigQuery y las tablas de BigQuery.

Un clon de tabla es una copia ligera y grabable de otra tabla (denominada tabla base). Solo se te cobra por el almacenamiento de los datos de la réplica de la tabla que difieren de la tabla base, por lo que, al principio, no hay ningún coste de almacenamiento para una réplica de tabla. Aparte del modelo de facturación del almacenamiento y de algunos metadatos adicionales de la tabla base, un clon de una tabla es similar a una tabla estándar: puedes consultarlo, hacer una copia, eliminarlo, etc.

Estos son algunos de los usos más habituales de los clones de tablas:

  • Crear copias de las tablas de producción que puedes usar para el desarrollo y las pruebas.
  • Crear entornos aislados para que los usuarios generen sus propias analíticas y manipulaciones de datos sin copiar físicamente todos los datos de producción. Solo se te cobrarán los datos modificados.

Una vez que haya creado una clonación de una tabla, esta será independiente de la tabla base. Los cambios que se hagan en la tabla base o en la tabla clonada no se reflejarán en la otra.

Si necesitas copias ligeras de solo lectura de tus tablas, puedes usar capturas de tablas.

Metadatos de clones de tablas

Un clon de una tabla tiene los mismos metadatos que una tabla estándar, además de lo siguiente:

  • El proyecto, el conjunto de datos y el nombre de la tabla base de la tabla clonada.
  • Hora de la operación de clonación de la tabla. Si se ha usado la función de viaje en el tiempo para crear el clon de la tabla, este es el timestamp de viaje en el tiempo.

Para obtener más información, consulta INFORMATION_SCHEMA.TABLES.

Operaciones de clonación de tablas

En general, las réplicas de tablas se usan de la misma forma que las tablas estándar, incluidas las siguientes operaciones:

  • Consultas
  • Control de acceso
  • Obtener metadatos
  • Particiones y clústeres
  • Trabajar con esquemas
  • Eliminando

Sin embargo, la creación de un clon de una tabla es diferente de la creación de una tabla estándar. Para obtener más información, consulta el artículo Crear clones de tablas.

Costes de almacenamiento

Se aplican costes de almacenamiento a los clones de tablas, pero BigQuery solo cobra por los datos de un clon de tabla que no se hayan cobrado ya en otra tabla:

  • Cuando se crea un clon de una tabla, inicialmente no hay ningún coste de almacenamiento para el clon.

  • Si se añaden o modifican datos en un clon de una tabla, se te cobrará por el almacenamiento de los datos añadidos o actualizados.

  • Si se eliminan datos de un clon de una tabla, no se te cobrará por el almacenamiento de los datos eliminados.

  • Si se modifican o eliminan datos de la tabla base que también están en una tabla clonada, se te cobrará por el almacenamiento de la tabla clonada de los datos modificados o eliminados. Si hay varios clones que contienen los datos modificados o eliminados, solo se te cobrará por el almacenamiento utilizado por el clon más antiguo.

  • Si se añaden datos a la tabla base después de crear la tabla clonada, no se te cobrará por el almacenamiento de esos datos en la tabla clonada, pero sí en la tabla base.

En la siguiente imagen se muestra la diferencia entre los cargos de almacenamiento de la tabla base y los de la tabla clonada:

Ejemplo de facturación de la clonación de tablas

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 de proyectos diferentes. Sin embargo, el conjunto de datos de destino de la tabla clonada debe estar en la misma región y en la misma organización que la tabla que se está clonando. Por ejemplo, no puedes clonar una tabla de un conjunto de datos de la UE en un conjunto de datos de EE. UU.
  • No puedes crear un clon de los datos de una tabla porque se remontan a un periodo anterior a la duración de la ventana de viaje en el tiempo del conjunto de datos de la tabla.
  • No puedes crear un clon de una vista ni de una vista materializada.
  • No puedes crear un clon de una tabla externa.
  • Si clonas una tabla que tiene datos en almacenamiento optimizado para escritura (el búfer de streaming de las filas transmitidas recientemente), los datos del almacenamiento optimizado para escritura no se incluirán en la tabla clonada.
  • Si clonas una tabla que tiene datos en viaje en el tiempo, los datos de viaje en el tiempo no se incluyen en la tabla clonada.
  • Las copias de tablas no se pueden distinguir de las tablas estándar en el panel Explorador. Sin embargo, puedes distinguir una clonación de una tabla estándar consultando los detalles de la tabla. Los detalles de los clones de tablas incluyen una sección Información de la tabla base que no tienen las tablas estándar.
  • No puedes usar una operación de clonación para añadir datos a una tabla. Por ejemplo, no puedes usar los ajustes de marca --append_table=true y --clone=true en el mismo comando bq cp. Para añadir datos al duplicar una tabla, utiliza una operación de copia.
  • Cuando creas un clon de una tabla, su nombre debe cumplir las mismas reglas de nomenclatura que cuando creas una tabla.
  • La creación de clones de tablas está sujeta a los límites de BigQuery en los trabajos de copia.
  • El tiempo que tarda BigQuery en crear clones de tablas puede variar significativamente entre diferentes ejecuciones, ya que el almacenamiento subyacente se gestiona de forma dinámica.

Cuotas y límites

Las tablas clonadas están sujetas a las mismas cuotas y límites que las tablas estándar. Para obtener más información, consulta las cuotas y los límites de las tablas. También se aplican límites de clonación de tablas.

Siguientes pasos