Szkolenie dostępne na zamówienie

Bazy danych NoSQL - MongoDB

Otwarty, nierelacyjny system zarządzania bazą danych typu dokumentowego

3350 PLN+23% VAT (4120 PLN brutto / 1 os.)

Czas trwania szkolenia:4 dni (32h)

Poziom zaawansowania:

Kod kursu:MONGODB

mongonosqlmongodb

Dostępne terminy

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja
Brak dostępnych terminów

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Dostępne terminy

Interesują Cię inne terminy?

Bazy danych NoSQL - MongoDB

Cele szkolenia

  • Zdobycie specjalistycznej wiedzy z zakresu MongoDB - od projektowania modelu danych, poprzez język zapytań, aż po tworzenie klastrów z zastosowaniem technik replikacji oraz shardingu

  • Praktyczne wykorzystanie najważniejszych funkcjonalności oraz mechanik MongoDB

  • Poznanie sposobów na tworzenie wydajnych rozwiązań opartych o MongoDB


Dla kogo?

  • Szkolenie kierowane do programistów, architektów oraz administratorów, którzy chcą tworzyć lub utrzymywać systemy oparte MongoDB

  • Adresatami szkolenia są w szczególności osoby, dla których wydajność opracowywanych rozwiązań oraz wolumen przetwarzanych danych ma wysoki priorytet

  • Szkolenie kierowane do osób zajmujących się obecnie tworzeniem relacyjnych baz danych, które chcą uzupełnić swoją wiedzę o technologie alternatywne


Zalety

  • Program szkolenia obejmuje niemal wszystkie funkcjonalności dostępne w ramach MongoDB

  • Omówienie niestandardowych problemów oraz ograniczeń, które mogą występować w trakcie wdrożenia produkcyjnego bazy MongoDB

  • Szkolenie skupia się zarówno na tworzeniu prostych architektur, złożonych z jednej instancji, jak i realizacji złożonych klastrów

  • Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań

  • Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką

  • Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how


Wymagania

  • Podstawowa znajomość teorii baz danych

  • Podstawowa znajomość formatu JSON

  • Podstawowa znajomość języka JavaScript


W cenie otrzymasz:

  • Materiały szkoleniowe

  • Certyfikat ukończenia szkolenia

  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program

Pobierz program w PDF

Wstęp do MongoDB

  • Wprowadzenie do baz danych NoSQL

  • Przyczyny powstania baz nierelacyjnych

  • Cechy MongoDB

  • Zalety oraz wady MongoDB

  • Technologie i rozwiązania powiązane z MongoDB

  • Korzystanie z Mongo Shell oraz Robo 3T

Uruchamianie i konfiguracja MongoDB

  • Uruchamianie serwera, parametry startowe

  • Obsługa konsoli klienta

  • Odczyt konfiguracji z pliku

  • Używanie zewnętrznych źródeł konfiguracji (REST/EXEC)

Podstawowe zapytania oraz struktura danych

  • Typy przechowywanych danych

  • Insert

  • Save

  • Remove

  • Update

  • Find/FindOne

  • Rola i właściwości kursora wyniku zapytania

  • Mechanizm projekcji danych

  • Sortowanie, skip, limit

  • Selektory zapytań

  • Tworzenie warunków logicznych

Zaawansowane zapytania

  • $exists

  • Dynamiczne zapytania z wykorzystaniem $expr oraz $where

  • Obsługa wyrażeń regularnych za pomocą $regex

  • Operacje na tablicach oraz setach

  • FindAndModify oraz operator $inc

  • Operator pozycji oraz ArrayFilter

  • Dobre praktyki wydajności tworzonych zapytań

Walidacja dokumentów

  • Tworzenie oraz modyfikacja prostych walidatorów

  • Poziomy walidacji

  • Akcje walidacji

  • Walidacja z wykorzystaniem JSON Schema

  • Dodatkowe opcje

Aggregation Framework

  • Aggregation Pipeline

  • Struktura zapytania agregującego

  • Operatory agregacji

  • Wybrane akumulatory grupowania

  • Rozbijanie tablic za pomocą $unwind

  • Multioperacje z wykorzystaniem $facet

  • Łączenie danych z różnych kolekcji za pomocą $lookup

  • Ograniczenia mechanizmu agregacji

MapReduce

  • Czym jest MapReduce?

  • Struktura zapytania MapReduce

  • Funkcja mapująca

  • Funkcja redukująca

  • Funkcja finalizująca

Modelowanie danych

  • Dobre praktyki projektowania modeli w MongoDB

  • Wady i zalety modeli zagnieżdżonych

  • Rodzaje oraz sposób implementacji relacji

  • Często popełniane błędy

GridFS

  • Przechowywanie danych binarnych w MongoDB

  • Metadane i kawałki

  • Użycie mongofiles

  • Przesłanki do używania GridFS

Storage Engines

  • Omówienie wewnętrznych silników przechowywania plików dostępnych z MongoDB

  • Cechy, zalety oraz wady silnika MMAPv1

  • Cechy, zalety oraz wady silnika WiredTiger

  • Mechanizm zapisu WiredTiger (snapshot, checkpoint)

  • Porównanie zużycia pamięci RAM przez poszczególne silniki

Indeksy w MongoDB

  • Definiowanie indeksów

  • Indeksy proste i złożone

  • Użycie indeksów na zagnieżdżonych dokumentach

  • Indeksy multikey (tablicowe)

  • Indeksy częściowe

  • Indeksy wildcard

  • Statystyki indeksów

  • Weryfikacja planu zapytania

  • Przeglądanie i czyszczenie cache planów zapytań

Monitorowanie, diagnostyka i profilowanie

  • mongotop

  • mongostat

  • Free MongoDB Cloud Monitoring

  • Listowanie aktualnie wykonywanych przez bazę operacji

  • Uruchamianie oraz konfiguracja profilowania

  • Przegląd informacji zapisywanych przez profiler

Full Text Search

  • Czym jest Full Text Search?

  • Tworzenie indeksów Full Text Search

  • Obsługa analizy słowotwórczej

  • Waga pól oraz sortowanie po dopasowaniu

  • Operator $

  • Ograniczenia

Replikacja

  • Rola replikacji w rozszerzaniu możliwości MongoDB

  • Elementy składowe Replica Set

  • Mechanizm failover oraz sterowanie elekcją węzła Primary

  • Rola arbitra

  • Budowa oraz zasada działania oploga

  • Komendy administracyjne w secie replikacyjnym

  • Konfiguracja Replica Set

  • Ukryty oraz opóźniony węzeł

  • Stany węzłów

  • Problemy z desynchronizacją

Sharding

  • Rola shardingu w rozszerzaniu możliwości MongoDB

  • Config server

  • Query router

  • Wybór klucza shardowania

  • Partycjonowanie danych

  • Komendy administracyjne w klastrze

  • Konfiguracja klastra

Transakcje

  • Zasada działania transakcji

  • Obsługa sesji

  • Ograniczenia związane z transakcjami

  • Wydajność zapytań z transakcjami

Change streams

  • Wzorzec publish-subscribe

  • Subskrypcja zmian w MongoDB

  • Format zwracanego dokumentu

Narzędzia administracyjne i diagnostyczne

  • Strategie tworzenia backupów (mongodump, mongorestore)

  • Diagnostyka działania Mongo (mongostat, mongotop, listing aktywnych operacji)

  • Monitorowanie procesu replikacji

Biblioteki klienckie (opcjonalne)

Java Driver

  • CSharp Driver

Autorem szkolenia jest Rafał Kaszczuk

Programista .NET z wieloletnim doświadczeniem. W swojej karierze stawiał czoła całemu spektrum projektów - od systemów księgowych dla branży finansowej po serwery multiplayer obsługujące miliony graczy w branży GameDev. Specjalizujący się w szczególności w tematach rozproszonych systemów SOA z wykorzystaniem ASP .NET oraz WCF. Związany z bazą MongoDB niemal od początku jej istnienia. Posiadacz certyfikatów M101J MongoDB for Java Developers, M101P MongoDB for Developers, M036 New Features and Tools…