Tous les produits
Search
Centre de documentation

Lindorm:FAQ sur la séparation des données chaudes et froides

Dernière mise à jour :Aug 11, 2026

Cette rubrique répond aux questions fréquentes concernant la fonctionnalité de séparation des données chaudes et froides dans LindormTable.

À quel moment les données deviennent-elles froides ?

Lindorm archive les données froides de manière asynchrone via un processus de compaction. L'intervalle d'archivage dépend de votre limite de séparation entre données chaudes et froides :

Paramètre Valeur
Intervalle par défaut La moitié de la limite de séparation des données chaudes et froides
Intervalle minimum 1 jour
Intervalle maximum La moitié de la période de major compaction
Période de major compaction par défaut 20 jours

Par exemple, si votre limite de séparation des données chaudes et froides est de 3 jours, une compaction s'exécute toutes les 1,5 journées. Si la limite est d'un jour, elle s'exécute une fois par jour.

Puis-je déclencher manuellement une compaction ?

Oui. Exécutez major_compact 'tableName' dans un shell HBase pour forcer une compaction et archiver immédiatement les données froides vers le stockage froid.

Important

La commande major_compact 'tableName' augmente la charge d'E/S. Évitez de l'exécuter fréquemment.

Pourquoi les données ne sont-elles pas froides après une compaction ?

Cela peut se produire si les données écrites n'ont pas encore été vidées sur le disque. Exécutez d'abord une opération flush pour persister les données en mémoire sur le disque, puis lancez une compaction pour les déplacer vers le stockage froid. Pour déclencher la compaction :

  • Dans le shell HBase, exécutez la commande major_compact.

  • Dans Lindorm-cli, utilisez la syntaxe ALTER TABLE.

Pourquoi l'archivage des données froides est-il lent ?

Arriéré de compactations. Si les compactations s'accumulent plus rapidement qu'elles ne se terminent, l'archivage des données chaudes vers le stockage froid ralentit. Vérifiez la métrique Compaction Queue Size(count) sur la page Instance Monitoring sous Table Metrics-Cluster Load. Si la valeur reste constamment supérieure à 0 et augmente, vous avez un arriéré. Pour résoudre ce problème, augmentez la capacité ou mettez à niveau votre instance pour accroître les ressources CPU. Pour plus de détails, consultez la section Afficher les informations de surveillance.

Version obsolète de LindormTable. Les versions plus récentes archivent les données froides plus rapidement. Vérifiez votre version actuelle dans les Notes de version de LindormTable, puis suivez les étapes de la section Mise à jour de version mineure pour effectuer la mise à niveau.

Si aucune de ces solutions ne résout le problème, contactez le support technique.

Les données restent-elles froides après une mise à jour (colonne temporelle personnalisée) ?

Cela dépend du fait que la mise à jour modifie ou non la colonne temporelle personnalisée.

La mise à jour affecte-t-elle la colonne temporelle ? Résultat
Non Les données restent froides
Oui Le système réévalue le statut chaud/froid en fonction de la nouvelle valeur

Exemple : Une table possède des colonnes de clé primaire p1 et p2, ainsi que des colonnes hors clé primaire c1 et c2. Une ligne contient les valeurs p1=row1, p2=2023-01-28, c1="c1" et c2="c2". La limite de séparation des données chaudes et froides est d'un jour et la date actuelle est le 2023-01-30, donc cette ligne est froide.

  • Mise à jour de c1 ou c2 : la ligne reste froide.

  • Mise à jour de p2 à 2023-01-30 : la ligne devient chaude, puis redevient froide le 1er février 2023.

Pour conserver les données froides : Évitez de mettre à jour la colonne temporelle personnalisée sur les lignes que vous souhaitez garder archivées.

Les données sont-elles séparées sans valeur temporelle personnalisée ?

Non. Sans valeur dans la colonne temporelle personnalisée, le système n'a aucune base pour classer la ligne, qui reste donc toujours dans le stockage chaud.

Les données restent-elles froides après une mise à jour (basée sur l'horodatage) ?

Non. Toute mise à jour des données basées sur l'horodatage actualise leur horodatage, ce qui les rend à nouveau chaudes.

Pourquoi les requêtes sur les données chaudes renvoient-elles des données froides ?

L'archivage des données froides est périodique, pas instantané. Lorsque vous interrogez avec le paramètre HOT_ONLY ou l'indication _l_hot_only_, certaines données ayant franchi la limite de séparation peuvent encore se trouver physiquement dans le stockage chaud et être incluses dans les résultats.

Ajoutez un filtre de plage temporelle pour restreindre les résultats à la fenêtre souhaitée :

-- Set _l_ts_min_ (start time) and _l_ts_max_ (end time) using consistent units.
SELECT /*+ _l_hot_only_(true), _l_ts_min_(1000), _l_ts_max_(2001) */ * FROM test WHERE p1>1;

Pourquoi les requêtes sur les données chaudes avec HOT_ONLY expirent-elles ?

Cela se produit généralement juste après une migration de données ou après l'activation de la séparation des données chaudes et froides sur une table existante. Le système n'a peut-être pas encore exécuté de passe d'archivage, laissant un grand volume de données froides dans le stockage chaud. Cela augmente le total des données analysées et provoque des expirations de délai.

Exécutez une major compaction sur la table pour forcer l'archivage. Pour la syntaxe, consultez la section ALTER TABLE.

Avec HOT_ONLY ou _l_hot_only_(true), pourquoi les requêtes sur l'index et la table principale diffèrent-elles ?

La table principale et la table d'index ont chacune des processus d'archivage indépendants qui s'exécutent selon des calendriers périodiques distincts. À tout moment donné, la quantité de données froides restantes dans le stockage chaud peut différer entre les deux tables, ce qui entraîne des incohérences dans les résultats des requêtes.

Ajoutez un filtre de plage temporelle à vos conditions de requête pour aligner les résultats sur les deux tables.

Pourquoi une compaction peut-elle se déclencher immédiatement après l'activation de la séparation ?

Le système vérifie si l'âge du fichier de données le plus ancien dépasse la période d'archivage configurée. Si c'est le cas, une compaction s'exécute immédiatement. Que cela se produise tout de suite dépend de l'ancienneté de votre fichier le plus ancien par rapport à la période d'archivage que vous avez configurée.

Puis-je interroger les données froides avec un scan ?

Oui. Spécifiez une plage temporelle dans votre opération Scan pour récupérer les données froides.

Les types de stockage optimisés pour la capacité et d'archive ont des IOPS en lecture relativement faibles, donc les requêtes Scan sur les données froides sont plus lentes que sur le stockage chaud.