We may earn an affiliate commission when you visit our partners.
Course image
Rav Ahuja, Ramesh Sannareddy, and Steve Ryan

This course will provide you with technical hands-on knowledge of NoSQL databases and Database-as-a-Service (DaaS) offerings. With the advent of Big Data and agile development methodologies, NoSQL databases have gained a lot of relevance in the database landscape. Their main advantage is the ability to effectively handle scalability and flexibility issues raised by modern applications.

You will start by learning the history and the basics of NoSQL databases and discover their key characteristics and benefits. You will learn about the four categories of NoSQL databases and how they differ from each other.

Read more

This course will provide you with technical hands-on knowledge of NoSQL databases and Database-as-a-Service (DaaS) offerings. With the advent of Big Data and agile development methodologies, NoSQL databases have gained a lot of relevance in the database landscape. Their main advantage is the ability to effectively handle scalability and flexibility issues raised by modern applications.

You will start by learning the history and the basics of NoSQL databases and discover their key characteristics and benefits. You will learn about the four categories of NoSQL databases and how they differ from each other.

You will explore the architecture and features of several different implementations of NoSQL databases, namely MongoDB, Cassandra, and IBM Cloudant.

Throughout the course you will get practical experience using these NoSQL databases to perform standard database management tasks, such as creating and replicating databases, loading and querying data, modifying database permissions, indexing and aggregating data, and sharding (or partitioning) data.

The course ends with a hands-on project to test your understanding of some of the basics of working with several NoSQL database offerings.

What you'll learn

After completing this course, you will be able to:

  • Define the term NoSQL and the technology it references.
  • Explain the characteristics of NoSQL databases.
  • Describe the major categories of NoSQL datastores (document, key-value, graph, etc.) and their architectural differences.
  • List the most commonly used NoSQL datastores, their primary use cases and benefits (MongoDB, Cassandra, Cloudant, Couch DB, etc.).
  • Understand the factors affecting return on investment for using locally hosted databases, versus hosted database versus DBaaS.
  • Describe the architecture, features, and key benefits of MongoDB as a NoSQL database.
  • Demonstrate hands-on working knowledge of MongoDB and perform various common tasks (including CRUD operations, limit and sort records, indexing, aggregation, replication, sharding)
  • Describe the architecture, features, and key benefits of Cassandra as a NoSQL database.
  • Demonstrate hands-on working knowledge of Cassandra and perform various common tasks (including using the CQL shell, keyspace operations, table operations, and CRUD operations)
  • Describe the architecture, features, and key benefits of Cloudant as a NoSQL database.
  • Demonstrate hands-on working knowledge of Cloudant and perform various common tasks (including creating the database, add documents, query data, utilize the HTTP API).

What's inside

Learning objectives

  • Define the term nosql and the technology it references.
  • Explain the characteristics of nosql databases.
  • Describe the major categories of nosql datastores (document, key-value, graph, etc.) and their architectural differences.
  • List the most commonly used nosql datastores, their primary use cases and benefits (mongodb, cassandra, cloudant, couch db, etc.).
  • Understand the factors affecting return on investment for using locally hosted databases, versus hosted database versus dbaas.
  • Describe the architecture, features, and key benefits of mongodb as a nosql database.
  • Demonstrate hands-on working knowledge of mongodb and perform various common tasks (including crud operations, limit and sort records, indexing, aggregation, replication, sharding)
  • Describe the architecture, features, and key benefits of cassandra as a nosql database.
  • Demonstrate hands-on working knowledge of cassandra and perform various common tasks (including using the cql shell, keyspace operations, table operations, and crud operations)
  • Describe the architecture, features, and key benefits of cloudant as a nosql database.
  • Demonstrate hands-on working knowledge of cloudant and perform various common tasks (including creating the database, add documents, query data, utilize the http api).

Syllabus

Module 1 – Introducing NoSQL
Basics of NoSQL
o Overview of NoSQL
o Characteristics of NoSQL Databases
Read more
o NoSQL Database Categories – Key-Value
o NoSQL Database Categories – Document
o NoSQL Database Categories – Column
o NoSQL Database Categories – Graph
o Database Deployment Options
o Choosing an Appropriate Data Layer
Working with Distributed Data
o ACID vs BASE
o Distributed Databases
o The CAP Theorem
o Challenges in Migrating from RDBMS to NoSQL Databases
Module 2 – Introducing MongoDB – An Open-Source NoSQL Database
Basics of MongoDB
o Overview of MongoDB
o Advantages of MongoDB
o Use Cases for MongoDB
o Lab: Getting Started with MongoDB
Getting Started with MongoDB
o CRUD Operations
o Lab: MongoDB CRUD
o Indexes
o Lab: MongoDB Indexing
o Aggregation Framework
o Lab: MongoDB Aggregation
o Replication & Sharding
o Accessing MongoDB from Python
o Lab: Accessing MongoDB from Python
Module 3 – Introducing Apache Cassandra – An Open-Source NoSQL Database
Cassandra Basics
o Overview of Cassandra
o Architecture of Cassandra
o Key Features of Cassandra
o Cassandra Data Model - Part 1
o Cassandra Data Model - Part 2
o Introduction to Cassandra Query Language (cqlsh)
o Lab: Using the CQL Shell (cqlsh)
Working with Cassandra
o CQL Data Types
o Keyspace Operations
o Lab: Keyspace Operations
o Table Operations
o Lab: Table Operations
o CRUD Operations - Part 1
o CRUD Operations - Part 2
o Lab: CRUD Operations
Module 4 – Introducing IBM Cloudant – A NoSQL DBaaS
Cloudant Basics
o Overview of Cloudant
o Cloudant Architecture and Key Technologies
o Cloudant Benefits and Solutions
o Deployment Options for Cloudant
o Lab: Sign up for IBM Cloud account
o Lab: Create an instance of IBM Cloudant
Working with Cloudant
o Dashboards in Cloudant
o Lab: Dashboards in Cloudant
o Working with Databases in Cloudant
o Lab: Working with Databases in Cloudant
o HTTP API Basics
o Working with the HTTP API
o Query Optimization with Indexes
o Lab: Querying Data using the HTTP API
o How to Access Documentation and Support Resources
Module 5 – Final Project – Working with NoSQL Databases
Peer-Graded Final Assignment
o Lab: Setup & Practice Assignment
o Project Overview
o Lab: Final Assignment Project
o Project Submission & Peer Review
Final Quiz

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Course covers NoSQL databases that are foundational in modern applications
Hands-on work with three major NoSQL databases including MongoDB, Cassandra, and Cloudant
Taught by recognized leaders including Rav Ahuja, Steve Ryan, and Ramesh Sannareddy
Diving into the complexities of NoSQL databases and Database-as-a-Service offerings
Suited for those with a background in standard relational database management
Provides practical knowledge of the relevant technologies

Save this course

Save NoSQL Database Basics to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in NoSQL Database Basics with these activities:
Join a NoSQL database study group
Connect with other learners and discuss NoSQL database concepts, share your understanding, and help each other overcome challenges.
Browse courses on NOSQL Databases
Show steps
  • Find a NoSQL database study group
  • Attend the study group meetings
  • Participate in discussions and share your knowledge
Compile a Collection of NoSQL Database Resources
Gathering and organizing resources will provide you with a valuable repository of information for future reference and deeper exploration of NoSQL databases.
Browse courses on NOSQL Databases
Show steps
  • Use search engines, online forums, and academic databases to identify relevant resources.
  • Filter and select resources that are credible, up-to-date, and cover diverse aspects of NoSQL databases.
  • Organize the resources into categories, such as tutorials, documentation, blog posts, and videos.
  • Consider creating an online repository or document to share your compilation with others.
Work through NoSQL database exercises
Challenge yourself with hands-on exercises designed to reinforce your understanding of the core concepts of NoSQL databases, such as data modeling, CRUD operations, and query optimization.
Browse courses on NOSQL Databases
Show steps
  • Find a set of NoSQL database exercises
  • Walk through the exercises step-by-step
  • Troubleshoot any issues that you encounter
Six other activities
Expand to see all activities and additional details
Show all nine activities
Explore the Apache Cassandra Documentation
Reviewing the official documentation will provide you with comprehensive and up-to-date information on Cassandra's features, syntax, and best practices.
Browse courses on Apache Cassandra
Show steps
  • Visit the Apache Cassandra website and navigate to the documentation section.
  • Read through the Getting Started guide and follow the instructions to set up a Cassandra cluster.
  • Explore the CQL (Cassandra Query Language) reference to understand the syntax and usage of CQL commands.
  • Refer to the documentation for guidance on topics such as data modeling, performance tuning, and security.
Practice CRUD (Create, Read, Update, Delete) Operations with MongoDB
Practicing CRUD operations will strengthen your understanding of the fundamentals of working with NoSQL databases and their practical application.
Browse courses on MongoDB
Show steps
  • Create a MongoDB database and collection.
  • Perform CRUD operations on the collection, including insert, find, update, and delete.
  • Experiment with different data types and query conditions.
Create a basic NoSQL database application
Build a basic NoSQL database application using Python and your preferred NoSQL database. This will help you solidify your understanding of the concepts covered in the course.
Browse courses on MongoDB
Show steps
  • Choose a NoSQL database
  • Install the necessary tools and libraries
  • Create a new NoSQL database project
  • Create a Python script to interact with the database
  • Test and debug your application
Attend a NoSQL database workshop
Immerse yourself in a hands-on environment and learn from experienced practitioners about advanced NoSQL database techniques and best practices.
Browse courses on NOSQL Databases
Show steps
  • Find a NoSQL database workshop that aligns with your interests
  • Register for the workshop
  • Attend the workshop and participate actively
Follow tutorials on advanced NoSQL database topics
Expand your knowledge by exploring tutorials that cover advanced topics in NoSQL databases, such as data modeling for specific use cases, performance optimization, and security best practices.
Browse courses on NOSQL Databases
Show steps
  • Identify advanced NoSQL database topics that you want to learn more about
  • Search for tutorials on these topics
  • Follow the tutorials and complete the exercises
Develop a Visual Representation of NoSQL Database Concepts
Creating a visual representation will enhance your understanding of NoSQL database concepts and improve your ability to explain them to others.
Browse courses on NOSQL Databases
Show steps
  • Choose a specific NoSQL database concept, such as data modeling, consistency models, or query optimization.
  • Brainstorm and sketch out different ways to visually represent the concept.
  • Use a tool like draw.io or Lucidchart to create a visually appealing and informative diagram.
  • Present your visual representation to a peer or mentor for feedback.

Career center

Learners who complete NoSQL Database Basics will develop knowledge and skills that may be useful to these careers:
Data Scientist
Data Scientists use scientific methods and algorithms to extract knowledge and insights from data. They work on a variety of projects, such as developing predictive models, identifying trends, and optimizing business processes. This NoSQL Database Basics course may be useful in helping Data Scientists understand how to use NoSQL databases to store and manage large and complex data sets.
Database Developer
Database Developers design and develop databases to meet the needs of businesses and organizations. They work with stakeholders to define database requirements, develop database designs, and implement and manage databases. They must also ensure that databases are efficient, effective, and meet the needs of the organization. This NoSQL Database Basics course may be useful in helping Database Developers understand the fundamentals of NoSQL databases and how to use them to design and implement efficient and effective databases.
Data Engineer
Data Engineers are responsible for designing, building, and maintaining data pipelines to support data-driven decision-making. They work closely with data scientists and other data professionals to ensure that data is properly collected, processed, and analyzed. This NoSQL Database Basics course may be useful in helping Data Engineers understand the fundamentals of NoSQL databases and how to use them to build efficient and scalable data pipelines.
Machine Learning Engineer
Machine Learning Engineers build and deploy machine learning models to solve real-world problems. They work on a variety of projects, such as developing self-driving cars, improving medical diagnosis, and optimizing supply chains. This NoSQL Database Basics course may be useful in helping Machine Learning Engineers understand how to use NoSQL databases to store and manage the large and complex data sets that are often used to train machine learning models.
Data Analyst
Data Analysts collect, clean, and analyze data to identify trends and patterns. They use their findings to make recommendations and inform decision-making. This NoSQL Database Basics course may be useful in helping Data Analysts understand the fundamentals of NoSQL databases and how to use them to store and manage the large and complex data sets that are often used in data analysis.
Software Developer
Software Developers design, develop, and maintain software applications. They work with stakeholders to define software requirements, develop software designs, and implement and test software applications. They must also ensure that software applications are efficient, effective, and meet the needs of the user. This NoSQL Database Basics course may be useful in helping Software Developers understand the fundamentals of NoSQL databases and how to use them to design and implement efficient and effective software applications.
Cloud Architect
Cloud Architects design and manage cloud computing solutions for businesses and organizations. They work with stakeholders to define cloud computing requirements, develop cloud computing architectures, and implement and manage cloud computing solutions. They must also ensure that solutions are secure, scalable, and cost-effective. This NoSQL Database Basics course may be useful in helping Cloud Architects understand the fundamentals of NoSQL databases and how to use them to design and implement scalable and cost-effective cloud computing solutions.
Data Architect
Data Architects design, build, and maintain data architectures to meet the needs of an organization. They are responsible for developing and implementing data management strategies, as well as ensuring that data is properly stored, managed, and used. This NoSQL Database Basics course may be useful in helping Data Architects understand the fundamentals of NoSQL databases and how to design and implement them effectively.
Cloud Engineer
Cloud Engineers design, build, and maintain cloud computing solutions for businesses and organizations. They work with stakeholders to define cloud computing requirements, develop cloud computing architectures, and implement and manage cloud computing solutions. They must also ensure that solutions are secure, scalable, and cost-effective. This NoSQL Database Basics course may be useful in helping Cloud Engineers understand the fundamentals of NoSQL databases and how to use them to design and implement scalable and cost-effective cloud computing solutions.
Software Architect
Software Architects design and develop the overall architecture of software systems. They work with stakeholders to define system requirements, develop system designs, and ensure that systems are built to meet those requirements. They must also ensure that systems are scalable, reliable, and secure. This NoSQL Database Basics course may be useful in helping Software Architects understand the fundamentals of NoSQL databases and how to use them to design and build scalable and reliable software systems.
Technical Product Manager
Technical Product Managers are responsible for the planning, development, and delivery of software products. They work with stakeholders to define product requirements, develop product roadmaps, and track product progress. They must also ensure that products are delivered on time, within budget, and to the required quality standards. This NoSQL Database Basics course may be useful in helping Technical Product Managers understand the fundamentals of NoSQL databases and how to use them to support the development of innovative and successful software products.
Database Administrator
A Database Administrator is responsible for all aspects involved in maintaining the health and resolving errors in a database or database management system. They implement database changes and make sure that the software and data are working correctly. This NoSQL Database Basics course may be useful in helping Database Administrators operate a database using NoSQL technologies.
Systems Analyst
Systems Analysts analyze and design computer systems to meet the needs of businesses and organizations. They work with stakeholders to define system requirements, develop system designs, and implement and test systems. They must also ensure that systems are efficient, effective, and meet the needs of the organization. This NoSQL Database Basics course may be useful in helping Systems Analysts understand the fundamentals of NoSQL databases and how to use them to design and implement efficient and effective systems.
Software Development Project Manager
Software Development Project Managers overseeing the planning, execution, and delivery of software development projects. They work with stakeholders to define project requirements, develop project plans, and track project progress. They must also ensure that projects are delivered on time, within budget, and to the required quality standards. This NoSQL Database Basics course may be useful in helping Software Development Project Managers understand the fundamentals of NoSQL databases and how to use them to support agile software development projects.
Web Developer
Web Developers design, build, and maintain websites and web applications. They work with designers and other stakeholders to create websites that are visually appealing, user-friendly, and meet the needs of the organization. This NoSQL Database Basics course may be useful in helping Web Developers understand how to use NoSQL databases to store and manage the data that is used by websites and web applications.

Reading list

We've selected ten books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in NoSQL Database Basics.
This comprehensive textbook covers all aspects of database systems, from basic concepts to advanced topics. It would be a valuable resource for students who want to learn more about the theory and practice of database management.
Provides a comprehensive overview of the challenges of designing and building data-intensive applications. It would be a valuable resource for students who want to learn how to build scalable and reliable data systems.
Comprehensive guide to MongoDB, one of the most popular NoSQL databases. It would be a valuable resource for students who want to learn how to use MongoDB in their own projects.
Comprehensive guide to Cassandra, another popular NoSQL database. It would be a valuable resource for students who want to learn how to use Cassandra in their own projects.
Provides a comprehensive overview of the challenges of building high-performance web applications. It would be a valuable resource for students who want to learn how to optimize their web applications for performance.
Provides a catalog of patterns for designing and building microservices. It would be a valuable resource for students who want to learn how to apply best practices to their own microservices projects.
Provides a comprehensive overview of NoSQL databases, including their advantages and disadvantages. It would be a good starting point for students who want to learn more about this topic.
Provides a practical guide to designing and building scalable data systems. It would be a valuable resource for students who want to learn how to build high-performance data systems that can handle large amounts of data.
Provides a comprehensive guide to designing and building microservices. It would be a valuable resource for students who want to learn how to build scalable and resilient microservices architectures.
Provides a comprehensive overview of cloud database solutions. It would be a valuable resource for students who want to learn more about the different options available for storing and managing data in the cloud.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to NoSQL Database Basics.
Introduction to NoSQL Databases
Most relevant
Vector Search with NoSQL Databases using MongoDB &...
Most relevant
Learn MongoDB & Neo4j - Leading NoSQL Databases from...
Most relevant
Guided Project: Get Started with Cloudant NoSQL Database
Most relevant
Guided Project: Get Started with Cloudant NoSQL Database...
Most relevant
Create Your First NoSQL Database with MongoDB and Compass
Most relevant
NoSQL Databases
Most relevant
MongoDB - The Complete Developer's Guide 2024
Most relevant
Data Wrangling with MongoDB
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser