Welcome to the specialization course of NoSQL Systems.
This course will be completed on six weeks, it will be supported with videos and exercises that will allow you to identify the differences between the relational and NoSQL databases.
As part of these alternative technologies the student will learn the main characteristics and how to implement the typical NoSQL databases, such as Key-value, columnar, document and graph.
After completing this course, a learner will be able to
• Identify what type of NoSQL database to implement based on business requirements (key-value, document, full text, graph, etc.)
• Apply NoSQL data modeling from application specific queries
• Use Atomic Aggregates and denormalization as data modelling techniques to optimize query processing
Software to download:
In case you have a Mac / IOS operating system you will need to use a virtual Machine (VirtualBox, Vmware).
Welcome to the module key-value database. We will learn the components and types of a key-value database, its properties, scalability and indexing. Let's start!
Welcome to the session columnar databases from the NoSQL course.
The learner will understand why a columnar database performs better than a relational in the case of analytical queries.
Document databases with MongoDB
Welcome to the session document databases with MongoDB.
The learner will identify the advantages of storing semistructured data with MongoDB.
Welcome to the session graph databases from the NoSQL course.
The learner will understand that a graph database is a perfect solution for information systems where the relationships between entities are more like graphs or trees which are structures more flexibles.
How to design reliable, scalable and maintainable applications
Welcome to the session How to design reliable, scalable and maintainable applications. The student will identify which database or repository is the best option according to response time, amount of data, type of data and analysis.
The student will learn the last database technologies such as in-memory database, multi-model database, etc. and how these approaches can help to design reliable, scalable and maintainable applications.