After attending this lecture, students understand the challenges behind the integration of heterogeneous data sources in consolidated warehouses and the provisioning of analytical services. They know the typical data warehouse architecture as well as current trends, e.g., real-time data warehousing. Further topics are the structure of a data warehouse and the main processes for building data warehouses (extraction, transformation, load). A special focus is on technologies to analyze data warehouse data, e.g., reporting, online analytic processing and data mining, and their role as part of analytical services. Introduction to data warehousing - Data warehouse architecture - Data warehouse design - Extraction, transformation, load - ETL as a service - Introduction to analytics and analytic services - Real-time reporting - Online analytic processing - Data mining
After attending this lecture, students understand the challenges behind the integration of heterogeneous data sources in consolidated warehouses and the provisioning of analytical services. They know the typical data warehouse architecture as well as current trends, e.g., real-time data warehousing. Further topics are the structure of a data warehouse and the main processes for building data warehouses (extraction, transformation, load). A special focus is on technologies to analyze data warehouse data, e.g., reporting, online analytic processing and data mining, and their role as part of analytical services. Introduction to data warehousing - Data warehouse architecture - Data warehouse design - Extraction, transformation, load - ETL as a service - Introduction to analytics and analytic services - Real-time reporting - Online analytic processing - Data mining
Die Vorlesung "Datenbanken und Informationssysteme" ist als Einstiegsveranstaltung in das Vertiefungsgebiet Datenbanksysteme konzipiert. Aufbauend auf dem Inhalt der Vorlesung "Modellierung" werden insbesondere Entwurfs- und Realisierungsaspekte von Datenbanksystemen betrachtet. Die Entwicklung, Installation und Administration von Datenbanksystemen bestimmen hier sowohl Stoffauswahl als auch Detaillierungsgrad.
Als Grundlage für alle weiteren Betrachtungen wird ein Schichtenmodell zur Beschreibung eines allgemeinen Datenbanksystems vorgestellt. Darauf aufbauend werden die einzelnen Systemschichten im Detail diskutiert, die dort zu realisierenden Komponenten betrachtet sowie die jeweils vorherrschenden Algorithmen beschrieben und bewertet. Im einzelnen werden folgende Aspekte vertieft: Anwendungsprogrammierschnittstelle, Externspeicherverwaltung, DBS-Pufferverwaltung, Speicherungsstrukturen und Zugriffspfadstrukturen, Anfrageverarbeitung und Anfrageoptimierung, Transaktionsverarbeitung, Synchronisation, Logging und Recovery.
Die Vorlesung "Datenbanken und Informationssysteme" ist als Einstiegsveranstaltung in das Vertiefungsgebiet Datenbanksysteme konzipiert. Aufbauend auf dem Inhalt der Vorlesung "Modellierung" werden insbesondere Entwurfs- und Realisierungsaspekte von Datenbanksystemen betrachtet. Die Entwicklung, Installation und Administration von Datenbanksystemen bestimmen hier sowohl Stoffauswahl als auch Detaillierungsgrad.
Als Grundlage für alle weiteren Betrachtungen wird ein Schichtenmodell zur Beschreibung eines allgemeinen Datenbanksystems vorgestellt. Darauf aufbauend werden die einzelnen Systemschichten im Detail diskutiert, die dort zu realisierenden Komponenten betrachtet sowie die jeweils vorherrschenden Algorithmen beschrieben und bewertet. Im einzelnen werden folgende Aspekte vertieft: Anwendungsprogrammierschnittstelle, Externspeicherverwaltung, DBS-Pufferverwaltung, Speicherungsstrukturen und Zugriffspfadstrukturen, Anfrageverarbeitung und Anfrageoptimierung, Transaktionsverarbeitung, Synchronisation, Logging und Recovery.
The integration of heterogeneous data sources, i.e., combining data residing in different data sources to obtain a global view of the data relating to relevant entities, represents one of the major challenges in data management. Especially in the Big Data era, techniques for automatic, efficient, effective, and scalable integration are key to solving the issue of variety. The problem has been considered for decades, and this lecture will cover foundations of data integration as well as algorithmic and system aspects.
In particular, this course will cover the following topics:
- Distribution, autonomy, and heterogeneity as major challenges in data integration. - Types of data integration and associated architectures of integrating systems. - Query processing in integrating systems. - Overcoming schematic heterogeneities between integrated data sources (schema mapping and schema matching). - Getting a unified view of the data using duplicate detection and data fusion.
The integration of heterogeneous data sources, i.e., combining data residing in different data sources to obtain a global view of the data relating to relevant entities, represents one of the major challenges in data management. Especially in the Big Data era, techniques for automatic, efficient, effective, and scalable integration are key to solving the issue of variety. The problem has been considered for decades, and this lecture will cover foundations of data integration as well as algorithmic and system aspects.
In particular, this course will cover the following topics:
- Distribution, autonomy, and heterogeneity as major challenges in data integration. - Types of data integration and associated architectures of integrating systems. - Query processing in integrating systems. - Overcoming schematic heterogeneities between integrated data sources (schema mapping and schema matching). - Getting a unified view of the data using duplicate detection and data fusion.
In den letzten Jahren sind, getrieben durch die Anforderungen innovativer Anwendungen und Dienste, eine Reihe neuer Technologien für vernetzte bzw. verteilte Systeme entstanden. So werden im Internet der Dinge eine Vielzahl von Geräten und Alltagsgegenständen mit Sensoren und Aktoren ausgestattet, mithilfe von meist drahtlosen Kommunikationstechnologien (z.B. BLE, ZigBee, 6LoWPAN, LoRaWAN) vernetzt und an das Internet angebunden. Ein entsprechender Trend findet sich im industriellen Internet der Dinge (IIoT, Industrie 4.0), in dem Maschinen, Werkzeuge, Logistik, usw. vernetzt werden. Ein weiterer Trend ist die Flexibilisierung und Effizienzsteigerung verteilter Systeme durch Virtualisierung (z.B. NFV) und „software-definierte“ Systeme (z.B. SDN), die flexible Anpassung und dynamische Skalierung ermöglichen. Getrieben durch die Popularität von Bitcoin wurden verschiedene Distributed Ledger-Technologien (z.B. Blockchain) und weiterführende Konzepte wie Smart Contracts entwickelt, die nicht nur als Grundlage elektronischer Währungen (z.B. Bitcoin, Ethereum) dienen, sondern allgemein Anwendungen unterstützen, in denen ein Konsens zwischen Parteien gefunden und dokumentiert werden muss. Ein weiteres Thema ist die Verringerung von Latenzen, indem beispielsweise zusätzlich zu entfernten Cloud -Ressourcen nahe Edge- und Fog-Ressourcen genutzt oder optimierte Kommunikationsprotokolle eingesetzt werden, die unter anderem einen raschen Verbindungsaufbau zwischen Client und Server ermöglichen. Neben stationären Netzen haben sich mobile (5G) Kommunikationstechnologien und Systeme rasch weiterentwickelt. So verwendet z.B. die Corona-Warn-App mobile Geräte privater Nutzer zur Kontaktverfolgung. Diese als Crowdsensing bezeichnet Methode kann allgemein zur Sammlung großer Mengen von geographisch verteilten Sensordaten verwendet werden. In diesem Seminar wird neben diesen Aspekten ein breites Spektrum aktueller Internet-Technologien, Protokolle und Standards diskutiert, welche die vernetzten und verteilten Anwendungen und Dienste ermöglichen. Mögliche weitere Themen umfassen Machine-to-Machine Communication (M2M), OPC-UA (Unified Architecture), Echtzeitkommunikation (Real-Time-Ethernet), WWW-Technologien und Protokolle (HTTP 2.0/SPDY), neue Transportprotokolle (QUIC, Multipath-TCP).
In den letzten Jahren sind, getrieben durch die Anforderungen innovativer Anwendungen und Dienste, eine Reihe neuer Technologien für vernetzte bzw. verteilte Systeme entstanden. So werden im Internet der Dinge eine Vielzahl von Geräten und Alltagsgegenständen mit Sensoren und Aktoren ausgestattet, mithilfe von meist drahtlosen Kommunikationstechnologien (z.B. BLE, ZigBee, 6LoWPAN, LoRaWAN) vernetzt und an das Internet angebunden. Ein entsprechender Trend findet sich im industriellen Internet der Dinge (IIoT, Industrie 4.0), in dem Maschinen, Werkzeuge, Logistik, usw. vernetzt werden. Ein weiterer Trend ist die Flexibilisierung und Effizienzsteigerung verteilter Systeme durch Virtualisierung (z.B. NFV) und „software-definierte“ Systeme (z.B. SDN), die flexible Anpassung und dynamische Skalierung ermöglichen. Getrieben durch die Popularität von Bitcoin wurden verschiedene Distributed Ledger-Technologien (z.B. Blockchain) und weiterführende Konzepte wie Smart Contracts entwickelt, die nicht nur als Grundlage elektronischer Währungen (z.B. Bitcoin, Ethereum) dienen, sondern allgemein Anwendungen unterstützen, in denen ein Konsens zwischen Parteien gefunden und dokumentiert werden muss. Ein weiteres Thema ist die Verringerung von Latenzen, indem beispielsweise zusätzlich zu entfernten Cloud -Ressourcen nahe Edge- und Fog-Ressourcen genutzt oder optimierte Kommunikationsprotokolle eingesetzt werden, die unter anderem einen raschen Verbindungsaufbau zwischen Client und Server ermöglichen. Neben stationären Netzen haben sich mobile (5G) Kommunikationstechnologien und Systeme rasch weiterentwickelt. So verwendet z.B. die Corona-Warn-App mobile Geräte privater Nutzer zur Kontaktverfolgung. Diese als Crowdsensing bezeichnet Methode kann allgemein zur Sammlung großer Mengen von geographisch verteilten Sensordaten verwendet werden. In diesem Seminar wird neben diesen Aspekten ein breites Spektrum aktueller Internet-Technologien, Protokolle und Standards diskutiert, welche die vernetzten und verteilten Anwendungen und Dienste ermöglichen. Mögliche weitere Themen umfassen Machine-to-Machine Communication (M2M), OPC-UA (Unified Architecture), Echtzeitkommunikation (Real-Time-Ethernet), WWW-Technologien und Protokolle (HTTP 2.0/SPDY), neue Transportprotokolle (QUIC, Multipath-TCP).
Strukturmechanik, Strömungsmechanik, Finite Elemente, Finite Differenzen sowie praktische Aspekte der effizienten und parallelen Umsetzung auf Rechnern.
Strukturmechanik, Strömungsmechanik, Finite Elemente, Finite Differenzen sowie praktische Aspekte der effizienten und parallelen Umsetzung auf Rechnern.
Das Programmierprojekt soll eine Einführung in die Welt des wissenschaftlichen Rechnens (Scientific Computing) und der Simulationen bieten. Dabei soll das Aufeinandertreffen zweier Galaxien mit Hilfe einer N-Körper Simulation umgesetzt werden.
Das Projekt soll in 3 Phasen unterteilt werden: 1. Kennenlernen des Problems und eine erste Implementierung des N-Körper Problems mittels des naiven brute-force Algorithmus. 2. Erweitern der Implementierung um den effizienteren, baum-basierten Barnes-Hut Algorithmus. 3. Performance Evaluierung und Wettbewerb.
Das Programmierprojekt soll eine Einführung in die Welt des wissenschaftlichen Rechnens (Scientific Computing) und der Simulationen bieten. Dabei soll das Aufeinandertreffen zweier Galaxien mit Hilfe einer N-Körper Simulation umgesetzt werden.
Das Projekt soll in 3 Phasen unterteilt werden: 1. Kennenlernen des Problems und eine erste Implementierung des N-Körper Problems mittels des naiven brute-force Algorithmus. 2. Erweitern der Implementierung um den effizienteren, baum-basierten Barnes-Hut Algorithmus. 3. Performance Evaluierung und Wettbewerb.
Selbstorganisierende und adaptive Systeme (Self-Organizing and Adaptive Systems)
Semester:
WS 24/25
Inhalt:
Self-organizing systems adapt themselves (e.g., their behavior or structure) to the current state of their execution environment. This lecture discusses focal application areas (context-aware computing) and the technical background, i.e., the fundamental concepts, algorithms, and protocols for the design and implementation of adaptive systems. Topics that will be covered in the lecture include: - Specification of target states - Monitoring, Analysis, Planning, and Execution protocols and methods for MAPE-based applications
The lecture is complemented by an exercise with a case study assignment. Successful completion of the case study is a prerequisite for participation in the exam.
Selbstorganisierende und adaptive Systeme (Self-Organizing and Adaptive Systems)
Semester:
WS 24/25
Inhalt:
Self-organizing systems adapt themselves (e.g., their behavior or structure) to the current state of their execution environment. This lecture discusses focal application areas (context-aware computing) and the technical background, i.e., the fundamental concepts, algorithms, and protocols for the design and implementation of adaptive systems. Topics that will be covered in the lecture include: - Specification of target states - Monitoring, Analysis, Planning, and Execution protocols and methods for MAPE-based applications
The lecture is complemented by an exercise with a case study assignment. Successful completion of the case study is a prerequisite for participation in the exam.
Grundlegende Systemstrukturen und -organisationen: Multitaskingsystem, Multiprozessorsystem, Verteiltes System Modellierung und Analyse nebenläufiger Programme Abstraktionen: Atomare Befehle, Prozesse, nebenläufige Programme Korrektheitkriterien nebenläufiger Programme Betriebssystemkonzepte:
Organisation von Betriebssystemen Prozesse und Threads Scheduling-Konzepte
Synchronisation über gemeinsamen Speicher:
Synchronisationsalgorithmen und Mechanismen: Dekker, Bakery, Fast Mutual Exclusion, Synchronisation mit atomaren Befehlen, Semaphor, Monitor Nebenläufige Programmierung in Java Synchronisationsprobleme und -lösungen
Grundlagen Rechnernetze
Grundlagen IP Grundlagen Transportprotokolle Socket-Schnittstelle
Konzepte zur Kommunikation und Synchronisation mittels Nachrichtentransfer
Grundlegende Systemstrukturen und -organisationen: Multitaskingsystem, Multiprozessorsystem, Verteiltes System Modellierung und Analyse nebenläufiger Programme Abstraktionen: Atomare Befehle, Prozesse, nebenläufige Programme Korrektheitkriterien nebenläufiger Programme Betriebssystemkonzepte:
Organisation von Betriebssystemen Prozesse und Threads Scheduling-Konzepte
Synchronisation über gemeinsamen Speicher:
Synchronisationsalgorithmen und Mechanismen: Dekker, Bakery, Fast Mutual Exclusion, Synchronisation mit atomaren Befehlen, Semaphor, Monitor Nebenläufige Programmierung in Java Synchronisationsprobleme und -lösungen
Grundlagen Rechnernetze
Grundlagen IP Grundlagen Transportprotokolle Socket-Schnittstelle
Konzepte zur Kommunikation und Synchronisation mittels Nachrichtentransfer
Distributed systems are a corner stone of many services today. Distribution provides scalability of cloud services, implemented atop a massive number of servers. For instance, Google’s data centers host an estimated 2.5 million servers! At the same time replicating functions and data ensures reliability. This does not only apply to cloud services, but also to peer-to-peer networks as used for instance by the Bitcoin network and mobile systems such as vehicular networks or networks of unmanned aerial vehicles. Such mobile systems are inherently distributed geographically and are supported by edge cloud services located close to the mobile devices to reduce network latency. Last but not least, the Internet is evolving into an Internet of Things (IoT), where virtually everything can communicate through the Internet. Such distributed systems come with many challenges, as pointed out by Urs Hölzl (Senior Vice President for technical infrastructure at Google): “At scale, everything breaks ... Keeping things simple and yet scalable is actually the biggest challenge. It's really, really hard.“ Other challenges include consistency of replicated services, privacy, and protection against attacks if untrusted devices are involved. Adaptation is one of the key mechanisms that enable distributed systems to cope with the demands of increasingly dynamic environments.
Distributed systems are a corner stone of many services today. Distribution provides scalability of cloud services, implemented atop a massive number of servers. For instance, Google’s data centers host an estimated 2.5 million servers! At the same time replicating functions and data ensures reliability. This does not only apply to cloud services, but also to peer-to-peer networks as used for instance by the Bitcoin network and mobile systems such as vehicular networks or networks of unmanned aerial vehicles. Such mobile systems are inherently distributed geographically and are supported by edge cloud services located close to the mobile devices to reduce network latency. Last but not least, the Internet is evolving into an Internet of Things (IoT), where virtually everything can communicate through the Internet. Such distributed systems come with many challenges, as pointed out by Urs Hölzl (Senior Vice President for technical infrastructure at Google): “At scale, everything breaks ... Keeping things simple and yet scalable is actually the biggest challenge. It's really, really hard.“ Other challenges include consistency of replicated services, privacy, and protection against attacks if untrusted devices are involved. Adaptation is one of the key mechanisms that enable distributed systems to cope with the demands of increasingly dynamic environments.
Wissenschaftsphilosophie und wissenschaftliche Methode Literaturarbeit, Referenzieren, wissenschaftliches Schreiben und Präsentieren Empirische Methoden in der Informatik Anwendung deskriptiver Statistik und statistischer Tests Ethische Richtlinien bei der Durchführung von Studien
Wissenschaftsphilosophie und wissenschaftliche Methode Literaturarbeit, Referenzieren, wissenschaftliches Schreiben und Präsentieren Empirische Methoden in der Informatik Anwendung deskriptiver Statistik und statistischer Tests Ethische Richtlinien bei der Durchführung von Studien