Interroger des données à froid avec des fenêtres à chaud
Les fenêtres chaudes vous permettent d’interroger efficacement les données froides sans avoir besoin d’exporter les données ou d’utiliser d’autres outils. Utilisez des fenêtres chaudes lorsque la taille des données froides est importante et que les données concernées viennent du passé. Les fenêtres chaudes sont définies dans la stratégie de cache.
Azure Data Explorer stocke ses données dans un stockage à long terme fiable et met en cache une partie de ces données sur les nœuds du cluster. La stratégie de cache gouverne les données qui sont mises en cache. Les données mises en cache sont considérées chaudes, tandis que les autres données sont considérées froides.
Pour interroger les données froides, Azure Data Explorer procède à une étape de chargement qui demande d’accéder à un niveau de stockage avec une latence nettement supérieure à celle du disque local. Lorsque la requête est limitée à une petite fenêtre temporelle, souvent appelée « requête ponctuelle », la quantité de données à récupérer est généralement petite et la requête est rapide. Par exemple, les analyses d’investigation interrogeant la télémétrie d’un jour donné appartiennent à cette catégorie. L’impact sur la durée des requêtes dépend de la taille des données extraites du stockage et peut être significatif. Si vous analysez une grande quantité de données froides, les performances des requêtes peuvent tirer parti de l’utilisation des fenêtres chaudes.
Ce document vous montre comment utiliser des fenêtres chaudes pour interroger des données froides.
Prérequis
- Si vous n’avez pas d’abonnement Azure, créez un compte Azure gratuit avant de commencer.
- Créez un cluster et une base de données Azure Data Explorer.
- Ingérez les données dans votre cluster avec l’une des méthodes décrites dans Vue d’ensemble de l’ingestion de données Azure Data Explorer.
Configurer la mise à l’échelle automatique sur le cluster
Après avoir modifié la stratégie de cache, le cluster met automatiquement en cache les données concernées sur ses disques. Vous devrez mettre à l’échelle le cluster pour prendre en charge le disque supplémentaire nécessaire à la nouvelle définition du cache. Nous recommandons de configurer le cluster pour qu’il utilise les paramètres de mise à l’échelle automatique optimisée.
Dans le Portail Azure, accédez à votre ressource de cluster Azure Data Explorer. Sous Paramètres, sélectionnez Scale-out.
Dans la fenêtre Scale-out, sélectionnez Mise à l’échelle automatique optimisée.
Sélectionnez un nombre minimal d’instances et un nombre maximal d’instances. La mise à l’échelle automatique du cluster est comprise entre ces deux nombres, en fonction du chargement.
Cliquez sur Enregistrer.
À présent, vous pouvez vous attendre à des performances optimales lors de l’utilisation des fenêtres chaudes.
Définir des fenêtres chaudes
Les fenêtres chaudes font partie de la syntaxe des commandes de stratégie de cache et sont définies avec la commande .alter policy caching
.
Remarque
L’opération peut prendre jusqu’à une heure pour mettre entièrement à jour le cache du disque du cluster en fonction de la définition de la stratégie de cache mise à jour.
Prenez note de la stratégie de mise en cache initiale en utilisant la commande
.show policy caching
..show table MyDatabase.MyTable policy caching
Modifiez la stratégie de cache à l’aide de la syntaxe suivante. Plusieurs fenêtres chaudes peuvent être définies pour une base de données unique ou une table unique.
.alter <entity_type> <database_or_table_or_materialized-view_name> policy caching hot = <timespan> [, hot_window = datetime(*from*) .. datetime(*to*)] [, hot_window = datetime(*from*) .. datetime(*to*)] ...
Où :
from
: Heure de début de la fenêtre chaude (date et heure)to
: Heure de fin de la fenêtre chaude (date et heure)
Par exemple, les requêtes exécutées avec les paramètres suivants examinent les 14 derniers jours de données, sur les données conservées pendant trois ans.
.alter table MyTable policy caching hot = 14d, hot_window = datetime(2021-01-01) .. datetime(2021-02-01), hot_window = datetime(2021-04-01) .. datetime(2021-05-01)
Exécuter une requête
Exécutez la ou les requêtes de votre choix sur la période spécifiée dans les fenêtres chaudes.
Rétablir les paramètres
- Utilisez les paramètres de cache d’origine récupérés ci-dessus dans Définir des fenêtres chaudes.
- Rétablissez les paramètres d’origine de la stratégie de cache en utilisant la commande
.alter policy caching
.
Étant donné que vous avez configuré la mise à l’échelle automatique optimisée pour ce cluster, celui-ci sera réduit à sa taille d’origine.