NoSQL schema-optional or non-relational databases support Big Data by providing scalability, high availability, clustering, efficient storage and easy access to huge amounts of semi-structured data.
This introductory course gives you a hands-on overview of the two most popular NoSQL databases—MongoDB and Cassandra—as well as an overview of core concepts and other types of open-source NoSQL databases.
We will cover installation, database shell usage, programmatic access, data modeling, scaling/clustering, categories of NoSQL databases (column-based, document-based, key value-based, or graphic-based), the CAP theorem, and BASE semantics.
You will have the opportunity to gain hands-on experience via homework assignments and a course project that involves setting up, populating (with publicly available datasets), and using a NoSQL of your choice (subject to instructor approval).
Learning Outcomes
At the conclusion of the course, you should be able to
- Describe the need for NoSQL databases and the types of problems NoSQL databases help solve
- Discuss the “foundation concepts” of Mongo DB and Cassandra including semi-structured datasets and wide rows
- Explain how Mongo DB and Cassandra databases support horizontal scaling to support Big Data sharding and clustering
- Demonstrate how Mongo DB and Cassandra support fault tolerance - replication, clustering
- Describe the relationship between cloud computing platforms and the databases we study
- Write code to work with Mongo DB and Cassandra database APIs
- Apply basic administration of Mongo DB and Cassandra
Topics Include
- Why use NoSQL databases?
- Types of NoSQL databases: Key value, document, column, graph
- MongoDB basics
- MongoDB data modeling, GeoData
- MongoDB sharding, replication, clustering
- Cassandra basics
- Cassandra data modeling, real-time data with wide rows
- Cassandra rings, replication
- Other NoSQL databases: Neo4J, DynamoDB
- Accessing NoSQL database APIs: Coding
- Deploying NoSQL databases in the cloud: Amazon AWS
- Using publically available datasets
- CAP theorem, BASE
Skills Needed:
You will need experience using a programming language such as Python, Ruby, or Java and the ability to set up open-source software, databases, tools, and development environments on personal computers.
- Save Your Seat
Help us confirm course scheduling. Enroll at least seven days before your course starts. - Accessing Canvas
Learn more about gaining access to your course on Canvas in our FAQ section. -
Accessibility and Accommodation
For accessibility questions or to request an accommodation, please visit Access for Students with Disabilities or email the Extension registrar. -
Finance Your Education
Here are ways to pay for your education.
Estimated Cost: TBD
Course Availability Notification
Please use this form to be notified when this course is open for enrollment.