Logo webu
Are you interested in studying at Unicorn University? Sign up for an open day and find out more.

Software architecture

9 ECTS
Master's
Czech
Jiří Feuerlicht

large amounts of data and to present specific problems that need to be solved in these systems. In the course we will focus on the description of components of modern information systems and related processes that allow to obtain a large amount of data either from classical sources or from the sources of the Internet of Things. In addition to demonstrating architecture on real examples in one set of seminars, students will also implement a larger project in other seminars under the guidance of the teacher, along with the design and implementation of architecture and the design and implementation of the data layer.

For this purpose, some technologies related to the creation of the frontend and backend of information systems will be used in the course. Students will also be acquainted with the issue of large databases, including procedures and rules for their design and management. The course presupposes students the ability to implement a software backend and frontend, which are the conditions of the entire master's program and are repeated in the optional course Basics of Software Development. Nevertheless, within the course there will be roles of consultants helping students to implement projects in the technology.

Course outline

Topics discussed in the course

Relational databases
Overview of relational databases, deployment, setup, creation and querying, overview of the most well-known databases.
Relational database optimization
Methods of query optimization in relational databases, creating indexes.
Database scalability
Database partitioning, types of partitioning and its use, database sharding, database virtualization, in memory processing.
Data warehouse
Introduction to data warehouse in connection with business intelligence, design of a specific data warehouse, ETL process.
Data warehouse
SQL Analytic Functions, Multidimensional Expressions (MDX).
NoSQL databases
Introduction to the NoSQL approach, an overview of individual solutions.
MongoDB
Basics of MongoDB database and its properties.
MongoDB
Working with the database and specific queries.
MongoDB
MongoDB scaling, creating of clusters and work.
MongoDB usage
Presentation of a case study.
Hadoop
Parts of the Hadoop ecosystem including MapReduce, HDFS, YARN, Spark and others, scaling using Hadoop and Spark.
Teradata
Solving the problem of data storage using Teradata.
Introduction to the architecture of systems related to the processing of large amounts of data
Features of architecture working with Big Data
Distributability, scalability, high availability and more.
Presentation of a case study of an information system working with Big Data
Architecture for Big Data processing
Description of components processing large data such as data input, storage, processing and analysis with subsequent presentation of results.
The role of IoT in systems Big Data processing
The role of IoT in the IoT system as data producers, IoT as active elements, involvement of IoT devices in the whole architecture.ech processing Big Data
Data processing
Data integration, ETL process and its extension by Hadoop storage, data search including dynamic indexing or full-text search using Solr.
Cloud computing
Characteristics of systems using a cloud solution, properties of a cloud solution from the point of view of processing a large amount of data.
Analytical components
The role of analytics, possible queries over data, analytics procedures used, Business Intelligence requirements.
Example of information systems architecture
Unicorn Application Framework
Data processing systems architecture for Azure
Azure Analytics Pipeline, sending data to Azure, storing data in Azure and real-time processing.
Data processing in Azure
Batch data processing - Map Reduce, Spark, Data Lake Analytics in HDinsight and its management using Azure Data Factory, involvement of Machine Learning.
Detailed analysis of case study components from the point of view of system architecture working with Big Data

Topics for project implementation

Technology of creating a software frontend
HTML5, native mobile applications, web applications, responsive design, universal applications.
Technology for creating backends
SOA, REST API, Cloud computing, application layer implementation, data layer creation technology based on Big Data.
document_check.svg
We use cookies on this website to ensure its functionality and to personalise ads, solely with your consent and in accordance with our Cookies Policy.

By clicking on the "Accept cookies" button, you consent to the use of selected cookies and agree to the transfer of behavioural data for the display of targeted advertising on social and advertising networks. You can choose which information you want to share with us by clicking on the Cookie settings button.