Antes de criar um índice de pesquisa, compreenda os tipos de dados compatíveis com esse recurso. Entenda também os mapeamentos entre os tipos de dados do índice de pesquisa e os tipos de dados das tabelas associadas.
Tipos de dados compatíveis
O índice de pesquisa oferece tipos de dados primitivos, como Long, Double, Boolean, Keyword, Text, Date, IP, Geopoint, Vector e JSON. Também disponibiliza tipos especiais, incluindo arrays, tipos aninhados e colunas virtuais.
Tipos de dados primitivos
Os índices de pesquisa fornecem tipos de dados primitivos, como Long, Double, Boolean, Keyword, Text, Date, IP, Geopoint, Vector e JSON. A tabela a seguir descreve esses tipos.
|
Tipo de dado primitivo |
Descrição |
|
Long |
Inteiro longo de 64 bits. |
|
Double |
Número de ponto flutuante de dupla precisão de 64 bits. |
|
Boolean |
Valor booleano. |
|
Keyword |
String não tokenizada. |
|
FuzzyKeyword |
String compatível com consultas fuzzy de alto desempenho. |
|
Text |
String ou texto tokenizado. |
|
Date |
Tipo de data e hora que aceita formatos personalizados. |
|
IP |
Tipo de dado IP compatível com endereços nos formatos IPv4 e IPv6. |
|
Geopoint |
Coordenadas de um ponto geográfico. Formato: |
|
Vector |
Tipo vetorial. O formato é uma string de array Float32. O comprimento do array corresponde à dimensão do campo. Por exemplo, a string vetorial |
|
Tipo JSON compatível com os tipos de índice OBJECT e NESTED. |
Tipos de array e aninhados
Além dos tipos primitivos (Long, Double, Boolean, Keyword, Text, Date, Geopoint e Vector), o índice de pesquisa oferece dois tipos especiais: array e aninhado (nested). O tipo array armazena séries de dados do mesmo tipo. O tipo aninhado armazena dados com estrutura hierárquica, semelhante ao JSON. Para mais informações, consulte Tipos de array e aninhados.
Tipo Array
Tipo Nested
Colunas virtuais
Use o recurso de colunas virtuais dos índices de pesquisa para consultar novos campos e dados de novos tipos sem modificar o esquema de armazenamento ou os dados nas tabelas do Tablestore. Para mais detalhes, consulte Colunas virtuais.
Esse recurso permite mapear uma coluna da tabela para uma coluna virtual no índice de pesquisa durante a criação do índice. O tipo da coluna virtual pode diferir do tipo da coluna original na tabela. Assim, você cria uma coluna sem alterar o esquema ou os dados da tabela. Essa nova coluna pode acelerar consultas ou receber configurações de métodos de tokenização distintos.
-
Uso de diferentes tokenizadores para um campo Text
Mapeie uma única coluna de string para vários campos Text em um índice de pesquisa. Cada campo Text pode usar um tokenizador diferente para atender a diversas necessidades de negócio.
-
Aceleração de consultas
Melhore o desempenho das consultas em determinados cenários mapeando colunas para tipos diferentes, sem limpar ou reconstruir seus dados. Por exemplo, converter um tipo numérico para o tipo Keyword aumenta a performance de consultas de termo, enquanto converter um tipo string para numérico otimiza consultas de intervalo.
Mapeamentos de tipos de dados
O valor de um campo no índice de pesquisa deriva do valor do campo correspondente na tabela de dados. Os tipos de dados desses campos devem ser compatíveis. A tabela a seguir descreve os mapeamentos entre os tipos de dados dos campos nos índices de pesquisa e nas tabelas de dados.
|
Tipo de dado do campo do índice de pesquisa |
Tipo de dado do campo da tabela de dados |
|
Long |
Integer |
|
Long Array |
String |
|
Double |
Double |
|
Double Array |
String |
|
Boolean |
Boolean |
|
Boolean Array |
String |
|
Keyword |
String |
|
Keyword Array |
String |
|
Text |
String |
|
Date |
Integer, String |
|
Date Array |
String |
|
IP |
String |
|
IP Array |
String |
|
Geopoint |
String |
|
Geopoint Array |
String |
|
Vector |
String |
|
Nested |
String |
|
JSON |
String |