A consulta por distância geográfica permite especificar uma área geográfica circular, definida por um ponto central e um raio, como condição de busca. O Tablestore retorna as linhas cujo valor da coluna especificada esteja dentro dessa área circular.
Operações de API
Para consultar por distância geográfica, defina o tipo de consulta como GeoDistanceQuery na operação Search ou ParallelScan.
Parâmetros
|
Parâmetro |
Descrição |
|
fieldName |
Nome da coluna a ser consultada. O valor deste parâmetro deve ser do tipo de dados GEOPOINT. |
|
centerPoint |
Par de coordenadas do ponto central, composto por valores de latitude e longitude. O valor deve estar no formato |
|
distanceInMeter |
Raio da área geográfica circular. O valor é do tipo DOUBLE. Unidade: metros. |
|
getTotalCount |
Define se o número total de linhas que atendem às condições da consulta deve ser retornado. O valor padrão é false, indicando que a contagem total não será retornada. Definir este parâmetro como true pode comprometer o desempenho da consulta. |
|
query |
Instrução de consulta para o índice de busca. Defina este parâmetro como GeoDistanceQuery. |
|
tableName |
Nome da tabela de dados. |
|
indexName |
Nome do índice de busca. |
|
columnsToGet |
Indica se todas as colunas de cada linha correspondente devem ser retornadas. Configure os campos returnAll e columns para este parâmetro. O campo returnAll tem como padrão false, o que significa que nem todas as colunas são retornadas. Nesse caso, use o campo columns para especificar quais colunas deseja obter. Se nenhuma coluna for especificada, apenas as colunas de chave primária serão retornadas. Ao definir o campo returnAll como true, todas as colunas são incluídas na resposta. |
Métodos
É possível executar consultas por distância geográfica usando o console do Tablestore, a CLI do Tablestore e os SDKs do Tablestore. Antes de iniciar, certifique-se de atender aos seguintes pré-requisitos:
-
Utilize uma conta Alibaba Cloud ou um usuário RAM com as permissões necessárias para operações no Table Store. Para conceder permissões a um usuário RAM, consulte Conceder permissões a um usuário RAM usando uma política RAM.
Caso utilize um SDK ou ferramenta de linha de comando, crie um AccessKey para sua conta Alibaba Cloud ou usuário RAM, caso ainda não possua um.
Você já criou uma tabela de dados.
Um Índice de Busca foi criado para a tabela de dados.
Se estiver usando um SDK, inicialize o Cliente do Tablestore.
Para uso da ferramenta de linha de comando, baixe e inicie a ferramenta, configure a conexão com sua instância e selecione a tabela desejada. Para mais detalhes, veja Baixar a ferramenta de linha de comando, Iniciar a ferramenta e configurar informações de conexão e Operações de tabela de dados.
Faturamento
A consulta de dados via Índice de Busca consome throughput de leitura. Para mais informações, veja Medição e faturamento do Índice de Busca.
Perguntas frequentes
Referências
O Índice de Busca suporta diversos tipos de consulta para dados multidimensionais, incluindo consulta por termo, consulta por termos, consulta match all, consulta match, consulta phrase match, consulta por intervalo, consulta por prefixo, consulta por sufixo, consulta wildcard, consulta wildcard baseada em token, consulta booleana, consulta geográfica, consulta aninhada, busca vetorial, e consulta exists.
Durante a consulta de dados, é possível ordenar e paginar o conjunto de resultados ou aplicar colapso (deduplicação).
Para análises de dados, como encontrar valores máximos ou mínimos, calcular somas ou contar linhas, utilize os recursos de agregação estatística ou consulta SQL.
Para exportar dados rapidamente sem se preocupar com a ordem do conjunto de resultados, recomenda-se o recurso Parallel Scan.