Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources

CS202BKK

Basics of Databases

Bangkok Campus
Sep 11, 2023 - Sep 29, 2023
With this course, students will join a comprehensive exploration of databases and their pivotal role in modern information systems.
Bangkok Campus
Sep 11, 2023 - Sep 29, 2023
Nikolay Markov

Faculty

Nikolay Markov

Data Platform Lead at Altenar.

Course length

3 weeks

Duration

3 hours
per day

Total hours

45 hours

Credits

4 ECTS

Language

English

Course type

Offline

Fee for single course

€1500

Fee for degree students

€750

Skills you’ll learn

SQLNoSQLDatabasesQuery OptimizationBasic Data ModelingOLTP/OLAP PrinciplesLandscape of Modern DatabasesBasic Database Administration
OverviewCourse outlineCourse materialsPrerequisitesMethod & grading

Overview

With this course, students will join a comprehensive exploration of databases and their pivotal role in modern information systems. It covers an array of database types, with a focal point on Relational Databases, while also mentioning NoSQL and NewSQL alternatives.

Students will be able to delve into SQL for effective data retrieval and manipulation. Encompassing design principles, data modeling, schema, and SQL query optimization, the curriculum equips learners with a robust foundation. Also, we will address important aspects such as database administration, security measures, and performance tuning.

Learning highlights

  • As a result of this course, students will learn about the internals of databases and the important differences between existing database management systems.
  • Also, students will know SQL and will be able to apply it effectively to both OLTP and analytical tasks.
  • Finally, they will learn the foundations of database administration and performance optimization.

Course outline

15 classes

Dive into the details of the course and get a sense of what each class will cover.
Monday
Tuesday
Wednesday
Thursday
Friday
Monday
1

Session 1

What are databases? History, intro to relational model, basics of relational algebra. CRUD. SQLite

Tuesday
2

Session 2

Introduction to SQL. SELECT, GROUP BY, aggregations, HAVING, ORDER BY. Introduction to JOINs

Wednesday
3

Session 3

DDL, Data types and schemas. Normalization. Reading/Writing test data

Thursday
4

Session 4

Subqueries, window functions, advanced JOINs, date manipulation

Friday
5

Session 5

Introduction to ACID. Stored procedures, triggers. Basics of ORM

Monday
6

Session 6

More on ACID. Isolation levels, transactions, deadlocks, MVCC

Tuesday
7

Session 7

Indexes. LSM-Tree, B-Tree, Hash index. Intro to profiling queries, EXPLAIN

Wednesday
8

Session 8

Scaling databases, Replication, Partitioning. Universal Scalability Law

Thursday
9

Session 9

Administration, backups. High Availability, Load Balancing, CAP theorem

Friday
10

Session 10

DCL, security and maintenance. Certificates, row-level security

Monday
11

Session 11

In-memory databases, embedded databases, key-value stores. From BerkeleyDB to Redis, Memcached

Tuesday
12

Session 12

Document-oriented databases. MongoDB, storing JSON in PostgreSQL

Wednesday
13

Session 13

OLTP and OLAP, Column storages. HBase, Cassandra, Vertica, Greenplum, Clickhouse

Thursday
14

Session 14

Data Modeling, SCD, Star Schema/Data Vault/Anchor. Analytics. dbt

Friday
15

Session 15

Final exam

Prerequisites

Familiarity with the basic Linux command line and Docker containers.

Basics of Python programming.

Basic set theory and algorithms.

Methodology

Listen to lectures

Solve quizzes

Participate in discussions

Practice with various databases using CLI and/or visual SQL IDE tools

Implement multiple small projects as part of their homework

Grading

The final grade will be composed of the following criteria:
10% - Small quizzes
30% - Final exam
50% - Practice tasks and homework
10% - Participation
Nikolay Markov

Faculty

Nikolay Markov

Data Platform Lead at Altenar.

Nikolay is an industry expert with more than 12 years in active software development and system design, as well as an established teacher of many courses, both public and corporate. These cover Data Engineering, system design, Linux, Python/Go programming and some other areas. He participated in ground-up design of data processing systems for many companies in the US, EU and Russia, establishing processes and data culture to gain insights from huge amounts of data with complex requirements. Also, Nikolay is a member of several program committees of various conferences, including SmartData and Moscow Python Conf++. Passionate to take part in sharing knowledge and experience, he participated in many podcasts, roundtable discussions and was one of the founders of Data Breakfast event that now brings together data specialists in many cities across the world.

See full profile

Apply for this course

Snap up your chance to enroll before all spaces fill up.

Basics of Databases

by Nikolay Markov

Total hours

45 Hours

Dates

Sep 11 - Sep 29, 2023

Fee for single course

€1500

Fee for degree students

€750

How to secure your spot

Complete the form below to kickstart your application

Schedule your Harbour.Space interview

If successful, get ready to join us on campus

FAQ

Will I receive a certificate after completion?

Yes. Upon completion of the course, you will receive a certificate signed by the director of the program your course belonged to.

Do I need a visa?

This depends on your case. Please check with the Spanish or Thai consulate in your country of residence about visa requirements. We will do our part to provide you with the necessary documents, such as the Certificate of Enrollment.

Can I get a discount?

Yes. The easiest way to enroll in a course at a discounted price is to register for multiple courses. Registering for multiple courses will reduce the cost per individual course. Please ask the Admissions Office for more information about the other kinds of discounts we offer and what you can do to receive one.