Top Banner
1 Abhishek Bagga 24 th September 2019 NoSQL : Unleash the Power of MongoDB
27

NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

Aug 09, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

1

Abhishek Bagga

24th September 2019

NoSQL : Unleash the Power of MongoDB

Page 2: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

2

Abhishek BaggaSolution Architect

[email protected]

linkedin.com/in/abhishekbagga/

@abhishekbagga28

Page 3: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

3

Session Contents

NoSQL: What, Why & Benefits1.

MongoDB: Database for Modern Applications2

MongoDB: Features 3

MongoDB: Major Advantages4

References5

Page 4: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

4

NOSQL: What is NoSQL???

Page 5: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

5

NOSQL: What is NotOnlySQL???

• Different Types of NoSQL Databases₋ Document Store – MongoDB, Elastic Search₋ Wide Column Store – Hadoop, Cassandra

₋ Key Value/ Tuple Store – DynamoDB, Redis

₋ Graph Stores – Neo4j, InfiniteGraph

Page 6: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

7

NOSQL: Benefits

• NoSQL databases are more scalable, and provide superior performance

• NoSQL Data model addresses several issues that the relational model is not designed to address:₋ Large volumes of rapidly changing structured, semi-structured, and

unstructured data₋ Agile sprints, quick schema iteration, and frequent code pushes₋ Object-oriented programming that is easy to use and flexible₋ Geographically distributed scale-out architecture instead of expensive,

monolithic architecture

Page 7: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

8

Page 8: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

9

MongoDB: The database for modern applications

• General purpose

• Document-based

• Scalable

• Distributed

Page 9: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

10

MongoDB: Features

• Rich JSON Documents

• Powerful Query Language

• All the power of a relational database, and more...

• Made for The Cloud

Page 10: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

11

MongoDB: Features

• Rich JSON Documents₋ The most natural and productive way to work with data.₋ Supports arrays and nested objects as values.₋ Allows for flexible and dynamic schemas

• Powerful Query Language

• All the power of a relational database, and more...

• Made for The Cloud

Page 11: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

12

MongoDB: Features

• Rich JSON Documents

• Powerful Query Language₋ Rich and expressive query language₋ Allows filter and sort by any field₋ Supports aggregations₋ Geo-based search, graph search, and text search.₋ Queries are easily composable (JSON)

• All the power of a relational database, and more...

• Made for The Cloud

Page 12: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

13

MongoDB: Features

• Rich JSON Documents

• Powerful Query Language

• All the power of a relational database, and more...₋ Full ACID transactions.₋ Support for joins in queries.₋ Two types of relationships instead of one:

>reference and embedded.

• Made for The Cloud

Page 13: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

14

MongoDB: Features

• Rich JSON Documents

• Powerful Query Language

• All the power of a relational database, and more...

• Made for The Cloud₋ MongoDB Atlas₋ MongoDB Charts₋ MongoDB Stitch

Page 14: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

15

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster

• Query Faster

• Dynamic Schema

Page 15: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

16

MongoDB: Major Advantages

• Highly Scalable ₋ Scale Cheaper₋ As the database grows, Scale horizontally.

• Code/ Program Faster

• Query Faster

• Dynamic Schema

Page 16: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

17

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster₋ Documents map to data structures in most popular languages₋ Avg 60% reduction in lines of code

• Query Faster

• Dynamic Schema

Page 17: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

18

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster₋ Documents map to data structures in most popular languages₋ Updates & Upserts happens similarly₋ Avg 60% reduction in lines of code

• Query Faster

• Dynamic Schema

Page 18: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

19

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster₋ Documents map to data structures in most popular languages₋ Avg 60% reduction in lines of code

• Query Faster

• Dynamic Schema

Page 19: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

20

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster

• Query Faster₋ No Expensive Joins₋ JSON based query language

• Dynamic Schema

Page 20: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

21

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster

• Query Faster₋ No Expensive Joins₋ JSON based query language

• Dynamic Schema₋ Easily change the shape of your data as your app evolves

Page 21: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

22

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster

• Query Faster₋ No Expensive Joins₋ JSON based query language

• Dynamic Schema₋ Easily change the shape of your data as your app evolves

Page 22: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

23

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster

• Query Faster₋ No Expensive Joins₋ JSON based query language

• Dynamic Schema₋ Easily change the shape of your data as your app evolves₋ Not all documents in a collection need to have the same fields

Page 23: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

24

MongoDB: Major Advantages

• Highly Scalable

• Code/ Program Faster

• Query Faster₋ No Expensive Joins₋ JSON based query language

• Dynamic Schema₋ Easily change the shape of your data as your app evolves₋ Not all documents in a collection need to have the same fields

Page 24: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

25

SQL to MongoDB Mapping

Courtesy: Lauren Schaefer

Page 25: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

26

References

1 MongoDB Docshttps://docs.mongodb.com/

2 SQL to MongoDB Mapping:https://docs.mongodb.com/manual/reference/sql-comparison/

SQL Terms, Functions, and Concepts

MongoDB Aggregation Operators

WHERE $match

GROUP BY $group

HAVING $match

SELECT $project

ORDER BY $sort

LIMIT $limit

SUM() $sum

COUNT() $count$sortByCount

JOIN $lookup

Page 26: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

27

MongoDB.LOCAL.LONDON

• MongoDB is coming to London on 25th September

• Full day of deep-dive technical sessions

• One-on-one consulting with MongoDB experts

• Learn what’s new in MongoDB

• Registration: https://www.mongodb.com/local/london

• Use code ‘Abhishek40’ to get 40% off ticket prices

• Student can get a FREE TICKET₋ DM Naomi - @naomi_pen (Twitter)₋ DM Natasha Wilson - https://www.linkedin.com/in/natashawilson2/

Page 27: NoSQL : Unleash the Power of MongoDB · •NoSQL databases are more scalable, and provide superior performance •NoSQL Data model addresses several issues that the relational model

28

Tip of the IcebergMongoDB has immense Capabilities & Power

Q&A

Abhishek Bagga