Firma BigDotSoftware specjalizuje się we wdrożeniach i integracjach systemów wykorzystujących szeroko pojęte technologie BigData. Wychodząc naprzeciw oczekiwaniom naszych klientów przeprowadzamy także profesjonalne szkolenia z zakresu rozwiązań takich jak Hadoop, Hbase, Elasticsearch , Kafka, RabbitMQ, Redis oraz podobnych. Dzięki przeprowadzonym szkoleniom i warsztatom nasi klienci posiadający własne działy IT są w stanie samodzielnie utrzymywać i rozwijać systemy BigData.

Nasi trenerzy to doświadczeni programiści z ponad 19-letnim doświadczeniem, aktywnie pracujący z systemami BigData w lokalnych jak i w międzynarodowych projektach na zlecenia Politechniki Gdańskiej czy  prestiżowych firm jak ThomsonReuters, Energa, Nordea. Posiadają oni doświadczenie w projektowaniu, realizacji, wdrożeniach czy utrzymywaniu systemów BigData

Szkolenie może zostać przeprowadzone zarówno w języku Polskim jak i Angielskim oraz może być dostosowane do indywidualnych potrzeb i wymagań klienta.

Umiejętności zdobywane podczas kursu:

  • Umiejętność konfiguracji klastra Elasticsearch o parametrach odpowiednich dla potrzeb projektowanego systemu
  • Umiejętność praktycznego użycia Elasticsearch i integracji z istniejącym oprogramowaniem (unikanie tzw. golden hammer),
  • Umiejętność projektowania optymalnego modelu danych
  • Efektywne mechanizmy ingest i query
  • Umiejętność przetwarzania i transformowania danych
  • Umiejętność pracy z NoSQL
  • Umiejętność pracy w rozproszonych systemach
  • Umiejętność integracji SQL i NoSQL oraz optymalizacja wydajności
  • Testowanie wydajności rozproszonego systemu i odnajdywania wąskich gardeł,
  • Umiejętność wyboru gotowych na rynku narzędzi i frameworków celem optymalizacji pracy developera – użycie technologii które do tej pory nie były brane pod uwagę a z sukcesem mogą zostać wdrożone

Czas trwania

1 do 4 dni, w zależności od aktualnego doświadczenia uczestników z Elasticsearch. Na przerobienie całego konspektu szkolenia zaleca się 4 dni, ale wybrane tematy mogą być również przeprowadzone w ciągu 1 dnia

Cena

4000zł netto/dzień dla grupy do 8 osób (skontaktuj się z nami aby otrzymać dedykowaną ofertę)

Ogólny/przykładowy konspekt/elementy szkolenia

  1. Wprowadzenie
    1. Dlaczego świat ekscytuje się BigData i co to jest? – wprowadzenie w świat technologii BigData
    2. Własny DC czy Chmura – przegląd plusów i minusów w kontekście Amazon Web Services (AWS)
    3. Przegląd dostępnych technologii OpenSource BigData (t.j.: Hadoop, Hbase, Hive, Pig, Kafka, RabbitMQ, Elasticsearch itp.) – jakich produktów należy używać i kiedy, jakie są różnice między nimi, jakie są wady i zalety poszczególnych z nich
    4. Open Source vs Closed Source – dlaczego warto wybierać technologie OpenSource
    5. NoSQL vs SQL – wprowadzenie do świata NoSQL, wady i zalety, transakcyjność, systemy rozproszone
  2. Elasticsearch – podstawy
    1. Indeksy Lucene – co to jest i dlaczego mówimy o Lucene w kontekście Elasticsearch 
    2. Architektura produktu Elasticsearch 
    3. Środowisko pracy – Window vs Unix, różne wersje Javy
    4. Node, shard, replica, mappings, routing, alokacja, templates, dynamic mapping – podstawowe elementy Elasticsearch , których zrozumienie jest kluczowe
    5. Jak Elasticsearch przechowuje dane – objects vs nested objects, refresh, cache, source, store, multi fields, wersjonowanie, definiowanie kluczy, wewnętrzne struktury danych + mechanizmy cache’owania, inverted index, cache
  3. Elasticsearch – standalone instance
    1. Uruchomienie standalone instance
    2. Index, update, upsert – tworzenie i aktualizacja pojedynczych dokumentów oraz poprzez bulk
    3. Search – przegląd Query DSL
    4. Query, filter, aggregation(facets)  – podstawy zapytań NoSQL czyli jak efektywnie pytać o dane
    5. Rating, shard i formuły liczenia scoringu – TF*IDF, BM25 czy może własny?
  4. Elasticsearch – budowanie klastra
    1. Skalowalność – Vertical scaling vs Horizontal scaling
    2. Mechanizm Zen Discovery
    3. Konfiguracja nodów w klastrze (ingest/data/master/ml), dobór ilości masterów w klastrze, 
    4. Fault tolerance – odporność na awarie
    5. Optymalizacja klastra – parametry konfiguracyjne, custom allocation, tags, rack_id, zone itp.
    6. Split-brain effect, load balancing, transport client – czyli podstawowe elementy architektury o których należy pamiętać
    7. Study Case – ile klastrów chcemy mieć i jak zasilać je danymi
  5. Logstash + Beats
    1. Uruchomienie i konfiguracja produktu
    2. Transformacja danych
    3. Ingest do Elasticsearch
  6. Kibana
    1. Architektura UI w kontekście Elasticsearch – jak najlepiej zamodelować UI 
    2. Kibana (discovery, metryki, index patterns, devtools, dashboardy, canvas, APM server, machine learning, X-Pack)
  7. Elasticsearch – mechanizmy zaawansowane
    1. Query vs Ingestion – zaawansowane mechanizmy populacji danych poprzez systemy kolejkowe t.j Kafka, RabbitMQ
    2. NoSQL Query – budowanie zaawansowanych zapytań, dlaczego każde kolejne jest szybsze?
    3. Ingestion – jak efektywnie indeksować TB danych w Elasticsearch
    4. Zaawansowane konfiguracja klastra Elasticsearch – przegląd i wyjaśnienie parametrów konfiguracyjnych
    5. Indexer, data storage czy reporting – jak dostosować klaster do naszych potrzeb,
    6. Tokenizer, Analyser, Filter, Char filter – jak budować i testować zaawansowane analizatory i tokenizery dokumentów
    7. Machine Learning – detekcja anomalii
    8. Percolate – reverse search, system alertów,
    9. Suggesters, spell corrections, highlighting
    10. Search – profile, explain, custom scoring, effective pagination 
    11. Monitorowanie klastra  – zapoznanie z Kibaną oraz alternatywnymi podejściami,
    12. Testowanie klastra pod kątem wydajności  – optymalizacja wydajności i profilowanie
    13. Pluginy – jakie są dostępne i jak tworzyć własne(plusy i minusy)
    14. X-Pack – opis możliwości 
    15. Security 
  8.  Budowanie UI
    1. Architektura UI w kontekście Elasticsearch – jak najlepiej zamodelować UI
    2. Użycie gotowych UI – wady i zalety
    3. Kibana – przegląd możliwości
    4. Bezpieczne wyciąganie danych z klastra – czyli jak nie dopuścić do stanu „red”
  9. Codzienność z Elasticsearch 
    1. Integracja Elasticsearch z istniejącymi systemami,
    2. Typowe problemy utrzymania klastra, synchronizacji, skalowalności – dyskusja, podzielenie się doświadczeniami z wymagających projektów BigData,
    3. Backupy
    4. Kierunki rozwoju Elasticsearch i kompatybilność wsteczna – a własciwie jej brak, czyli jak sobie z tym radzić (dla przykładu: TransportClient vs RESTclient, plugins vs no-plugins itp.)
  10. Rozszerzony program warsztatów

Zachęcamy do kontaktu celem otrzymania szczegółowej oferty.