Schița de curs
1. Introducere în Elasticsearch
- Ce este Elasticsearch?
- Cazuri de utilizare pentru Elasticsearch
- Arhitectura Elasticsearch
- Componentele Elastic Stack (Elasticsearch, Logstash, Kibana, Beats)
- Instalarea și rularea Elasticsearch cu containere
- Explorarea API-ului REST
2. Înțelegerea Indecșilor și a Documentelor
- Documente și structură JSON
- Indeksi și organizarea datelor
- Shard-uri și replicași
- Concepte privind ciclul de viață al indecșilor
- Crearea, actualizarea și ștergerea indecșilor
- Operațiuni CRUD pentru documente
3. Scrierea interogărilor de căutare
- Prezentare generală Query DSL
- Interogări Match
- Interogări Term
- Interogări Booleane
- Interogări Range
- Căutări cu prefix, wildcard și fuzzy
- Împărțirea în pagini și sortarea
- Filtrarea versus interogarea
4. Realizarea analizei textului
- Fundamentele căutării full-text
- Analiști (Analyzers)
- Tokenizatori
- Filtre de caractere
- Filtre de tokeni
- Analiști pentru limbi străine
- Analiști personalizați
- Îmbunătățirea relevanței căutărilor
5. Definirea Măpărilor (Mappings)
- Măpări dinamice
- Măpări explicite
- Tipuri de câmpuri
- Câmpuri obiect și imbricate
- Câmpuri de tip dată și numeric
- Bune practici privind măpările
- Actualizarea sigură a măpărilor
6. Extinderea căutărilor dvs.
- Căutare multi-câmp
- Interogări multi-match
- Căutări cu frază (Phrase searches)
- Evidențierea rezultatelor căutării
- Boosting-ul căutărilor
- Interogări Function Score
- Șabloane de căutare (Search templates)
7. Înțelegerea modelului distribuit
- Arhitectura cluster-ului
- Noduri și roluri
- Shard-uri primare și replicași
- Sănătatea cluster-ului
- Distribuția datelor
- Toleranța la defecte
- Concepte privind disponibilitatea ridicată
8. Manipularea rezultatelor căutării
- Strategii de împărțire în pagini
- Filtrarea surselor (Source filtering)
- Collapse-ul câmpurilor (Field collapsing)
- Câmpuri scriptate
- Tehnici de sortare
- Evidențierea rezultatelor căutării
- Optimizarea răspunsurilor de căutare
9. Agregări și Analiză (Analytics)
- Agregări metrice
- Agregări bucket
- Agregări tip pipeline
- Calcularea statisticiilor
- Histograme
- Agregări de tip dată
- Construirea interogărilor analitice
- Performanța agregărilor
10. Gestionarea relațiilor dintre date
- Câmpuri obiect
- Documente imbricate
- Relații părinte-fi
- Strategii de denormalizare
- Alegerea modelului de date potrivit
- Interogarea datelor conexe
11. Integrarea Elasticsearch cu aplicațiile
- Integrarea API-ului REST
- Biblioteci client pentru Elasticsearch
- Indecșizarea datelor aplicației
- API-ul bulk
- API-urile de căutare
- Gestionarea erorilor
- Bune practici privind integrarea
12. Optimizarea performanței
- Strategii eficiente de indecșizare
- Optimizarea interogărilor
- Indecșizarea în loturi (Bulk indexing)
- Intervalele de reîmprospătare (Refresh intervals)
- Mecanisme de stocare temporară (Caching)
- Gestionarea memoriei
- Monitorizarea performanței
13. Monitorizare și depanare (Troubleshooting)
- Monitorizarea sănătății cluster-ului
- Statistici ale indecșilor
- Diagnostica interogărilor lente
- Probleme comune la indecșizare
- Rezolvarea problemelor de cluster
- Concepte privind backup-ul și snapshoatele
- Înregistrarea jurnalului (Logging) și diagnosticul
14. Workshop practic și sumar
- Construirea unei aplicații căutabile
- Proiectarea indecșilor și a măpărilor
- Implementarea căutării full-text
- Crearea agregărilor și a analiticii
- Optimizarea performanței căutărilor
- Revisuirea conceptelor cheie
- Întrebări și răspunsuri
- Bune practici și pași următori
Cerințe
- Experiență în dezvoltarea de software.
- Cunoștințe de bază privind linia de comandă (command line).
- Nu este necesară nicio experiență anterioară cu Elasticsearch.
Public țintă
- Dezvoltatori de software
Mărturii (7)
Multă cunoaștere.
Ireneusz - Inter Cars S.A.
Curs - Elasticsearch for Developers
Tradus de catre o masina
Formator cu cunoștințe extinse și părți de exerciții
Kamil Romankiewicz - Inter Cars S.A.
Curs - Elasticsearch for Developers
Tradus de catre o masina
- performanța mediului de instruire pregătit - exemple și teme adecvate în conformitate cu nevoi
Blazej - Kyndryl Wroclaw
Curs - Elasticsearch for Developers
Tradus de catre o masina
M-am bucurat că am primit o prezentare generală a Elasticului și am învățat multe lucruri care ar putea fi aplicate în proiectul actual în primă zi. De asemenea, m-a plăcut faptul că am trecut prin codul proiectului curent cu o revizuire a codului și am menționat îmbunătățiri sau lucruri de gândit sau de discutat în cadrul proiectului în a doua zi. Mă bucur că formarea mi-a oferit o bază solidă pentru a continua să mă aprofundez în Elasticsearch.
Mattias Hansson - Chalmers Tekniska Hogskola AB
Curs - Elasticsearch for Developers
Tradus de catre o masina
Conținutul este relevant și la punct
Qiniso Mdletshe - Quidco
Curs - Elasticsearch for Developers
Tradus de catre o masina
Realizarea exercițiilor. Mi-au plăcut foarte mult practicile.
Warren Stephen - Quidco
Curs - Elasticsearch for Developers
Tradus de catre o masina
Marcin știa exact despre ce vorbește și avea o experiență adecvată, profunză și practicală cu instrumentele. El a avut răspunsuri la toate întrebările noastre și a făcut câteva recomandări foarte puternice pe care le putem începe să implementăm în proiectele și utilizările viitoare.
Conor Glasman - Quidco
Curs - Elasticsearch for Developers
Tradus de catre o masina