Administra tablas

En esta página, se explica cómo crear, modificar, borrar y obtener información sobre las tablas de Cloud Bigtable con cbt command-line tool o Google Cloud Console.

La cbt tool admite varios comandos que no se describen en esta página. Consulta la referencia de cbt para obtener una lista completa de comandos.

También puedes administrar tablas de manera programática mediante una de las bibliotecas cliente de Bigtable o las API de servicio.

Antes de comenzar

Si deseas administrar tablas desde la línea de comandos, instala la cbt tool.

Configura la herramienta cbt

Puedes especificar valores predeterminados para los siguientes parámetros de configuración de cbt tool:

  • El proyecto en el que está ubicada tu instancia de Bigtable.
  • La instancia de Bigtable a la que te vas a conectar.
  • El archivo de credenciales, en formato JSON, que debes usar cuando te conectes a tu instancia. Consulta las instrucciones para crear una clave de cuenta de servicio. Si hiciste la autenticación mediante la ejecución de gcloud auth application-default login, o si usas la herramienta de cbt en una instancia de Compute Engine, no necesitas un archivo de credenciales.
  • Los extremos de la API que vas a usar. Por lo general, no necesitarás cambiar estos valores.

A fin de especificar valores predeterminados para estos parámetros, crea un archivo .cbtrc en tu directorio de inicio. Puedes anular los valores predeterminados en .cbtrc mediante marcas de línea de comandos.

Para crear un archivo .cbtrc, ejecuta el siguiente comando y reemplaza [PROJECT_ID] y [INSTANCE_ID] con los valores adecuados:

echo -e "project = [PROJECT_ID]\ninstance = [INSTANCE_ID]" > ~/.cbtrc

En las instrucciones de cbt tool que se muestran en esta página, se da por hecho que estableciste el ID del proyecto y el ID de la instancia en tu archivo .cbtrc. También puedes usar las marcas -project y -instance para establecer estos valores cada vez que ejecutes cbt.

Crea una tabla

Cuando creas una tabla, no es necesario especificar las familias de columnas que se usarán en la tabla. Después puedes agregar o borrar familias de columnas.

Console

Para crear una tabla nueva en una instancia, sigue estos pasos:

  1. Abre la lista de instancias de Bigtable en Cloud Console.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

  4. Haz clic en Crea una tabla.

  5. Ingresa un ID para la tabla.

  6. Agrega familias de columnas (opcional)

    Puedes agregar columnas ahora o más tarde. Una tabla debe tener al menos una familia de columnas antes de poder escribir datos en ella.

  7. Haga clic en Crear.

cbt

Usa el siguiente comando y reemplaza [TABLE_NAME] por el nombre de tu tabla:

cbt createtable [TABLE_NAME]

Divide la tabla por clave de fila

Una característica de Bigtable como un servicio completamente administrado es la división automática de tablas en varios nodos. Siempre que sea posible, esta característica distribuye de manera uniforme la cantidad de datos almacenados en cada nodo y mantiene las filas de acceso frecuente separadas a fin de optimizar el rendimiento.

Cuando creas una tabla con cbt tool o una biblioteca cliente de Bigtable, puedes elegir las claves de fila para dividir la tabla antes. Por ejemplo, puedes designar filas específicas para dividir la tabla antes si vas a escribir muchas filas en ella.

No es esencial dividir la tabla antes, pero es beneficioso, ya que proporciona información de Bigtable sobre dónde es probable que lleguen la carga y la huella de datos cuando la tabla se crea. La división previa evita que Bigtable tenga que dividir las tablas y volver a balancear la carga de una sola vez a medida que llegan los datos.

La tabla no permanece dividida en las claves de fila que eliges dividir antes cuando creas la tabla. Con el tiempo, Bigtable divide tu tabla en diferentes claves de fila, según la cantidad de datos que hay en la tabla y la frecuencia con que se accede a cada fila.

Console

No puedes dividir antes las filas cuando creas una tabla con Google Cloud Console.

cbt

A fin de dividir una tabla antes según la clave de fila, usa la siguiente sintaxis para crear la tabla, y reemplaza [TABLE_NAME] con el nombre de la tabla y [SPLITS] con una lista separada por comas de los prefijos de clave de fila que se usarán para las divisiones previas:

cbt createtable [TABLE_NAME] splits=[SPLITS]

Por ejemplo, para dividir antes la tabla my-table en las claves de fila que comienzan con 10 y 20, ingresa el siguiente comando:

cbt createtable my-table splits=10,20

Modifica las familias de columnas en una tabla

Puedes agregar o borrar familias de columnas en una tabla existente.

Agrega familias de columnas

Console

  1. Abre la lista de instancias de Bigtable en Cloud Console.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

  4. Haz clic en Editar en la tabla que deseas modificar.

  5. Para cada familia de columnas que desees agregar, completa lo siguiente:

    1. Haz clic en Agregar familia de columnas.
    2. Proporciona un identificador único para la familia de columnas.
    3. Establece la política de recolección de elementos no utilizados para la familia de columnas.
    4. Haga clic en Listo.
  6. Haz clic en Guardar.

cbt

Para agregar una familia de columnas, usa el siguiente comando y reemplaza [TABLE_NAME] con el nombre de la tabla y [FAMILY_NAME] con el nombre de la familia de columnas:

cbt createfamily [TABLE_NAME] [FAMILY_NAME]

Por ejemplo, ingresa el siguiente comando para agregar las familias de columnas cf1 y cf2 a la tabla my-table:

cbt createfamily my-table cf1
cbt createfamily my-table cf2

Borra familias de columnas

Console

  1. Abre la lista de instancias de Bigtable en Cloud Console.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

  4. Haz clic en Editar en la tabla que deseas modificar.

  5. Para cada familia de columnas que desees borrar, completa los siguientes pasos:

    1. Coloca el cursor sobre la fila de la familia de columnas que desees borrar.
    2. Haga clic en .
  6. Haz clic en Guardar.

  7. Para confirmar que comprendes que la eliminación de una familia de columnas es permanente y que todos los datos en la familia de columnas se borrarán, escribe “Borrar familias de columnas” en el cuadro de texto.

  8. Haz clic en Confirm.

cbt

Usa el siguiente comando para borrar una familia de columnas de una tabla y reemplaza [TABLE_NAME] con el nombre de la tabla y [FAMILY_NAME] con el nombre de la familia de columnas:

cbt deletefamily [TABLE_NAME] [FAMILY_NAME]

Por ejemplo, ingresa el siguiente comando para borrar la familia de columnas cf2 de la tabla my-table:

cbt deletefamily my-table cf2

Visualiza una lista de tablas

Console

Sigue estos pasos para ver una lista de tablas en una instancia:

  1. Abre la lista de instancias de Bigtable en Cloud Console.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

    • Haz clic en la flecha al lado del ID de la tabla para expandir una lista de replicaciones de la tabla.
    • Haz clic en Ver métricas junto al nombre de una tabla para ver los datos de supervisión de la tabla.

cbt

Ejecuta el siguiente comando para ver una lista de tablas en una instancia:

cbt ls

Cómo ver información sobre una tabla

Console

Para ver información sobre una tabla, haz lo siguiente:

  1. Abre la lista de instancias de Bigtable en Cloud Console.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia. Para cada tabla, Cloud Console muestra la cantidad de clústeres en los que se almacena la tabla, el estado de la tabla, el uso del almacenamiento y los identificadores de cualquier copia de seguridad actual de la tabla.

  4. Para ver los nombres de las familias de columnas de la tabla, haz clic en .

  5. Para cerrar el panel Editar tabla, haz clic en Cancelar.

cbt

Puedes usar la herramienta de cbt para obtener una lista de las familias de columnas existentes en una tabla.

Usa el siguiente comando y reemplaza [TABLE_NAME] por el nombre de la tabla:

cbt ls [TABLE_NAME]

Configura políticas de recolección de elementos no utilizados

Una política de recolección de elementos no utilizados le indica a Bigtable qué datos conservar y cuáles marcar para su eliminación. Las políticas de recolección de elementos no utilizados se establecen a nivel de la familia de columnas. Puedes configurarlas cuando creas la tabla o después.

Cuando creas una familia de columnas, puedes especificar la cantidad de celdas que deseas retener en cada columna. Si no especificas este parámetro de configuración, Bigtable usa una de las siguientes opciones de configuración predeterminada:

  • Si creas la familia de columnas con el cliente de HBase de Cloud Bigtable para Java o la shell de HBase, o cualquier otra herramienta que utiliza el cliente de HBase para Java, Bigtable retiene solo 1 celda para cada una intersección entre fila y columna en la familia de columnas. Esta configuración predeterminada es coherente con HBase.

  • Si creas la familia de columnas con Cloud Console, cualquier otra biblioteca cliente o cbt tool, Bigtable retiene una cantidad infinita de celdas en cada columna.

Consulta Configura políticas de recolección de elementos no utilizados para obtener instrucciones detalladas sobre cómo ver, configurar y actualizar las políticas de recolección de elementos no utilizados.

Crea una copia de seguridad de una tabla y restablécela

Consulta Administra copias de seguridad para obtener instrucciones sobre cómo realizar una copia de seguridad de una tabla y restablecerla desde una copia de seguridad a una tabla nueva.

Borra una tabla

Console

  1. Abre la lista de instancias de Bigtable en Cloud Console.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

  4. Haz clic en en la tabla que deseas borrar.

  5. Haz clic en Borrar.

  6. Para confirmar que entiendes que esta acción no se puede deshacer y que se borrará la tabla de todos los clústeres de la instancia, escribe el ID de la tabla en el cuadro de texto.

  7. Haz clic en Borrar.

cbt

Para borrar una tabla, usa el siguiente comando y reemplaza [TABLE_NAME] por el nombre de la tabla:

cbt deletetable [TABLE_NAME]