Todos os produtos
Search
Central de documentação

Lindorm:Use hints para consultar dados quentes

Última atualização: Jun 28, 2026

Os SQL hints permitem controlar qual camada de armazenamento o LindormTable varre durante uma consulta SELECT. Quando sua instância do Lindorm utiliza armazenamento em camadas, os dados recentes residem no armazenamento quente e os mais antigos são arquivados no armazenamento frio. Consultar apenas o armazenamento quente evita a maior latência das varreduras no armazenamento frio. Esse recurso é útil para cargas de trabalho que precisam somente de dados recentes, como painéis em tempo real ou pipelines de alerta.

Versões aplicáveis

Os hints exigem o LindormTable 2.3.1 ou posterior.

Para verificar ou atualizar a versão do seu LindormTable, consulte Release notes of LindormTable e Upgrade the minor engine version of a Lindorm instance .

Pré-requisitos

Antes de começar, verifique se você tem:

Como funciona

Insira um comentário de hint (/*+ ... */) imediatamente após o SELECT para indicar ao LindormTable qual camada de armazenamento ler:

Hint

Comportamento

Quando usar

/*+ _l_hot_only_ */

Lê apenas o armazenamento quente

Consultas que necessitam de dados recentes e devem evitar a latência do armazenamento frio

/*+ _l_hot_only_(true) */

Lê apenas o armazenamento quente (equivalente ao anterior)

Mesma situação acima; forma explícita

/*+ _l_hot_only_(false) */

Lê todos os dados — quentes e frios (equivalente a nenhum hint)

Quando você precisa de dados históricos completos

Importante

Os hints não podem restringir consultas apenas aos dados frios. Há suporte somente para os modos de apenas dados quentes e de todos os dados.

Configurar dados de teste

Os exemplos abaixo utilizam uma tabela com retenção de versões definida como 5. Execute as instruções a seguir para criar a tabela e inserir linhas de teste com carimbos de data/hora explícitos usando o hint _l_ts_():

-- Create a test table and set the number of retained versions to 5.
CREATE TABLE t_test_versions_2 (c1 INT , c2 INT, c3 VARCHAR(50), PRIMARY KEY(c1)) WITH(VERSIONS='5');

-- Insert data with explicit timestamps.
UPSERT /*+ _l_ts_(1000)  */ INTO t_test_versions_2(c1, c3) VALUES (1, '11');
UPSERT /*+ _l_ts_(2001)  */ INTO t_test_versions_2(c1, c3) VALUES (1, '22');
UPSERT /*+ _l_ts_(1000)  */ INTO t_test_versions_2(c1, c2) VALUES (1, 1);
UPSERT /*+ _l_ts_(2001)  */ INTO t_test_versions_2(c1, c2) VALUES (2, 1);
UPSERT /*+ _l_ts_(2002)  */ INTO t_test_versions_2(c1, c2) VALUES (2, 2);
UPSERT /*+ _l_ts_(2003)  */ INTO t_test_versions_2(c1, c2) VALUES (2, 3);
UPSERT /*+ _l_ts_(2004)  */ INTO t_test_versions_2(c1, c2) VALUES (2, 4);
UPSERT /*+ _l_ts_(2005)  */ INTO t_test_versions_2(c1, c2) VALUES (2, 5);
UPSERT /*+ _l_ts_(2006)  */ INTO t_test_versions_2(c1, c2) VALUES (2, 6);

Consultar apenas o armazenamento quente

Use _l_hot_only_ ou seu equivalente _l_hot_only_(true) para limitar a varredura ao armazenamento quente. Ambas as formas retornam o mesmo resultado:

SELECT /*+ _l_hot_only_ */ * FROM t_test_versions_2 WHERE c1 IN (1, 2, 3);
SELECT /*+ _l_hot_only_(true) */ * FROM t_test_versions_2 WHERE c1 IN (1, 2, 3);

Saída esperada:

+----+----+------+
| c1 | c2 | c3   |
+----+----+------+
| 1  | 1  | 22   |
| 2  | 6  | null |
+----+----+------+

Consultar todos os dados

Use _l_hot_only_(false) para varrer explicitamente tanto o armazenamento quente quanto o frio. Isso produz o mesmo resultado que executar a consulta sem nenhum hint:

-- Both statements return the same result.
SELECT /*+ _l_hot_only_(false) */ * FROM t_test_versions_2 WHERE c1 IN (1, 2, 3);
SELECT * FROM t_test_versions_2 WHERE c1 IN (1, 2, 3);

Saída esperada:

+----+----+------+
| c1 | c2 | c3   |
+----+----+------+
| 1  | 1  | 22   |
| 2  | 6  | null |
+----+----+------+