NoSQLの基礎とその1つであるMongoDBを学習するコースになります。MongoDBは、人気のDatabase製品の1つであり、Webアプリでも活用されています。
最初にNoSQLとRDB(SQL DB)の対比やNoSQLにはどのような種類があるのかについて簡単に触れていきます。
実際に、MongoDBをローカル環境にインストールして、基本的なCRUD操作から学習していきます。
途中には、演習も含んでいるので、学習の理解を深めることができます。
Aggregation Pipelineまで学習すると、複雑なクエリを組むことができるようになります。
Indexの作成方法から、実行計画の確認方法まで学ぶことができます。
Replicationは、DBを冗長化する手段であり、可用性を向上させます。またShardingは、水平方向のデータ分割と言われて、ビックデータに対応する手段になります。これらの基礎知識・概念を知っておくことで、仮にMongoDBでなく、他のDB製品を利用することになっても、その知識は無駄にはなりません。
またMongoDBにおけるTransactionについても紹介していきます。
公式ドキュメントが英語であることから、スライド解説では、英語表記を取り入れています。
This course will teach you the basics of NoSQL and one of them, MongoDB. MongoDB is one of the most popular databases and is also used in web apps.
First, I will briefly touch on the comparison between NoSQL and RDB (SQL DB) and what types of NoSQL there are.
We will actually install MongoDB in a local environment and learn basic CRUD operations.
It also includes exercises along the way, so you can deepen your understanding of what you're learning.
Once you learn up to Aggregation Pipeline, you will be able to create complex queries.
You can learn everything from how to create an index to how to check an execution plan.
Replication is a means of making DB redundant and improves availability. Sharding is also called horizontal data partitioning and is a means of dealing with big data. By knowing these basic knowledge and concepts, even if you decide to use another DB product instead of MongoDB, that knowledge will not be wasted.
We will also introduce Transactions in MongoDB.
Since the official document is in English, the slide explanations are in English.
Course topics
MongoDB install(Win/Mac) ※Windows Recommended(推奨)
CRUD(Create, Read, Update, Delete)
Data Model
Schema Validation
Data Types
Capped Collection
Write Concern & Journal
Query Operators(Comparison, logical, evaluation etc)
Aggregation Pipeline(match, group, sort, project, lookup etc)
Index & Explain
Covered Queries
Compound, Multi-keys, TTL, Text Index
Index options(unique, partialFilterExpression)
Learn about Replication
Learn about Sharding
Learn about Transaction