Maison > Java > javaDidacticiel > En savoir plus sur la technologie de mise en cache Druid

En savoir plus sur la technologie de mise en cache Druid

WBOY
Libérer: 2023-06-21 14:13:19
original
1138 Les gens l'ont consulté

Druid est une technologie de stockage de données distribuée open source pour l'analyse de données en temps réel. Elle présente les caractéristiques de hautes performances, de faible latence et d'évolutivité. Afin d'améliorer encore les performances et la fiabilité de Druid, l'équipe de développement de Druid a développé une technologie de mise en cache. Cet article présente principalement les connaissances pertinentes sur la mise en cache Druid.

1. Présentation du cache Druid

Le cache Druid est divisé en deux types : l'un est le cache de résultats sur le courtier et l'autre est le cache de données sur le nœud historique. Le rôle de la mise en cache est principalement de réduire le temps nécessaire à Druid pour interroger les données et de réduire la charge des requêtes.

  1. Cache de résultats sur Broker

Le cache de résultats sur Broker est le cache des résultats des requêtes. Une fois les résultats mis en cache, les requêtes suivantes peuvent être obtenues directement à partir du cache. Le cache des résultats est stocké sur le disque local du courtier et le cycle de vie des résultats de la requête est configurable et dure 5 minutes par défaut. La mise en cache des requêtes est généralement utilisée dans les scénarios nécessitant une vitesse de réponse élevée aux requêtes.

  1. Cache de données sur le nœud historique

Le cache de données sur le nœud historique est un cache de blocs de données. Le nœud historique est responsable du stockage des blocs de données. Lorsque le nœud historique reçoit une demande de requête, si le bloc de données interrogé est déjà dans le cache local, le nœud historique lit le bloc de données directement à partir du cache et renvoie le résultat. Si le bloc de données n'est pas dans le cache, le nœud historique doit obtenir le bloc de données auprès d'autres nœuds du cluster ou de la source de données et le mettre en cache. La mise en cache des données est l'une des fonctionnalités les plus importantes de Druid et peut considérablement améliorer les performances des requêtes et la vitesse de réponse dans de nombreux scénarios.

2. Comment utiliser le cache Druid

Vous devez faire attention aux points suivants lors de l'utilisation du cache dans Druid :

  1. Activer la mise en cache dans les requêtes

Druid n'active pas la mise en cache par défaut et vous devez le spécifier explicitement. le cache lors de l'interrogation. Lors d'une requête, vous pouvez activer la mise en cache des résultats ou la mise en cache des blocs de données en définissant les paramètres correspondants. Les paramètres de requête sont les suivants :

(1) useResultCache : défini sur true pour activer la mise en cache des résultats, la valeur par défaut est false ;

(2) useCache : défini sur true pour activer la mise en cache des blocs de données, la valeur par défaut est false ;

  1. Configurer le cache

Le cache de Druid est configurable. Les utilisateurs peuvent définir la taille du cache, le cycle de vie et d'autres paramètres en fonction de leurs besoins réels. Les paramètres de configuration du cache sont les suivants :

(1) QueryCacheSize : la taille maximale du cache de résultats, la valeur par défaut est 500 Mo

(2) segmentQueryCacheSize : la taille maximale du cache de blocs de données, la valeur par défaut est 0 ;

(3) resultCacheMaxSizeBytes : single La taille maximale du cache des résultats de la requête, la valeur par défaut est de 10485760 octets (10 Mo)

(4) resultCacheExpire : le cycle de vie du cache des résultats de la requête, la valeur par défaut est de 5 minutes.

3. Optimisation du cache

L'optimisation du cache Druid comprend principalement les points suivants :

  1. Stratégie de suppression du cache

Lorsque le cache atteint la capacité maximale ou remplit certaines conditions, une partie du cache doit être vidée. Par défaut, le cache Druid efface certains caches expirés pour libérer plus d'espace. De plus, les utilisateurs peuvent définir leurs propres stratégies de compensation et mettre en œuvre les interfaces correspondantes.

  1. Définissez la taille du cache de manière appropriée

Le réglage de la taille du cache affecte directement la capacité de stockage et l'efficacité du cache. Si la taille du cache est trop petite, le cache ne pourra pas stocker suffisamment de blocs de données ou de résultats de requêtes, affectant ainsi les performances des requêtes Druid. Si la taille du cache est trop grande, trop de ressources mémoire seront occupées, ce qui entraînera une augmentation de la taille du cache. en performances de requête réduites. Par conséquent, il doit être ajusté en fonction du scénario réel pour obtenir des performances optimales.

  1. Définissez le cycle de vie du cache de manière appropriée

Un cycle de vie du cache trop long empêchera les ressources mémoire occupées par le cache d'être libérées pendant une longue période, ce qui affectera également les performances des requêtes Druid ; En bref, cela entraînera une diminution du taux de réussite du cache, ce qui affectera également les performances des requêtes Druid. Par conséquent, le cycle de vie du cache doit être ajusté en fonction des scénarios réels pour obtenir des performances optimales.

Résumé :

La mise en cache Druid est un moyen important d'optimiser les performances des requêtes Druid. La mise en cache des résultats et la mise en cache des blocs de données présentent chacune des avantages et des inconvénients différents, et les utilisateurs doivent choisir la méthode de mise en cache appropriée en fonction de scénarios spécifiques. Lorsque vous utilisez le cache Druid, vous devez prêter attention à l'activation et à la configuration du cache, puis l'ajuster et l'optimiser en fonction des scénarios réels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal