Zajęcia
Informacje o przebiegu zajęć



Zadanie na zaliczenie ćwiczeń (ocena 3.0). Osoby chcące uzyskać ocenę 4.0 lub 5.0 proszone są o indywidualne zgłaszanie się po tematy zaliczeniowe (najpóźniej do 9 maja 2025).


Wykład + laboratorium informatyczne




Data Opis
2025-02-21 Tydzień 1
W Czyszczenie, transformacja i integracja danych - zagadnienia teoretyczne
  • Zagadnienia i materiały
    • W Podstawowe informacje o przedmiocie(PDF, Markdown)
    • W Czyszczenie, transformacja i integracja danych.
      • Książka, rozdział Cleansing, transforming, and integrating data.
  • Co po tych zajęciach powinno się znać / wiedzieć / umieć
    • Czym jest proces ETL.
    • Teoretyczne i praktyczne aspekty czyszczenia, transformacji i integracji danych.
  • 2025-02-28 Tydzień 2
    LI Czyszczenie, transformacja i integracja danych - zagadnienia praktyczne
  • Zbiory danych
  • Co po tych zajęciach powinno się znać / wiedzieć / umieć
    • Znać podstawową funkcjonalność biblioteki Pandas oraz umieć użyć ją do realizacji typowych dla niej zadań.
  • 2025-03-14 Tydzień 3
    LI Algorytmy plikowe na przykładzie implementacji sortowania bardzo dużego zbioru danych.
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
      • Umieć uzasadnić potrzebę implementacji algorytmów w wersji plikowej. Umieć podać przykład co najmniej jednej takiej implementacji (innej niż omawiana na ćwiczeniach).
    2025-03-21 Tydzień 4
    LI Kontynuacja poprzednich zajęć (z tygodnia 3).
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
      • ...
    2025-03-28 Tydzień 5
    LI Kontynuacja poprzednich zajęć (z tygodnia 3).
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
      • ...
    2025-04-04 Tydzień 6
    LI Kontynuacja poprzednich zajęć (z tygodnia 3).
    LI Wprowadzenie do programowania współbieżnego.
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
      • Znać sposoby tworzenia programów współbieżnych w Python-ie.
      • Opisać różnice pomiędzy wątkiem a procesem.
      • Znać podstawowe sposoby komunikacji pomiędzy wątkami i procesami.
    2025-04-11 Tydzień 7
    LI Kontynuacja poprzednich zajęć (z tygodnia 6).
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
      • Znać sposoby tworzenia programów współbieżnych w Python-ie.
      • Opisać różnice pomiędzy wątkiem a procesem.
      • Znać podstawowe sposoby komunikacji pomiędzy wątkami i procesami.
    2025-04-17 Tydzień 8
    LI Pracujemy nad projektem zaliczeniowym - program mozaika.
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
    2025-04-25 Tydzień 9
    W Wprowadzenie w tematykę, próba zdefiniowania i uchwycenia istoty - kiedy coś (nie) jest big data.
    • Zagadnienia
      • Dlaczego mówimy o inżynierii.
      • Próba określenia jak postrzegamy big data.
    • Materiały
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
      • Czym jest Big Data? Zdefiniuj to pojęcie.
      • Co nam daje Big Data?
      • Opisz czynniki charakteryzujące Big Data (volume, velocity, variety, veracity, value).
      • Czym różnią się dane jakościowe od danych ilościowych? Podaj przykłady danych należących do każdego z typów.
      • Opisz związki jakie zachodzą pomiędzy danymi, informacją, wiedzą i mądrością. Czym się one różnią między sobą?
      • Opisz pojęcia blindsight, hindsight, insight, foresight i porównaj je z descriptive, diagnostic, predictive, prescriptive analytics.
      • Scharakteryzuj najbardziej pożądaną formę danych (raw, immutable, eternally true).
    2025-05-09 Tydzień 10
    W Processing concepts for Big Data.
    • Zagadnienia
      • Processing concepts for Big Data - kontynuacja.
        • OLAP, OLTP.
        • Przetwarzanie równoległe, przetwarzanie rozproszone, klaster, grid, chmura, metoda dziel i zwyciężaj.
        • aaS – as a Service.
        • Zasada SVC.
        • Przetwarzanie wsadowe a przetwarzanie w czasie rzeczywistym.
        • Idea algorytmu map-reduce.
        • Materiały
      • Message queues – something between processing and storage.
    • Co po tych zajęciach powinno się znać / wiedzieć / umieć
      • Wyjaśnij pojęcia OLTP i OLAP. Czym charakteryzują się te modele przetwarzania danych. Co jest priorytetem w każdym z nich, kiedy można je stosować?
      • Wyjaśnij pojęcia: przetwarzanie równoległe, przetwarzanie rozproszone, klaster, grid, chmura, metoda dziel i zwyciężaj. Jaki widzisz związek pomiędzy tymi pojęciami?
      • Co oznacza aaS (as a Service)? Jakie mamy rodzaje (poziomy) usłg tego typu, czym się one różnią i co się z tym wiąże?
      • Opisz czego dotyczy zasada SVC (Speed, Consistency and Volume (SCV) principle).
      • W jaki sposób możemy rozumieć określenie przetwarzania w czasie rzeczywistym (realtime).
      • Czym różni się przetwarzanie wsadowe (batch) od przetwarzania w czasie rzeczywistym (realtime)?
      • Porównaj ze sobą divide and conquer i map-reduce.
      • Podaj możliwe uzasadnienia wyboru kolejki komunikatów jako elementu składowego większego systemu.
      • Wymień i opisz rolę poszczególnych elementów kolejki komunikatów.
      • Scharakteryzuj modele pracy kolejki komunikatów.