Splunk - optymalizacja wyszukiwania

Splunk zawiera już funkcje optymalizacji, analizuje i przetwarza Twoje wyszukiwania w celu uzyskania maksymalnej wydajności. Tę efektywność osiąga się głównie poprzez dwa następujące cele optymalizacji -

  • Early Filtering- Te optymalizacje bardzo wcześnie filtrują wyniki, dzięki czemu ilość przetwarzanych danych jest zmniejszana na jak najwcześniejszym etapie procesu wyszukiwania. Ten wczesny filtr pozwala uniknąć niepotrzebnego wyszukiwania i obliczeń oceny zdarzeń, które nie są częścią końcowych wyników wyszukiwania.

  • Parallel Processing - Wbudowane optymalizacje mogą zmienić kolejność przetwarzania wyszukiwania, tak aby jak najwięcej poleceń było uruchamianych równolegle na indeksatorach przed wysłaniem wyników wyszukiwania do głowicy wyszukiwania w celu ostatecznego przetworzenia.

Analiza optymalizacji wyszukiwania

Splunk dał nam narzędzia do analizy działania optymalizacji wyszukiwania. Te narzędzia pomagają nam dowiedzieć się, jak używane są warunki filtrowania i jaka jest kolejność tych kroków optymalizacji. Podaje nam również koszt różnych kroków związanych z operacjami wyszukiwania.

Przykład

Rozważ operację wyszukiwania, aby znaleźć zdarzenia zawierające słowa: niepowodzenie, niepowodzenie lub hasło. Kiedy umieścimy to zapytanie w polu wyszukiwania, wbudowane optymalizatory działają automatycznie, decydując o ścieżce wyszukiwania. Możemy zweryfikować, ile czasu zajęło wyszukiwanie, aby zwrócić określoną liczbę wyników wyszukiwania, aw razie potrzeby przejść do sprawdzenia każdego kroku optymalizacji wraz z kosztami z nią związanymi.

Podążamy ścieżką Search → Job → Inspect Job aby uzyskać te szczegóły, jak pokazano poniżej -

Następny ekran zawiera szczegóły optymalizacji, która wystąpiła w przypadku powyższego zapytania. Tutaj musimy zanotować liczbę zdarzeń i czas potrzebny do zwrócenia wyniku.

Wyłączanie optymalizacji

Możemy też wyłączyć wbudowaną optymalizację i zauważyć różnicę w czasie potrzebnym na wynik wyszukiwania. Wynik może, ale nie musi, być lepszy niż wbudowane wyszukiwanie. W przypadku, gdyby było lepiej, zawsze możemy wybrać tę opcję wyłączenia optymalizacji tylko dla tego konkretnego wyszukiwania.

Na poniższym diagramie używamy polecenia No Optimization przedstawionego jako noop w zapytaniu wyszukiwania.

Na następnym ekranie widać wynik braku optymalizacji. W przypadku tego zapytania wyniki są szybsze bez użycia wbudowanych optymalizacji.