Todos os produtos
Search
Central de documentação

Tablestore:Secondary indexes

Última atualização: Jul 03, 2026

Crie e gerencie índices secundários com o Tablestore CLI.

Pré-requisitos

  • Tablestore CLI instalado e configurado com credenciais de acesso. Para mais informações, consulte Tablestore CLI.

  • Tabela de dados com colunas predefinidas. O número máximo de versões (max versions) deve ser 1. Para mais informações, consulte Operações de tabela de dados.

Criar um índice secundário

Crie um índice secundário global ou local para uma tabela de dados.

create_index -t <tableName> -n <indexName> -i <indexType> --pk <primaryKeyName> --attr <definedColumn>

Parâmetro

Obrigatório

Descrição

-t, --table

Não

Nome da tabela de dados. Dispensável se você já selecionou uma tabela de dados com use.

-n, --name

Sim

Nome do índice secundário.

-i, --index_type

Não

Tipo do índice secundário. Valores válidos:

  • global (padrão): índice secundário global. As colunas indexadas e as colunas de chave primária da tabela de dados são replicadas assincronamente para a tabela de índice. A latência de sincronização geralmente é de milissegundos.

  • local: índice secundário local. Os dados são gravados sincronamente na tabela de índice e ficam disponíveis para consulta imediatamente após a gravação na tabela de dados.

-k, --pk

Sim

Colunas indexadas da tabela de índice, compostas por colunas de chave primária e colunas predefinidas da tabela de dados. Separe várias colunas com vírgulas. Em índices secundários locais, a primeira coluna de chave primária da tabela de índice deve ser igual à primeira coluna de chave primária da tabela de dados.

-a, --attr

Sim

Colunas de atributo da tabela de índice, correspondentes às colunas predefinidas da tabela de dados. Separe várias colunas com vírgulas.

-b, --without_base_data

Não

Exclui os dados existentes da tabela de dados durante a criação do índice secundário. Por padrão, o sistema inclui os dados existentes.

Exemplos

  • Crie um índice secundário global chamado index0 para a tabela de dados mytable, incluindo os dados existentes.

    create_index -t mytable -n index0 -i global --pk uid,pid -a name,col0
  • Crie um índice secundário global chamado index1 para a tabela de dados mytable, excluindo os dados existentes.

    create_index -t mytable -n index1 -i global --pk uid,pid -a name,col0 -b
  • Crie um índice secundário local chamado index2 para a tabela de dados mytable.

    create_index -t mytable -n index2 -i local --pk uid,name -a col0,col1

Usar uma tabela de índice

Selecione uma tabela de índice para consultas e exportações subsequentes.

use --wc -t <indexName>

Parâmetro

Obrigatório

Descrição

--wc

Não

Indica que a tabela especificada é uma tabela de dados ou de índice, e não um índice de pesquisa.

-t, --table

Sim

Nome da tabela de índice.

Exemplos

Use a tabela de índice index0.

use -t index0

Visualizar informações do índice

Execute o comando desc para visualizar informações sobre uma tabela de dados e seus índices secundários.

desc -t <tableName>

Parâmetro

Obrigatório

Descrição

-t, --table

Não

Nome da tabela de dados ou de índice. Dispensável se você já selecionou uma tabela com use.

-f, --print_format

Não

Formato de saída. Valores válidos: json (padrão) e table.

-o, --output

Não

Exporta as informações da tabela para um arquivo JSON local.

Exemplos

  • Visualize informações sobre a tabela atual.

    desc
  • Salve as informações da tabela em um arquivo local.

    desc -o /tmp/describe_table_meta.json

Ler dados

Leia uma única linha de dados de uma tabela de índice pela chave primária.

Nota

Se a linha especificada não existir, o sistema retornará um resultado vazio.

get --pk '<pk_values>'

Parâmetro

Obrigatório

Descrição

-k, --pk

Sim

Valores de chave primária da tabela de índice, expressos como um array JSON. A quantidade e os tipos das colunas de chave primária devem corresponder aos da tabela de índice.

-c, --columns

Não

Colunas a ler. Especifique colunas de chave primária ou de atributo. Separe várias colunas com vírgulas. Se omitido, o sistema retorna toda a linha.

--max_version

Não

Número máximo de versões a ler.

--time_range_start

Não

Lê dados dentro de um intervalo de números de versão. time_range_start e time_range_end especificam os timestamps inicial e final, respectivamente. O intervalo é fechado à esquerda e aberto à direita: [início, fim).

--time_range_end

Não

--time_range_specific

Não

Lê dados de um número de versão específico.

-o, --output

Não

Exporta os resultados da consulta para um arquivo JSON local.

Exemplos

Leia uma linha da tabela de índice onde os valores de chave primária são "86" e 6771.

get --pk '["86", 6771]'

Verificar dados

Verifique uma tabela de índice para recuperar todos os dados ou um número específico de linhas.

scan --limit <n>

Parâmetro

Obrigatório

Descrição

--limit

Não

Número máximo de linhas a retornar. Se omitido, o sistema verifica todas as linhas da tabela.

Exemplos

Verifique até 10 linhas da tabela de índice.

scan --limit 10

Exportar dados

Exporte dados de uma tabela de índice para um arquivo JSON local.

scan -o /localpath/filename.json

Parâmetro

Obrigatório

Descrição

-c, --columns

Não

Colunas a exportar. Especifique colunas de chave primária ou de atributo. Separe várias colunas com vírgulas. Se omitido, o sistema exporta toda a linha.

--max_version

Não

Número máximo de versões a exportar.

--time_range_start

Não

Exporta dados dentro de um intervalo de números de versão. time_range_start e time_range_end especificam os timestamps inicial e final, respectivamente. O intervalo é fechado à esquerda e aberto à direita: [início, fim).

--time_range_end

Não

--time_range_specific

Não

Exporta dados de um número de versão específico.

--backward

Não

Exporta dados em ordem decrescente de chaves primárias.

-o, --output

Sim

Caminho do arquivo local de destino da exportação.

-l, --limit

Não

Número máximo de linhas a exportar.

-b, --begin

Não

Pontos inicial e final do intervalo de exportação. O intervalo de chave primária é fechado à esquerda e aberto à direita: [início, fim).

Nota
  • Se --begin for definido como [null,null], o ponto inicial será [INF_MIN,INF_MIN], o que significa que cada coluna de chave primária começa pelo valor mínimo.

  • Se --end for definido como [null,null], o ponto final será [INF_MAX,INF_MAX], o que significa que cada coluna de chave primária termina no valor máximo.

-e, --end

Não

Exemplos

  • Exporte todos os dados da tabela de índice para um arquivo local.

    scan -o /tmp/mydata.json
  • Exporte apenas as colunas uid e name.

    scan -o /tmp/mydata.json -c uid,name
  • Exporte dados dentro de um intervalo de chave primária especificado.

    scan -o /tmp/mydata.json -b '["86", 6771]' -e '["86", 6775]'

Excluir um índice secundário

Exclua uma tabela de índice desnecessária.

drop_index -t <tableName> -i <indexName> -y

Parâmetro

Obrigatório

Descrição

-t, --table

Não

Nome da tabela de dados. Dispensável se você já selecionou uma tabela de dados com use.

-i, --index

Sim

Nome do índice secundário.

-y, --yes

Sim

Confirma a exclusão sem solicitar confirmação adicional.

Exemplos

  • Exclua a tabela de índice index0 da tabela de dados atual.

    drop_index -i index0 -y
  • Exclua a tabela de índice index0 da tabela de dados mytable.

    drop_index -t mytable -i index0 -y