Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

Modern Databases

Birla Institute Of Technology And Science–Pilani (BITS–Pilani) via Coursera

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Master the complete landscape of modern database technologies and become proficient in designing, implementing, and managing data solutions for today's applications. This comprehensive course equips you with expertise in both traditional relational databases and cutting-edge NoSQL systems, including document databases (MongoDB), graph databases (Neo4j), key-value stores (DynamoDB), in-memory databases (Redis), and cloud databases (AWS RDS). You'll gain deep understanding of distributed database principles, including ACID and BASE properties, consistency models, and the CAP theorem. Learn to process real-time streaming data with ksqlDB, architect modern data warehousing solutions using Snowflake and Databricks, and integrate multiple database technologies in real-world applications using frameworks like Spring Boot. What makes this course unique is its hands-on, practical approach combined with theoretical depth. You'll work with industry-standard platforms, understand when to use each database type, and learn to make informed architectural decisions based on application requirements. By the end, you'll possess the skills to build sophisticated, scalable data-driven applications using the right database for each specific use case.

Syllabus

  • Foundations of Modern Data Management
    • This module explores the evolution of databases, starting with traditional relational database systems and their core principles. It examines the limitations of relational databases and introduces NoSQL databases as an alternative for handling diverse data models and scalability challenges. The course covers the four main types of NoSQL databases—document, key-value, column-family, and graph databases—and provides an introduction to Big Data, discussing its role in modern data management and analytics.
  • Distributed Database Principles - Part 1
    • This module focuses on the critical principles underlying modern database systems, emphasising both relational and distributed databases. Students will begin by reviewing the ACID properties of relational databases, exploring their importance for ensuring data integrity and the challenges they may pose in practical applications. Next, the module will provide a comprehensive understanding of distributed data systems, introducing the BASE properties that govern these architectures. Students will learn to navigate the complexities of distributed databases, appreciating how they differ from traditional relational models. Key concepts of consistency and serialisability will be explored in detail, highlighting their roles in maintaining data accuracy and coherence across transactions. The module will also delve into various types of consistency models, including the CAP theorem, examining their implications for database design and operational efficiency. By the end of this module, students will have a robust understanding of both relational and distributed database principles, equipping them to tackle real-world data management challenges effectively.
  • Distributed Database Principles - Part 2
    • This module offers an in-depth exploration of document-oriented databases, focusing on their growing importance in modern data-driven applications. Students will start by understanding the need for document-oriented databases and the foundational concepts that distinguish them from relational. Using MongoDB as a primary example, the module will cover how documents are stored and managed along with the advantages they offer for handling semi-structured data. The module will also cover querying and manipulating data using MongoDB's powerful query language, enabling students to efficiently retrieve and modify data.
  • Graph Databases
    • This module provides an in-depth exploration of graph databases, a powerful type of NoSQL database designed to manage and query highly connected data. Students will begin by understanding the need for graph databases and the key concepts that set them apart, such as nodes, relationships, and properties. Using Neo4j as the primary example, the course will dive into how graph databases model complex, interconnected data. The module will also cover Cypher, Neo4j's query language, enabling students to retrieve, manipulate, and analyse data with ease.
  • Key-Value Stores
    • This module provides an in-depth exploration of key-value stores, a fundamental type of NoSQL database widely used in modern applications. Students will begin by comprehending the necessity and foundational concepts of key-value stores, examining their role in data management, the various types available, and their unique characteristics and advantages. Building on this foundation, students will develop the skills needed to design efficient key-value store architectures tailored to specific application requirements. Finally, the module will equip students with the ability to effectively retrieve and manipulate data using appropriate query languages and techniques in key-value stores such as DynamoDB. Through practical exercises and real-world examples, students will gain hands-on experience in querying and managing data, preparing them for challenges they may encounter in the field. By the end of this module, students will have a comprehensive understanding of key-value stores and the practical skills to implement them in various data-driven applications.
  • In-Memory Databases
    • This module provides a comprehensive overview of in-memory databases, focusing on their key principles, advantages, and practical applications in modern data management. Students will begin by understanding the foundational concepts of in-memory databases, including their architecture and the performance benefits they offer compared to traditional disk-based systems. Building on this knowledge, students will acquire the skills necessary to design and implement efficient schemas for in-memory databases tailored to specific application requirements. Emphasis will be placed on optimising data structures and access patterns to enhance performance and ensure scalability. Additionally, the module will enable students to achieve proficiency in querying and managing data within in-memory databases. Through hands-on experience with popular platforms such as Redis and Memcached, students will learn to use appropriate query languages and techniques to effectively retrieve and manipulate data. By the end of this module, participants will have a solid understanding of in-memory databases and the practical skills to leverage them effectively in various data-driven applications.
  • Cloud Databases
    • This module offers a comprehensive exploration of cloud databases, focusing on their functionalities, principles, and practical applications in modern data management. Students will begin by acquiring a fundamental understanding of cloud services, including their key features and how they integrate into various computing environments. Building on this foundation, the module will cover the essential principles and advantages of cloud databases, emphasising their scalability, flexibility, and cost-effectiveness compared to traditional database systems. Students will learn how cloud databases can enhance data accessibility and improve operational efficiency in various applications. A significant portion of the module will focus on developing expertise in querying and managing data within cloud databases. Students will utilise appropriate query languages and techniques to perform data operations effectively. Additionally, hands-on experience with platforms such as AWS RDS will provide students with practical skills necessary for real-world applications. By the end of this module, participants will have a solid understanding of cloud databases and the technical proficiency to leverage them effectively in various data-driven projects.
  • Streaming Databases
    • This module offers a comprehensive examination of streaming databases, emphasising the distinct characteristics and importance of streaming data within modern data ecosystems. Students will start by exploring the fundamental features of streaming data and its vital role in facilitating real-time insights and decision-making across diverse industries. Building upon this foundation, the module will cover the principles and techniques crucial for processing streaming data, including topics such as real-time data ingestion, transformation, and analytics. This will equip students with a robust understanding of effectively managing dynamic data flows. A key component of the module is the practical application of streaming data concepts using ksqlDB. Students will develop the skills necessary to design and implement streaming data applications, with a focus on query development, data manipulation, and the creation of real-time data pipelines. Through hands-on exercises, participants will gain valuable experience in leveraging ksqlDB to build robust streaming data solutions. By the end of this module, students will have a comprehensive understanding of streaming databases and the practical expertise to design and implement applications that harness the power of real-time data.
  • Data Warehousing and Lakehouse Architectures
    • This module explores the evolution of data storage and processing architectures, focusing on the transition from traditional data warehouses to modern data lakehouses. Students will gain insights into the architecture, tools, and techniques that enable the integration of structured and unstructured data for advanced analytics. Real-world examples like Snowflake and Databricks Lakehouse will be used to contextualise concepts.
  • Application Development with Modern Databases
    • This module offers a comprehensive introduction to application development, focusing on modern database technologies and their integration within robust, scalable architectures. Through a hands-on, use-case-driven approach, learners will design and implement real-world applications while mastering database selection, schema design, and backend development using modern tech stacks like Spring Boot. The module is structured into three progressive modules, starting with understanding the application and database design principles, followed by exploring the relevant tech stack, and finally implementing real-world use cases in a step-by-step manner.

Taught by

BITS Pilani Instructors Group

Tags

Reviews

Start your review of Modern Databases

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.