Tous les produits
Search
Centre de documentation

Lindorm:Utiliser des hints pour interroger les données chaudes

Dernière mise à jour :Aug 11, 2026

Les hints SQL vous permettent de contrôler la couche de stockage analysée par LindormTable lors d'une requête SELECT. Lorsque votre instance Lindorm utilise un stockage hiérarchisé, les données récentes résident dans le stockage chaud et les données plus anciennes sont archivées dans le stockage froid. Limiter l'interrogation au stockage chaud évite la latence plus élevée liée aux analyses du stockage froid. Cette approche est utile pour les charges de travail ne nécessitant que des données récentes, comme les tableaux de bord en temps réel ou les pipelines d'alerte.

Versions applicables

L'utilisation des hints requiert LindormTable 2.3.1 ou une version ultérieure.

Pour vérifier ou mettre à niveau la version de votre LindormTable, consultez les Notes de version de LindormTable ainsi que la procédure de Mise à niveau de la version mineure du moteur d'une instance Lindorm .

Prérequis

Avant de commencer, assurez-vous d'avoir :

Fonctionnement

Insérez un commentaire hint (/*+ ... */) immédiatement après le mot-clé SELECT pour indiquer à LindormTable la couche de stockage à lire :

Hint Comportement Cas d'utilisation
/*+ _l_hot_only_ */ Lit uniquement le stockage chaud Requêtes nécessitant des données récentes et devant éviter la latence du stockage froid
/*+ _l_hot_only_(true) */ Lit uniquement le stockage chaud (équivalent au précédent) Identique au cas précédent ; forme explicite
/*+ _l_hot_only_(false) */ Lit toutes les données — chaudes et froides (équivalent à l'absence de hint) Lorsqu'il est nécessaire d'accéder à l'historique complet des données
Important

Les hints ne permettent pas de restreindre les requêtes aux seules données froides. Seuls les modes « stockage chaud uniquement » et « toutes les données » sont pris en charge.

Configurer les données de test

Les exemples ci-dessous s'appuient sur une table dont la rétention des versions est définie à 5. Exécutez les instructions suivantes pour créer la table et insérer des lignes de test avec des horodatages explicites, en utilisant le 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);

Interroger uniquement le stockage chaud

Utilisez _l_hot_only_ ou sa forme équivalente _l_hot_only_(true) pour limiter l'analyse au stockage chaud. Ces deux formes renvoient le même résultat :

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);

Résultat attendu :

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

Interroger toutes les données

Utilisez _l_hot_only_(false) pour analyser explicitement les stockages chaud et froid. Cette opération produit le même résultat que l'exécution de la requête sans aucun 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);

Résultat attendu :

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