| Tytuł: | Elasticsearch - architektura i zagadnienia zaawansowane |
| Kod: | BigDataML-elastic |
| Kategoria: | BigData, streaming i Machine Learning |
| Forma: | 30% wykłady / 70 % warsztaty |
| Czas trwania: | 3 dni |
| Odbiorcy: | architekci, developerzy |
| Zapisy: |
Indywidualne zamówienie i dopasowanie dla grupy. |
| Logistyka: |
W siedzibie klienta lub w innym dowolnym miejscu. |
Szkolenie ma na celu poszerzenie wiedzy na temat technologii wyszukiwania pełnotekstowego z wykorzystaniem Elasticsearch oraz dobór właściwej architektury danych ze szczególnym uwzględnieniem modelowania danych dostosowanych do potrzeb. Dodatkowym atutem szkolenia jest część administracyjna związana z konfiguracją, utrzymaniem, monitoringiem i skalowaniem Elasticsearch.
Będzie ona niezwykle cenna dla osób zajmujących się administracją systemów oraz DevOps-ów.
W trakcie szkolenia omawiane są również typowe problemy, z którymi na co dzień spotykają się użytkownicy. Owe problemy to zbiór przepisów zbieranych od 2011 roku, czyli praktycznie od początku istnienia produktu Elasticsearch. Odniesienie do źródeł problemów, a nie tylko sposobów ich “łatania” pozwoli na zdobycie solidnych fundamentów do analizy tych które nie zostaną omówione w trakcie szkolenia.
Wyróżniki szkolenia
- Sprawdzone receptury
- Tuning wydajności
- Integracja z innymi systemami
Program Szkolenia
Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.-
Architektura- Wprowadzenie do skalowalnych baz danych NoSQL
- Wyzwania wynikające ze stosowania baz rozproszonych
- Eventual consistency i teoria CAP
- Zarządzanie infrastrukturą wielowęzłową
- Problemy sieciowe
- Rozdwojenie jaźni (split-brain)
- Eventual consistency i teoria CAP
- Wprowadzenie do skalowalnych baz danych NoSQL
-
Sposoby modelowania w dokumentowych bazach danych- Płaskie agregaty
- Zagnieżdżone dokumenty
- Miękkie relacje pomiędzy encjami
- Płaskie agregaty
-
Wprowadzenie do wyszukiwania pełnotekstowego (full-text search)- Algorytmy stosowane w wyszukiwaniu pełnotekstowym
- Możliwości rozwiązań umożliwiających FTS
- Wyszukiwanie za pomocą jednego pola
- Uwzględnianie literówek (fuziness)
- Pomijanie nieznaczących znaków
- Zakreślanie pasujących fragmentów tekstu (highlighting)
- Wyszukiwanie za pomocą jednego pola
- Algorytmy stosowane w wyszukiwaniu pełnotekstowym
-
Dlaczego Elasticsearch?- Omówienie alternatywnych rozwiązań i porównanie możliwości
- Ekosystem Elastic Stack
- Omówienie alternatywnych rozwiązań i porównanie możliwości
-
Korzystanie z Elasticsearch- Instalacja i konfiguracja Elasticsearch
- Metody modyfikacja dokumentów
- Indeksowanie
- Aktualizacja
- Usuwanie
- Reindeksacja danych
- Indeksowanie
- Wyszukiwanie danych
- Komunikacja z poziomu aplikacji
- Wady i zalety wykorzystania Spring Data w warstwie dostępu do danych Elasticsearch
- Testy jednostkowe i integracyjne mechanizmu wyszukiwania
- Instalacja i konfiguracja Elasticsearch
-
Modelowanie danych w Elasticsearch- Dobór właściwej architektury składowania danych do problemu
- Przechowywanie danych w jednym indeksie
- Rozbicie danych pomiędzy indeksami
- Rozbicie danych pomiędzy shardami
- Przechowywanie danych określonych czasem (time-series)
- Przechowywanie danych w jednym indeksie
- Dynamiczne tworzenie struktur vs. statyczna kontrola typów
- Zaawansowane podejście do analizy danych tekstowych (analizatory tekstu)
- Dobór właściwej architektury składowania danych do problemu
-
Zaawansowane wyszukiwanie z użyciem Elasticsearch- Omówienie różnych sposobów implementacji mechanizmów Quick search
- Agregacja danych
- Kategoryzacja dokumentów na przykładzie Percolator API
- Omówienie różnych sposobów implementacji mechanizmów Quick search
-
Performance tuning- Konfiguracja Elasticsearch pod kątem wymagań stawianych przed systemem
- Co robić, gdy indeksowanie jest zbyt wolne?
- Jak radzić sobie ze zbyt wolnymi zapytaniami?
- Modyfikacja architektury klastra celu zwiększenia wydajności
- Konfiguracja Elasticsearch pod kątem wymagań stawianych przed systemem
-
Integracja Elasticsearch z obecną architekturą- ELK, jak podstawa szybkiej integracji z działającym systemem
- Rozwój funkcjonalności istniejących systemów poprzez implementację wyszukiwania pełnotekstowego
- Elasticsearch jako jedyne źródło danych aplikacji
- Metody integracji z innymi rozwiązaniami składowania danych
- ELK, jak podstawa szybkiej integracji z działającym systemem
-
Utrzymanie i rozwój infrastruktury klastra Elasticsearch- Diagnozowanie typowych problemów
- Długo trwające zapytania
- Rażący spadek wydajności usługi
- Rozszczepienie klastra (split-brain) oraz niepożądane złączenie środowiska testowego i produkcyjnego
- Konflikt typów w atrybutach dokumentów
- Niepoprawne wyszukiwanie danych z powodu błędnej instalacji/konfiguracji klastra
- Odrzucanie zapytań z powodu zbyt dużego obciążenia
- Długo trwające zapytania
- Metody zabezpieczania klastra
- Najlepsze metody aktualizacji oprogramowania
- Najważniejsze narzędzia przydatne w codziennej pracy
- Head
- Kopf
- Sense
- Marvel
- Curator
- Head
- Monitorowanie klastra
- Diagnozowanie typowych problemów
Pobierz program w formacie PDF