Karta Przedmiotu

Politechnika Białostocka Wydział Informatyki
Kierunek studiów Data Science Poziom i forma
studiów
pierwszego stopnia
stacjonarne
Grupa przedmiotów /
specjalność
Profil kształcenia ogólnoakademicki
Nazwa przedmiotu Przetwarzanie danych wielkoskalowych E Kod przedmiotu DS1S6PDW
Rodzaj zajęć obowiązkowy
Formy zajęć i liczba godzin W Ć L P Ps T S Semestr 6
30 30 Punkty ECTS 4
Program obowiązuje od 2025/2026
Przedmioty wprowadzające Język programowania - obieralny (-),   MLOps w technologiach AI (DS1S3MLO),   Obliczenia równoległe (DS1S5OBR),  
Cele przedmiotu Przekazanie wiedzy z zakresu architektur i technologii przetwarzania danych w systemach rozproszonych i wielkoskalowych (Big Data).
Rozwój praktycznych umiejętności korzystania z systemów i narzędzi Big Data, ze szczególnym uwzględnieniem potrzeb uczenia maszynowego.

Odniesienia do frameworka edukacyjnego mikrokompetencji SFIA
- Data engineering (DENG) – poziom 3: projektowanie i implementacja złożonych rozwiązań przetwarzania danych
- Solution architecture (ARCH) – poziom 4: umiejętność integracji narzędzi Big Data w celu opracowania architektury systemu przetwarzania danych
- Machine learning MLNG – poziom 3: analiza danych wielkoskalowych przy użyciu metod ML
Ramowe treści programowe Wprowadzenie do systemów rozproszonych i Big Data. Przetwarzanie dużych zbiorów danych w sposób skalowalny i energooszczędny, z uwzględnieniem wpływu na środowisko oraz zasad zrównoważonego rozwoju. Modele rozproszonej analizy i składowania danych. Narzędzia ekosystemu Big Data. Przetwarzanie wsadowe i strumieniowe. Wielkoskalowe hurtownie danych. Uczenie maszynowe w kontekście danych wielkoskalowych. Zastosowania narzędzi Big Data w praktycznych problemach. Analiza danych przy użyciu wybranych narzędzi z ekosystemu Big Data. Optymalizacja składowania danych i wykonywania analiz. Kwestie jakości i bezpieczeństwa danych. Integracja różnych narzędzi w ramach kompleksowego procesu przetwarzania i analizy danych.
Inne informacje o przedmiocie treści przedmiotu odwołują się do zasad zrównoważonego rozwoju
przedmiot ma związek z prowadzoną na Uczelni działalnością naukową
Wyliczenie: Nakład pracy studenta związany z: Godzin
ogółem
W tym
kontaktowych
W tym
praktycznych
udziałem w wykładach 30 30
udziałem w innych formach zajęć 30 30 30
indywidualnym wsparciem merytorycznym procesu uczenia się, udziałem w egzaminie i zaliczeniach organizowanych poza planem zajęć 4 4
przygotowaniem do egzaminu 10
przygotowaniem do bieżących zajęć 26 26
Razem godzin: 100 64 56
Razem punktów ECTS: 4 2.6 2.2
Zakładane kierunkowe efekty uczenia się Wiedza Umiejętności Kompetencje
społeczne
DS1_W04 DS1_U05 DS1_K01
DS1_W05 DS1_U07
DS1_W06 DS1_U08
DS1_W07 DS1_U09
DS1_W09 DS1_U15
DS1_W11 DS1_U16
DS1_W15 DS1_U18
DS1_W19
DS1_W20
DS1_W21
Cele i treści ramowe sformułował(a) dr inż. Daniel Reska, dr inż. Paweł Tadejko Data: 29/05/2025
Realizacja w roku akademickim 2027/2028
 
Treści programowe
Wykład
1. Wprowadzenie do systemów rozproszonych. Rozproszone architektury i modele obliczeniowe.
2. Wprowadzenie do Big Data. Historia, specyfika i problemy w analizie dużych zbiorów danych. Wyzwania V's (Volume, Velocity, Variety, Veracity, Value). Przegląd głównych elementów ekosystemu Big Data.
3. Rozproszone systemy plików. HDFS, S3 i alternatywne rozwiązania. Strategie partycjonowania i replikacji danych. Optymalizacja dostępu do danych, także w kontekście zapotrzebowania na zasoby, w nawiązaniu do zasad zrównoważonego rozwoju.
4. Modele obliczeniowe oraz metody przetwarzania i analizy Big Data: model MapReduce, przetwarzania danych w pamięci (Apache Spark).
5. Podstawy Apache Spark. RDD, DataFrames i Datasets.
6. Podstawy Apache Spark. Spark SQL. Optymalizacja zapytań w Spark. Optymalizacja zapytań w kontekście zapotrzebowania na zasoby infrastruktury ICT, w nawiązaniu do zasad zrównoważonego rozwoju.
7. Składowanie danych wielkoskalowych. Hurtownie danych wielkoskalowych (Apache Hive).
8. Składowanie danych wielkoskalowych. Koncepcja Data Lake. Formaty danych (Parquet, ORC, Iceberg). Optymalizacja składowania danych i wykonywania zapytań, także w kontekście zapotrzebowania na zasoby, w nawiązaniu do zasad zrównoważonego rozwoju.
9. SQL-On-Hadoop, NoSQL i NewSQL. Bazy kolumnowe, dokumentowe i grafowe. Wybór odpowiedniej technologii dla różnych przypadków użycia.
10. Przetwarzanie strumieniowe. Apache Kafka i Spark Streaming. Analiza i składowanie danych strumieniowych.
11. Przetwarzanie strumieniowe. Apache Kafka i Spark Streaming. Analiza i składowanie danych strumieniowych.
12. Wybrane biblioteki i narzędzia uczenia maszynowego Big Data. Narzędzia do interaktywnej analizy danych.
13. Prezentacja praktycznych przykładów zastosowania poznanych narzędzi w analizie dużych zbiorów danych.
14. Prezentacja praktycznych przykładów zastosowania poznanych narzędzi w analizie dużych zbiorów danych.
15. Zaliczenie wykładu.
Pracownia specjalistyczna
1. Zajęcia organizacyjne. Wstęp do pracy z klastrem i narzędziami w pracowni.
2. Zapoznanie z narzędziami Apache Hadoop i Apache Spark: konfiguracja środowiska; implementacja podstawowych operacji.
3. Analiza danych w Apache Spark: operacje MapReduce RDD, DataFrames, Spark SQL.
4. Analiza danych w Apache Spark: operacje MapReduce RDD, DataFrames, Spark SQL.
5. Analiza danych w Apache Spark: praca z klastrem, analiza wydajności i optymalizacja zadań. Uwzględnienie w analizie zapotrzebowania na zasoby, w nawiązaniu do zasad zrównoważonego rozwoju.
6. Wielkoskalowe uczenie maszynowe z wykorzystaniem Spark MLlib i Apache Zeppelin.
7. Wielkoskalowe uczenie maszynowe z wykorzystaniem Spark MLlib i Apache Zeppelin.
8. Wielkoskalowe uczenie maszynowe z wykorzystaniem Spark MLlib i Apache Zeppelin.
9. Przetwarzanie strumieniowe. Spark Streaming: implementacja pipeline'ów strumieniowych.
10. Przetwarzanie strumieniowe. Spark Streaming: integracja z Apache Kafka, przetwarzanie w czasie rzeczywistym. Uwzględnienie w implementacji wymagań dot. zasobów, w nawiązaniu do zasad zrównoważonego rozwoju
11. Projekt końcowy: implementacja kompleksowego systemu przetwarzania danych wielkoskalowych.
12. Projekt końcowy: implementacja kompleksowego systemu przetwarzania danych wielkoskalowych.
13. Projekt końcowy: implementacja kompleksowego systemu przetwarzania danych wielkoskalowych.
14. Projekt końcowy: implementacja kompleksowego systemu przetwarzania danych wielkoskalowych.
15. Wystawianie ocen
Metody dydaktyczne
(realizacja stacjonarna)
W wykład z prezentacją multimedialną
Ps zadania indywidualne; zadania projektowe w grupach; dyskusja rozwiązań
Metody dydaktyczne
(realizacja zdalna)
W wykład z prezentacją multimedialną
-
Forma zaliczenia
W egzamin pisemny z pytaniami testowymi
Ps realizacja zadań indywidualnych, ocena projektu realizowanego w grupach
Warunki zaliczenia
W Uzyskanie min. 30% z każdego E1-E3, a po spełnieniu tego warunku ostateczna ocena wynika z sumy uzyskanych punktów.
Kryteria oceny:
[ 0 – 50]% punktów – 2.0
(50 – 60]% punktów – 3.0
(60 – 70]% punktów – 3.5
(70 – 80]% punktów – 4.0
(80 – 90]% punktów – 4.5
(90 – 100]% punktów – 5.0
Ps Minimalne wymagania dotyczące poszczególnych E:
E4 - umiejętne korzystanie z podstawowych operacji na Spark Dataframes
E5 - integracja narzędzi w celu stworzenia podstawowego potoku przetwarzania danych (np. Spark, Hive oraz Zeppelin) w ramach zadania projektowego
E6 - realizacja przynajmniej jednego zadania z użyciem Spark MLlib
E7 - wykonanie projektu

Po spełnieniu tego warunku ostateczna ocena wynika z sumy uzyskanych punktów.
Kryteria oceny:
[ 0 – 50]% punktów – 2.0
(50 – 60]% punktów – 3.0
(60 – 70]% punktów – 3.5
(70 – 80]% punktów – 4.0
(80 – 90]% punktów – 4.5
(90 – 100]% punktów – 5.0
Symbol efektu Zakładane efekty uczenia się Odniesienie do efektów uczenia się zdefiniowanych dla kierunku studiów
Wiedza Umiejętności Kompetencje
społeczne
Wiedza: student zna i rozumie
E1 architektury i modele programistyczne i stosowane w systemach rozproszonej analizy danych wielkoskalowych
E2 narzędzia oraz technologie składowania i przetwarzania stosowane w analizie Big Data
E3 techniki analizy i optymalizacji wydajności systemów wielkoskalowych, mając w szczególności na uwadze wytyczne zasad zrównoważonego rozwoju
Umiejętności: student potrafi
E4 korzystać z wybranych narzędzi Big Data w celu projektowania i implementacji rozwiązań z zakresu przetwarzania i analizy danych
E5 wybierać oraz integrować systemy i narzędzia Big Data w celu opracowania architektury składowania i analizy danych wielkoskalowych
E6 projektować, przeprowadzać i optymalizować procesy analizy danych wielkoskalowych z wykorzystaniem metod uczenia maszynowego, uwzględniając zasady zrównoważonego rozwoju
Kompetencje społeczne: student jest gotów do
E7 projektowania skalowalnych i wydajnych systemów przetwarzania danych
Symbol efektu Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
E1 egzamin pisemny W
E2 egzamin pisemny W
E3 egzamin pisemny W
E4 ocena wykonanych zadań, ocena projektu Ps
E5 ocena wykonanych zadań, ocena projektu Ps
E6 ocena wykonanych zadań, ocena projektu Ps
E7 ocena wykonanych zadań, ocena projektu Ps
Literatura podstawowa
1. J. S. Damji, B. Wenig, T. Das, D. Lee, Spark. Błyskawiczna analiza danych., Helion, Gliwice, 2023
2. Dokumentacja Apache Spark: https://spark.apache.org/docs/latest/
3. T. White , Hadoop: kompletny przewodnik: analiza i przechowywanie danych, Helion, Gliwice, 2016
4. D. Stephenson, Big Data, nauka o danych i AI bez tajemnic: podejmuj lepsze decyzje i rozwijaj swój biznes!, Helion, Gliwice, 2020
5. M. van Steen, A. S.Tanenbaum, Distributed Systems, 4th ed., Darmowa wersja cyfrowa: distributed-systems.net, 2023
Literatura uzupełniająca
1. H. Karau , A. Konwinski, P. Wendell, M. Zaharia, Poznajemy Sparka, PWN, Warszawa, 2016
2. A. Chodkowska-Gyurics, Hurtownie danych: teoria i praktyka, Wydawnictwo Naukowe PWN, Warszawa, 2017
3. Harrison G., NoSQL, NewSQL i BigData. Bazy danych następnej generacji, Helion, Gliwice, 2019
4. A. DeBarros, SQL w praktyce: jak dzięki danym uzyskiwać cenne informacje, Helion, Gliwice, 2024
Koordynator przedmiotu: dr inż. Jerzy Krawczuk, dr inż. Tomasz Łukaszuk, dr inż. Daniel Reska Data: 30/05/2025