19
Big Data

Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Big Data

Page 2: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Organizacyjnie

Prowadzący:dr Mariusz Rafało

[email protected]://mariuszrafalo.pl (hasło: BIG)

Page 3: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Automatyzacja

Page 4: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Automatyzacja przetwarzania: Apache NiFi

4Źródło: nifi.apache.org

Page 5: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Automatyzacja przetwarzania: ETL

• Oozie

• Airflow

• Falcon

• SLJM

• CRON(sic!)

5Źródło: airflow.apache.org

Page 6: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Technologie składowania danych

Page 7: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Hive

• Baza danych oparta na systemie plików HDFS

• Oprogramowanie powalające na zadawanie zapytań do rozproszonego systemu HDFS

• Oferuje język zapytań HQL; jest to język programowania o podobnej składni do SQL (HiveSQL)

• Dodatkowo, podobnie jak Pig, Hive udostępnia komendy pozwalające na stosowanie algorytmów MapReduce

7

Page 8: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

HBase

• Rozproszona, kolumnowa baza danych

• Dobrze sprawdza się do obsługi szybkich zapytań na tabelach zawierających miliardy rekordów i tysiące (nawet miliony) kolumn

• Jest to baza danych nie-relacyjna, obsługująca zapytania w pamięci operacyjnej

• Mniej radzi sobie z zapytaniami analitycznymi, które wymagają agregowania danych (np. zapytania o dane detaliczne będą mniej wydajne)

8

Page 9: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Cassandra

• Kolumnowa baza danych; cechuje się krótkimi czasami odpowiedzi

• Posiada cechy bazy klucz-wartość

• Operuje na rodzinach kolumn, kluczach i kolumnach

Źródło: Big Data. Najlepsze praktyki budowy skalowalnych systemów obsługi danych w czasie rzeczywistym, Nathan Marz, James Warren, Helion, 2016

9

Page 10: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Cassandra(przykład)

Źródło: Big Data. Najlepsze praktyki budowy skalowalnych systemów obsługi danych w czasie rzeczywistym, Nathan Marz, James Warren, Helion, 2016

10

Page 11: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Druid

• Kolumnowa baza danych wspierająca analizy wielowymiarowe (OLAP)

• Możliwość ładowania danych za pomocą ETL lub poprzez strumień danych (Kafka)

• Rozproszona, skalowalna architektura

Źródło: druid.io11

Page 12: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

MongoDB

• Nierelacyjna baza danych, napisana w języku C++

• Platforma cechuje się dużą skalowalnością, wydajnością oraz brakiem ściśle zdefiniowanej struktury obsługiwanych danych

• Dane składowane są jako pliki w formacje JSON, co umożliwia aplikacjom bardziej naturalne ich przetwarzanie, przy zachowaniu możliwości tworzenia hierarchii oraz indeksowania

• Posiada możliwość składowania danych w pamięci operacyjnej (WiredTiger engine)

• Wybrane narzędzia i komponenty:

• MongoDB Compass – narzędzie do wizualnej analizy danych

• MongoDB Spark Connector – integracja z Apache Spark

• MongoDB Atlas – database as a service

12

Page 13: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Redis

• Baza danych klasy in-memory, składująca dane w pamięci operacyjnej

• Oferuje bardzo szybki odczyt i zapis danych

• Oferuje wsparcie dla wielu typów danych jak np. string, hash, list, set

• Pozwala na stosowanie indeksów

• Posiada specjalizowane struktury służące obsłudze danych geograficznych

13

Page 14: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

ELK

14Źródło: elastic.co

Page 15: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Zarządzanie klastrem

Page 16: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Zookeeper

• Scentralizowana usługa utrzymująca konfigurację klastra

• Zarządza metadanymi i konfiguracją klastra

• Zarządza konfiguracją rozproszoną, pozwala na automatyczne konfigurowanie nowego węzła (data node) lub nowej usługi na wielu węzłach

16

Page 17: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Ambari

• Konsola do zarządzania klastrem oraz wszystkimi usługami

• Monitoruje zarówno zasoby klastra jak i poszczególne usługi

17

Page 18: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Zarządzanie klastrem: zagadnienia

• Infrastruktura sprzętowa (jak monitorować?)

• Warstwa aplikacji (jak dbać o dostępność?)

• Przetwarzanie danych (jak ładować dane klaster?)

• Zarządzanie dostępem (bezpieczeństwo danych)

• Śledzenie i diagnostyka błędów w danych

• Wydajność

18

Page 19: Big Data - mariuszrafalo.plmariuszrafalo.pl/sgh/bd/BD 03 - Technologie.pdf · •MongoDB Spark Connector –integracja z Apache Spark •MongoDB Atlas –database as a service 12

Dziękuję za uwagę