Information on individual educational components (ECTS-Course descriptions) per semester

  
Degree programme:Bachelor Computer Science - Software and Information Engineering
Type of degree:FH BachelorĀ“s Degree Programme
 Full-time
 Winter Semester 2024
  

Course unit titleNo-SQL Databases
Course unit code024717030402
Language of instructionGerman
Type of course unit (compulsory, optional)Compulsory
Semester when the course unit is deliveredWinter Semester 2024
Teaching hours per week2
Year of study2024
Level of course unit (e.g. first, second or third cycle)First Cycle (Bachelor)
Number of ECTS credits allocated3
Name of lecturer(s)024717030402 NoSQL NONAME


Prerequisites and co-requisites
  • Practical experience with relational databases (SQL).
  • Practical knowledge of at least one programming language.
Course content
  • Differences in the data models of relational, key value, columnar, document-oriented and graph databases
  • Challenges in the development of horizontally scaled database management systems
  • Distributed database concepts
    (a) CAP and BASE theorem
    (b) Distributed data storage, transactions, query processing
    (c) Sharding, Partitioning, Replication
  • Introduction to the use of non-relational databases: Redis, MongoDB, HBase, Neo4j and CrateDB
Learning outcomes

The use of alternative databases such as document-oriented or graph-oriented databases for certain applications is steadily increasing because, among other things, It is more suitable to store large amounts of data (horizontal instead of vertical scaling) or the data models better fit the logical structure of the data. Some positive features of relational databases such as however, low data redundancy is abandoned. The rigjt selection or combinations of selected database technologies are the basis for modern information systems.

Technical and methodological competence (F / M)

  • The students can name the challenges of a distributed database management system (DBMS) and describe common solutions.
  • Students can describe the advantages and disadvantages of horizontal scaling.
  • Students can name the reasons for the development of non-relational database management systems.
  • Students can describe and explain different data models of databases as well as their advantages and disadvantages.
  • Students can explain the BASE theorem and CAP theorem and explain the relationships with the ACID properties.
  • Students can use a DBMS from each of the categories: Key Value, Columnar, Document-oriented and Graph databases for simple tasks.
  • Students can select a suitable database technology (relational DB or non-relational DB) based on the requirements of an application.

Social and communicative skills (S / K) and self-skills (S)

  • Students can solve tasks independently and on time (reliability) and communicate and justify the solutions created (expressiveness and demeanor).
  • The students understand the solutions of others and can make constructive suggestions for improvement and deal with feedback (ability to criticize) and reflect on their own abilities and limits (self-reflection ability).
  • Ability and willingness to acquire new knowledge independently and to learn from successes and failures (learning competence and motivation).
Planned learning activities and teaching methods

Integrated lecture: 1 SWS ILV and 1 SWS ILV in groups.

Lecture and weekly exercises that have to be submitted and implemented or presented in the next exercise unit by randomly selected students / small groups and discussed in the group.

 

Assessment methods and criteria
  • Assessment of the exercises (50%)
  • Final written exam (50%) in which the theoretical basics are reproduced, classified and used in simple practical tasks

For a positive grade, a minimum of 50% of the possible points must be achieved in each part of the examination.

Comment

Not applicable

Recommended or required reading
  • Apache Software Foundation (n. y.): Apache HBase. Available at: URL: https://hbase.apache.org/ (Accessed on: 23 February 2020).
  • crate-io (n. y.): CrateDB. Available at: URL: https://crate.io/ (Accessed on: 21 May 2018).
  • Kleppmann, Martin (2017): Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. Revised. Boston: O'Reilly UK Ltd. 
  • MongoDB (n. y.): MongoDB. Available at: URL: https://www.mongodb.com (Accessed on: 23 February 2020).
  • Neo4j (n. y.): Neo4j. Available at: URL: https://neo4j.com/ (Accessed on: 23 February 2020).
  • PostgreSQL Global Development Group (n. y.): PostgreSQL. Available at: URL: https://www.postgresql.org (Accessed on: 23 February 2020).
  • redis.io (n. y.): Redis. redis.io. Available at: URL: https://redis.io (Accessed on: 23 February 2020).
  • Sadalage, Pramod (2009): NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. 01 edition. Upper Saddle River, NJ: Addison-Wesley Professional. 
  • Silberschatz, Abraham; Korth, Henry; Sudarshan, S. (2019): Database System Concepts. 7. Auflage. International. Place of publication not identified: McGraw-Hill Education Ltd.

 

Mode of delivery (face-to-face, distance learning)

Classroom teaching, attandance in the seminars is mandatory

Winter Semester 2024go Top