Splunk - Optimisation de la recherche

Splunk inclut déjà les fonctionnalités d'optimisation, analyse et traite vos recherches pour une efficacité maximale. Cette efficacité est principalement obtenue grâce aux deux objectifs d'optimisation suivants -

  • Early Filtering- Ces optimisations filtrent les résultats très tôt afin que la quantité de données traitées soit réduite le plus tôt possible pendant le processus de recherche. Ce filtre précoce évite les recherches inutiles et les calculs d'évaluation pour les événements qui ne font pas partie des résultats de recherche finaux.

  • Parallel Processing - Les optimisations intégrées peuvent réorganiser le traitement de la recherche, de sorte que le plus de commandes possible soient exécutées en parallèle sur les indexeurs avant d'envoyer les résultats de la recherche à la tête de recherche pour un traitement final.

Analyse des optimisations de recherche

Splunk nous a donné des outils pour analyser le fonctionnement de l'optimisation de la recherche. Ces outils nous aident à comprendre comment les conditions de filtrage sont utilisées et quelle est la séquence de ces étapes d'optimisation. Il nous donne également le coût des différentes étapes des opérations de recherche.

Exemple

Envisagez une opération de recherche pour trouver les événements qui contiennent les mots: échec, échec ou mot de passe. Lorsque nous mettons cette requête de recherche dans la zone de recherche, les optimiseurs intégrés agissent automatiquement pour décider du chemin de la recherche. Nous pouvons vérifier combien de temps la recherche a pris pour renvoyer un nombre spécifique de résultats de recherche et si nécessaire, nous pouvons vérifier chaque étape de l'optimisation ainsi que le coût qui y est associé.

Nous suivons le chemin de Search → Job → Inspect Job pour obtenir ces détails comme indiqué ci-dessous -

L'écran suivant donne des détails sur l'optimisation qui a eu lieu pour la requête ci-dessus. Ici, nous devons noter le nombre d'événements et le temps nécessaire pour renvoyer le résultat.

Désactiver l'optimisation

Nous pouvons également désactiver l'optimisation intégrée et remarquer la différence dans le temps nécessaire au résultat de la recherche. Le résultat peut ou non être meilleur que la recherche intégrée. Dans le cas où c'est mieux, nous pouvons toujours choisir cette option pour désactiver l'optimisation uniquement pour cette recherche spécifique.

Dans le diagramme ci-dessous, nous utilisons la commande Aucune optimisation présentée comme noop dans la requête de recherche.

L'écran suivant nous donne le résultat de l'utilisation d'aucune optimisation. Pour cette requête donnée, les résultats sont plus rapides sans utiliser les optimisations intégrées.