Kolejki komunikatów i przetwarzanie strumieniowe
Zwiększenie ilości dostępnych danych spowodowało wzrost liczby ciągłych strumieni danych przesyłanych w czasie rzeczywistym, które wymagają przetworzenia. Poznaj różne systemy i techniki służące do wykorzystywania i przetwarzania strumieni danych w czasie rzeczywistym.
Cele szkolenia
Ten moduł obejmuje następujące zagadnienia:
- Definiowanie kolejki komunikatów i przedstawienie podstawowej architektury
- Przedstawienie charakterystyki oraz zalet i wad kolejki komunikatów
- Objaśnienie podstawowej architektury platformy Apache Kafka
- Omówienie ról tematów i partycji, a także sposobu uzyskiwania skalowalności i odporności na uszkodzenia
- Omówienie ogólnych wymagań systemów przetwarzania strumieniowego
- Przedstawienie ewolucji przetwarzania strumieniowego
- Objaśnienie podstawowych składników środowiska Apache Samza
- Omówienie sposobu, w jaki platforma Apache Samza uzyskuje stanowe przetwarzanie strumieniowe
- Omówienie różnic między architekturami lambda i kappa
- Omówienie przyczyn wdrażania kolejek komunikatów i przetwarzania strumieniowego w przypadku użycia w serwisie LinkedIn
We współpracy z dr. Majdem Sakrem i uniwersytetem Carnegie Mellon University.
Wymagania wstępne
- Zrozumienie idei przetwarzania w chmurze, w tym modeli usług w chmurze, i zapoznanie się z najpopularniejszymi dostawcami usług w chmurze
- Znajomość technologii umożliwiających przetwarzanie w chmurze
- Zrozumienie, jak dostawcy usług w chmurze płacą za korzystanie z chmury oraz pobierają za to opłaty
- Wiedza o tym, czym są centra danych oraz dlaczego istnieją
- Wiedza na temat sposobu konfiguracji, zasilania i aprowizacji centrów danych
- Wiedza na temat sposobu aprowizacji i mierzenia zasobów chmury
- Znajomość koncepcji wirtualizacji
- Znajomość różnych typów wirtualizacji
- Zrozumienie wirtualizacji procesora
- Zrozumienie wirtualizacji pamięci
- Zrozumienie wirtualizacji we/wy
- Znajomość różnych typów danych i sposobów ich przechowywania
- Znajomość działania rozproszonych systemów plików
- Znajomość działania baz danych NoSQL i magazynu obiektów
- Znajomość programowania rozproszonego oraz wiedza o tym, dlaczego jest ono przydatne w chmurze
- Zrozumienie działania usługi MapReduce i sposobu, w jaki umożliwia ona przetwarzanie danych big data
- Zrozumienie sposobu działania platformy Spark i cech, którymi różni się od usługi MapReduce
- Zrozumienie sposobu działania usługi GraphLab i cech, którymi różni się od usług MapReduce i Spark