29 August 2016 to 2 September 2016
Europe/Berlin timezone
We are currently updating to the new Indico 2 layout!

Application development with relational and non-relational databases

1 Sep 2016, 13:00
Room 163 (FTU)

Room 163



Dr. Mario Lassnig (CERN)


In this workshop, the students will learn how to use relational and non-relational databases to build multi-threaded applications. The focus of the workshop is to teach efficient, safe, and fault-tolerant principles when dealing with high-volume and high-throughput database scenarios. This includes, but is not limited to, systems such as PostgreSQL, Redis or Elasticsearch. A basic understanding of the following things is required: - A programming language (preferably Python or any C-like) - Basic SQL (CREATE, DROP, SELECT, UPDATE, DELETE) - Linux shell scripting (bash or zsh) The course will cover the following three topics: - When to use relational databases, and when not * Relational primer * Non-relational primer * How to design the data model - Using SQL for fun and profit * Query plans and performance analysis * Transactional safety in multi-threaded environments * How to deal with large amounts of sparse metadata * Competetive locking and selection strategies - Building a fault-tolerant database application * Distributed transactions across relational and non-relational databases * SQL injection and forceful breakage * Application-level mitigation for unexpected database issues

Presentation Materials

There are no materials yet.
Your browser is out of date!

Update your browser to view this website correctly. Update my browser now