Todos los productos
Search
Centro de documentos

Lindorm:Conexión a LindormTable con Lindorm Shell

Última actualización: Sep 05, 2026

Lindorm Shell es una herramienta de línea de comandos compatible con HBase proporcionada por Lindorm. Permite conectarse a LindormTable mediante la API de Java de HBase para realizar operaciones de datos como crear tablas, insertar información y ejecutar consultas. Este tema explica cómo descargar Lindorm Shell y establecer la conexión con LindormTable.

Requisitos previos

  • Tener instalado Java Development Kit (JDK) 1.8 o posterior.

  • Agregar la dirección IP del cliente a la lista de permitidos de la instancia de Lindorm. Para obtener más información, consulte Configure a whitelist.

Notas de uso

  • Al conectarse a LindormTable mediante Lindorm Shell, solo es posible ejecutar operaciones básicas de lenguaje de definición de datos (DDL) y lenguaje de manipulación de datos (DML). Para consultar las operaciones no compatibles, revise HBase API usage limits.

  • Evite utilizar la API de HBase para acceder a tablas anchas creadas con SQL, ya que esto podría devolver caracteres ilegibles.

  • Se recomienda utilizar Lindorm Shell en sistemas operativos Linux o macOS.

    Importante

    Si utiliza Lindorm Shell en Windows, podrían presentarse errores o mensajes sobre bibliotecas faltantes. En tal caso, deberá agregar la biblioteca requerida al sistema operativo según lo indique el mensaje de error.

Procedimiento

  1. Descargue Lindorm Shell.

    1. En la esquina superior izquierda de la consola de Lindorm, seleccione la región de su instancia. En la página de Instances, haga clic en el ID de la instancia deseada.

    2. En el panel de navegación izquierdo, haga clic en Database Connections y luego en la pestaña Wide Table Engine.

    3. Haga clic en Lindorm Shell Download.

  2. Ejecute el siguiente comando para descomprimir el paquete de Lindorm Shell. Este ejemplo descomprime el paquete en el directorio alihbase-2.0.18.

    tar zxvf hbaseue-shell.tar.gz
  3. Configure los parámetros de conexión.

    1. Vaya al directorio alihbase-2.0.18/conf y abra el archivo hbase-site.xml.

      vi hbase-site.xml
    2. Configure el endpoint de conexión, el nombre de usuario y la contraseña para LindormTable.

      <configuration>
          <property>
              <name>hbase.zookeeper.quorum</name>
              <value>ld-bp17j28j2y7pm****-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30020</value>
          </property>
          <property>
              <name>hbase.client.username</name>
              <value>testuser</value>
          </property>
          <property>
              <name>hbase.client.password</name>
              <value>password</value>
          </property>
      </configuration>

      Parámetros:

      • hbase.zookeeper.quorum: Endpoint de conexión para LindormTable. Puede encontrar este endpoint en la sección Access by Using HBase Java API de la consola.

        • Endpoint de VPC: Utilice este endpoint si Lindorm Shell se encuentra en una instancia de ECS dentro de la misma VPC que su instancia de Lindorm.

        • Endpoint público: Utilice este endpoint si Lindorm Shell se ejecuta en una máquina local o en una instancia de ECS fuera de la VPC de su instancia de Lindorm.

      • hbase.client.username y hbase.client.password: Nombre de usuario y contraseña para acceder a LindormTable. Si olvidó su contraseña, puede cambiarla en el Cluster Management System de LindormTable. Para obtener más información, consulte Change the password of a user.

  4. Conéctese a LindormTable mediante Lindorm Shell.

    Vaya al directorio alihbase-2.0.18/bin y ejecute el siguiente comando.

    ./hbase shell

    La siguiente salida indica que la conexión se estableció correctamente.

    Version 2.0.18, r08b8d58a9d6ce89765d5ebe2ddff425aed644c16, Mon Feb  1 12:46:39 CST 2021
    Took 0.0034 seconds
    Nota

    Para obtener más información sobre cómo usar el shell, consulte Lindorm Shell reference.

Referencia de Lindorm Shell

Referencia de comandos

Para obtener más información sobre los comandos del shell, consulte The Apache HBase Shell.

Lenguaje de definición de datos (DDL)

  • create: Crea una tabla.

  • list: Enumera todas las tablas.

  • disable: Deshabilita una tabla.

  • is_disabled: Comprueba si una tabla está deshabilitada.

  • enable: Habilita una tabla.

  • is_enabled: Comprueba si una tabla está habilitada.

  • describe: Muestra los detalles de una tabla, incluidas sus propiedades y esquema.

  • alter: Modifica una tabla.

  • exists: Verifica si existe una tabla.

  • drop: Elimina una tabla específica.

Lenguaje de manipulación de datos (DML)

  • put: Actualiza el valor de una celda específica.

  • get: Recupera el contenido de una fila o celda especificada.

  • delete: Elimina el valor de una celda en una tabla.

  • deleteall: Elimina todas las celdas de una fila determinada.

  • scan: Explora y devuelve datos de la tabla.

  • count: Cuenta y devuelve el número de filas en una tabla.

  • truncate_preserve: Trunca una tabla. Esta operación deshabilita, elimina y vuelve a crear la tabla especificada. La nueva tabla conserva las mismas divisiones de región que la tabla original.

Entrada y salida del shell

  • Ingrese al entorno de Shell.

    bin/hbase shell
  • Salga del entorno de Shell.

    quit

Ejemplos

Creación e inserción de datos

  1. Cree una tabla. Debe especificar un nombre para la tabla y como mínimo una familia de columnas.

    create 'table_name', 'column_family_name'

    Ejemplo:

    // Create a table named test with a column family named cf.
    create 'test', 'cf'
  2. Inserte datos.

    put 'table_name', 'row_key', 'column_family:column_name', 'value'

    Ejemplo:

    put 'test', 'row1', 'cf:a', 'value1'
    put 'test', 'row2', 'cf:b', 'value2'
    put 'test', 'row3', 'cf:c', 'value3'
    Nota

    row1 es la clave de fila de la tabla test, cf:a especifica la familia de columnas y el nombre de la columna, y value1 es el valor.

Consulta de datos

  • Consulte información sobre todas las tablas. Es posible utilizar expresiones regulares para filtrar tablas.

    list
    list 'abc.*'
    list 'test'
  • Consulte datos en una tabla específica.

    El comando scan ofrece una forma flexible de acceder a los datos de HBase. Puede usar el comando scan para explorar una tabla completa o consultar datos dentro de un rango específico. Una operación de exploración es ligeramente más lenta que una consulta de fila única mediante el comando get. Ejecute el siguiente comando para consultar datos en la tabla de prueba.

    scan 'table_name'

    Ejemplo:

    scan 'test'

    Se devuelve el siguiente resultado:

    ROW                                      COLUMN+CELL
     row1                                    column=cf:a, timestamp=1421762485768, value=value1
     row2                                    column=cf:b, timestamp=1421762491785, value=value2
     row3                                    column=cf:c, timestamp=1421762496210, value=value3
    3 row(s) in 0.0230 seconds
  • Consulte una sola fila de datos de una tabla.

    get 'table_name', 'row_key' 

    Ejemplo:

    get 'test', 'row1' 

    Se devuelve el siguiente resultado:

    COLUMN CELL
     cf:a timestamp=1421762485768, value=value1
    1 row(s) in 0.0350 seconds

Deshabilitar y habilitar tablas

Deshabilite o habilite una tabla. Antes de eliminar una tabla, modificar su configuración o realizar otras operaciones de gestión, primero debe deshabilitarla con el comando disable. Una vez completada la operación, utilice el comando enable para volver a habilitarla.

disable 'table_name'
enable 'table_name'

Eliminación de tablas

Elimine una tabla específica.

drop 'table_name'

Configuraciones comunes

Configuraciones comunes

  • Establezca el periodo de compactación mayor (major compaction) para una tabla específica. Se recomienda no modificar esta configuración a menos que sea necesario. La unidad es milisegundos (ms).

    El siguiente ejemplo establece el periodo de compactación mayor en siete días.

    alter 'table_name', {NAME => 'column_family_name', CONFIGURATION => {'hbase.hregion.majorcompaction' => 16800000}}
    Nota

    Valor predeterminado: Math.Min(TTL, 1728000000). Si no configura un TTL, el valor predeterminado es 1,728,000,000 ms, equivalente a 20 días.

  • Configure el algoritmo de compresión para una familia de columnas de una tabla específica.

    alter 'table_name', NAME => 'column_family_name', COMPRESSION => 'ZSTD'
  • Defina el tipo de codificación de bloques para una familia de columnas de una tabla específica.

    Establezca el tipo de codificación de bloques para la familia de columnas de la tabla de prueba en DATA_BLOCK_ENCODING.

    alter 'table_name', NAME => 'column_family_name', DATA_BLOCK_ENCODING => 'DIFF'
  • Configure un tiempo de vida (TTL) para una familia de columnas de una tabla específica. La unidad del TTL es segundos (s). Por ejemplo, 2,592,000 s equivalen a 30 días.

    alter 'table_name', NAME => 'column_family_name', TTL => 2592000

    Si desea conservar los datos permanentemente, puede establecer el valor de TTL en FOREVER. Ejemplo:

    alter 'table_name' , {NAME => 'column_family_name', TTL => 'FOREVER'}
  • Predivida una tabla específica.

    create 'table_name', {NAME => 'column_family_name', COMPRESSION => 'snappy' }, { NUMREGIONS => 50, SPLITALGO => 'HexStringSplit' }

    Parámetros

    Parámetro

    Descripción

    NAME

    Nombre de la familia de columnas.

    COMPRESSION

    Algoritmo de compresión para los datos de la tabla. Valor predeterminado: Ninguna. Algoritmos compatibles:

    • ZSTD (Recomendado)

    • SNAPPY

    • LZ4

    NUMREGIONS

    Número de regiones. Como regla general, calcule el número de regiones para alcanzar un tamaño objetivo de 6–8 GB por región. En instancias a gran escala, puede aumentar este número según sea necesario.

    SPLITALGO

    Algoritmo utilizado para inicializar las regiones. Los algoritmos compatibles y sus casos de uso son los siguientes:

    • HexStringSplit: Adecuado para claves de fila con prefijo de cadena hexadecimal.

    • DecimalStringSplit: Adecuado para claves de fila con prefijo de cadena numérica decimal.

    • UniformSplit: Adecuado para claves de fila con un prefijo completamente aleatorio.

Después de modificar la configuración, ejecute el siguiente comando para comprobar que los cambios surtieron efecto:

describe 'table_name'