comando hbase peinando

Los siguientes comandos se basan en la versión de hbase:

hbase(main):041:0> version
1.2.0-cdh5.7.1, rUnknown, Wed Jun  1 16:30:06 PDT 2016
  •  

general

status: Ver el estado de hbase

hbase(main):002:0> status
1 active master, 1 backup masters, 4 servers, 0 dead, 0.5000 average load

table_help: entrada simple a la operación de la tabla

t = create 't','cf'  
t = get_table 't'
t.put 'r1','cf:q','v'
t.scan
t.disable
t.enable
t.flush
t.disable
t.drop

whoami: ver usuarios y grupos actuales

hbase(main):252:0* whoami
chengguoqiang (auth:SIMPLE)
    groups: chengguoqiang, wheel

operación ddl

  • lista Ver lista de tablas
  • crear Crear tabla
  • existe Verifique si la tabla existe
  • describir / desc ver estructura de la tabla
  • enable / enable_all / is_enabled table está disponible para producción, juzgue si la producción está disponible
  • disable / disable_all / is_disabled Desactivar tabla, determinar si desea desactivar
  • drop / drop_all eliminar tabla
  • get_table Obtenga una instancia
  • localizar_región devuelve la región, nuevo comando hbase
  • show_filters no tiene ningún uso por el momento
  • alter modifica la estructura de la tabla, el parámetro hbase.online.schema.update.enable determina si se puede modificar en producción
  • alter_async modificar asincrónicamente la estructura de la tabla
hbase(main):088:0* exists 't'
hbase(main):089:0> desc 't'
hbase(main):090:0> alter 't',{NAME=>'cf', VERSIONS=>'5'}, {NAME=>'cf1', VERSIONS=>'3', COMPRESSION=>'GZ',TTL=>'86400',IN_MEMORY=>'true'}
hbase(main):092:0> alter_status 't'

Al crear una tabla, hbase asigna una región a la tabla de forma predeterminada. Todas las solicitudes de lectura y escritura accederán a la misma región del regionServer. En este momento, no se puede lograr el efecto del balanceo de carga y es posible que otros regionServers del clúster estén relativamente inactivos. estado. Para resolver este problema, puede utilizar la división previa, que se configura cuando se crea la tabla para generar varias regiones. Hbase viene con dos algoritmos pre-divididos,  HexStringSplit  y UniformSplit  . Si nuestra clave de fila es una cadena hexadecimal como prefijo, es más adecuado usar HexStringSplit como un algoritmo pre-dividido . Por ejemplo, usamos HexHash (prefijo) como prefijo de la clave de fila, donde Hexhash es el algoritmo hash que finalmente obtiene la cadena hexadecimal. También podemos usar nuestro propio algoritmo de división.

create 'profile:test','data',{NUMREGIONS => 4, SPLITALGO => 'HexStringSplit', REGION_REPLICATION => 1}
  •  

espacio de nombres

  • list_namespace Lista de espacios de nombres
  • create_namespace Crea un espacio de nombres
  • describe_namespace Descripción del espacio de nombres
  • list_namespace_tables Ver tablas en el espacio de nombres especificado
  • alter_namespace modificar o agregar atributos de espacio de nombres
  • drop_namespace elimina el espacio de nombres, debe ser un espacio de nombres vacío
hbase(main):028:0> create_namespace 'profile'
hbase(main):029:0> list_namespace 'profile'
hbase(main):036:0* alter_namespace 'profile',{METHOD=>'set', 'TEST_PROPERTY'=>'TEST_VALUE'}
hbase(main):030:0> describe_namespace 'profile'

dml

  • poner insertar un registro
  • agregar Poner si el registro no existe, agregar valor si existe
  • obtener un registro
  • escanear registro de escaneo
  • contar Obtener el número
  • eliminar eliminar clave de fila, se debe especificar la columna
  • eliminar todos eliminar la clave de fila completa
  • contador de incr, inserte un registro, agregue 1 si existe
  • get_counter devuelve el valor del contador
  • truncar mesa vacía
  • truncate_preserve borra la tabla, pero guarda la información de la partición
  • get_splits devuelve una lista de particiones
hbase(main):005:0> put 't','r1','cf1:q1','v1',{ATTRIBUTES=>{'att1'=>'val1'}}
hbase(main):006:0> scan 't'
hbase(main):007:0> get 't','r1',{COLUMN => 'cf1'}
hbase(main):042:0* put 't','r2','cf1:q2','v2',{ATTRIBUTES=>{'att1'=>'val1'}}

hbase(main):043:0> put 't','r3','cf1:q2','v3',{ATTRIBUTES=>{'att1'=>'val1'}}

hbase(main):044:0> put 't','r5','cf1:q5','v5',{ATTRIBUTES=>{'att1'=>'val1'}}`
hbase(main):045:0> put 't','r11','cf1:q11','v11',{ATTRIBUTES=>{'att1'=>'val1'}}
hbase(main):046:0> put 't','r8','cf1:q8','v8',{ATTRIBUTES=>{'att1'=>'val1'}}
scan 't',{COLUMN=>'cf1',LIMIT=>5, STARTROW=>'r2', ENDROW=>'r5'}
hbase(main):059:0* delete 't','r5','cf1:q5'
hbase(main):076:0* count 't'
hbase(main):051:0> incr 't','r2','cf1:q5'
hbase(main):053:0> get_counter 't','r2','cf1:q5'

hbase(main):105:0> create 'profile:t1','cf1',{SPLITS=>['a','b','c']}
hbase(main):105:0> get_split 'profile:t1'

seguridad

  • conceder autorización, se puede refinar a la columna
  • revocar cancelar autorización
  • user_permission Ver tabla de permisos abiertos

    LEER ('R'), ESCRIBIR ('W'), EJEC ('X'), CREAR ('C'), ADMIN ('A')

// Syntax : grant <user> <permissions> [<@namespace> [<table> [<column family> [<column qualifier>]]]
grant 'chengguoqiang','RW', 'profile:yingyun'

// Syntax : user_permission <table>
user_permission 'profile:yingyun'


// Syntax : revoke <user> [<table> [<column family> [<column qualifier>]]
revoke 'chengguoqiang','profile:yingyun'

Reimpreso de: https://blog.csdn.net/baidu_35482842/article/details/51803639

Supongo que te gusta

Origin blog.csdn.net/xiezhen_zheng/article/details/82458237
Recomendado
Clasificación