SlideShare a Scribd company logo
Beginner’s Guide to Concepts
of NOSQL and MongoDB
Documented By: - Maulin Shah
Purpose
Purpose of writing this document is to guide beginners to NoSQL concepts and MongoDB database.
Introduction
In recent years as internet and new technologies has become more accessible to people amount of data
that was being generated in 1990’s in one year is now in 2016 being generated in one hour and maybe
less time than that. And this rate is increasing rapidly every day. But, traditional methods and
technologies of collecting and processing data (Like SQL, and different frameworks) were not designed
to handle this huge amount of data. So, new methods and technologies has become necessity of time.
Because of that we are getting to see new technologies like Hadoop, NoSQL, etc. which are specially
designed to handle these amount of data.
History of database technologies
What is database and Database Management System (DBMS)?
Database technologies are collection of organized data. In this type of software data is collected as
schemas and tables. Database management system is an application that interacts with users. User
types their requests in form of query and DBMS process it and give appropriate output to user.
Three main era based models in database technology
1) Navigational (1960-1970)
2) Relational(SQL)(1970 - 2000)
3) Post-relational (NoSQL) (2000 - ongoing)
Relational database (RDBMS) was most successful data model till 2000s.
Shortcomings of RDBMS
1) Inability to handle unstructured/semi-structured data. Because as internet has expanded year over
year more unstructured/semi-structured data is being produced and RDBMS cannot handle that.
2) CRUD operations are not fast enough to give results and are costly operations as it has to deal with
joins and maintaining relationship among different data.
3) Because of Schema structure it is hard to scale out RDBMS.
To overcome these shortcomings NoSQL databases were introduced
NoSQL (Not Only SQL)
NoSQL database is provided for distributed data stores where there is need for large scale of data
storing needed. Because, they do not require fixed schemas, avoid join operations, and scale data
horizontally. In NoSQL database tables stored as ASCII files, tuple represented as row and fields are
separated with tabs.
Type of NoSQL databases
1) Key-Value Oriented (Radis, Riak )
2) Column Oriented (HBase, Cassandra)
3) Document Oriented (MongoDB, CouchDB)
4) Graph data Oriented (Neo4j)
Key-Value Oriented
In this type of database client get, put or delete value for a key. Here Value is Binary Large Object which
only cares about data and not inside it, it is responsibility of application to understand what exactly is
stored.
Column Oriented
In this type of database, databases are based on column and every column is considered individually.
Here values of single column are stored adjacently. Data maintained by columns are in the form of
column – specific files.
Document Oriented
In this type of database documents are mainly stored in value part of key/value store. These databases
are hierarchical tree data structures that can have maps, collections and scalar values.
Graph Oriented
It uses graph structure to generate output of given query. It is mainly used for storing node data and
relationships between these nodes. Defining and finding relationship is very quick and easy in this type
of database.
CAP Theorem
It states that any distributed system; we should have three aspects C (consistency), A (Availability), P
(Partition tolerance). But unfortunately we can have any two at same time in a distributed system.
Consistency – every user should be able to see same data after execution of an operation.
Availability – Less or no downtime.
Partition Tolerance – system should work properly even though communication among server is not
reliable.
Sharding in NoSQL database
We can define it as a partitioning scheme for large databases distributed across various servers and
responsible for giving high performance and scalability. It Divides database into smaller parts (shards)
and replicates it across different servers.
MongoDB
Learning MongoDB is quite easy and fun. MongoDB is Document-Oriented database; it is open source
NoSQL database. We can use it as alternative of RDBMS. It can give high performance by using with
more specialized NoSQL databases.
Conceptual Understanding of MongoDB
1) MongoDB has same concept like schema in Oracle SQL; within a MongoDB instance (like SQL
schema) you can have zero or more database, each acting as high level container for everything else.
2) Collection in MongoDB is same as tables in RDBMS. MongoDB can have zero or more collection in it.
3) Document is MongoDB can be seen as row in RDBMS. Collections are made of zero or more
documents.
4) Fields in MongoDB can be seen as Column in RDBMS. Document can have zero or more fields in it.
5) Indexes concept is same as in SQL.
6) Cursor in MongoDB is new concept which is used when we ask MongoDB for data it returns a pointer
to a result set which is called cursor.
Basic operations in MongoDB
Let’s start playing with MongoDB.
Insert()
db.User.insert[{_id=1,FName:”Maulin”,Lname:”Shah”,address:{street:”Shyamalcrossroad”,
city: “Ahmedabad”, zipCode:380015},Phone:[8980162257,9409032647]},
{_id=2,FName:”Paresh”,Lname:”Patel”,address:{street:”kharadigate”, city: “Surat”,
zipCode:300018},Phone:[8089612275]}]
If we do not have any collection insert() will create one.(!!! Interesting?), here, if we don’t specify id field
MongoDB will generate id by itself as Object id. (wow!!)
DATABASE
COLLECTIONS
DOCUMENTS
FIELDS
Find()
It works like select statement in SQL.
Example
db.example.find() -> select * from example;
db.example.find({Age:24}) -> select * from users where Age=24;
comparison operators
List of operators
$ne -> not equal to, $gt -> greater than, $gte -> greater than equal to, $lt -> less than, $lte -> less than
equal to , $in, $nin -> not in, $mod, $exists
example
db.example.find({Name:{$ne:”Maulin”}})
above query will return all documents from user collection where name is Not Maulin.
Logical operators
List of operators
$And, $or
Example
Db.example.find({Name:”Maulin”,Age:24}) -> It will return all documents where Name is Maulin AND
Age is 24.
Easy!!! Right. So, this is it from my side. Learning new technology is not always hard.
** ALL THE BEST **
** HAPPY LEARNING **

More Related Content

What's hot

Oslo
OsloOslo
assignment3
assignment3assignment3
assignment3Kirti J
 
Json
JsonJson
Json
Uma mohan
 
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
Beat Signer
 
Top 5-nosql
Top 5-nosqlTop 5-nosql
Top 5-nosql
Mehul Jariwala
 
Elasticsearch - basics and beyond
Elasticsearch - basics and beyondElasticsearch - basics and beyond
Elasticsearch - basics and beyond
Ernesto Reig
 
Distributed Databases - Concepts & Architectures
Distributed Databases - Concepts & ArchitecturesDistributed Databases - Concepts & Architectures
Distributed Databases - Concepts & Architectures
Daniel Marcous
 
Robust Module based data management system
Robust Module based data management systemRobust Module based data management system
Robust Module based data management systemRahul Roi
 
Modern Database Systems - Lecture 00
Modern Database Systems - Lecture 00Modern Database Systems - Lecture 00
Modern Database Systems - Lecture 00
Michael Mathioudakis
 
performance analysis between sql ans nosql
performance analysis between sql ans nosqlperformance analysis between sql ans nosql
performance analysis between sql ans nosql
RUFAI YUSUF
 
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtapADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
Vikas Jagtap
 
MongoDB: An Introduction - june-2011
MongoDB:  An Introduction - june-2011MongoDB:  An Introduction - june-2011
MongoDB: An Introduction - june-2011
Chris Westin
 
Extend db
Extend dbExtend db
Extend db
Sridhar Valaguru
 
Robust module based data management
Robust module based data managementRobust module based data management
Robust module based data management
IEEEFINALYEARPROJECTS
 
Mongo db
Mongo dbMongo db
Mongo db
AbhiKhurana8
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
Hyphen Call
 
An HDF-EOS DataBlade using Informix's Object-Relational Database
An HDF-EOS DataBlade using Informix's Object-Relational DatabaseAn HDF-EOS DataBlade using Informix's Object-Relational Database
An HDF-EOS DataBlade using Informix's Object-Relational Database
The HDF-EOS Tools and Information Center
 
No sql databases
No sql databasesNo sql databases
No sql databases
Walaa Hamdy Assy
 

What's hot (20)

Oslo
OsloOslo
Oslo
 
assignment3
assignment3assignment3
assignment3
 
Json
JsonJson
Json
 
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
 
Top 5-nosql
Top 5-nosqlTop 5-nosql
Top 5-nosql
 
Elasticsearch - basics and beyond
Elasticsearch - basics and beyondElasticsearch - basics and beyond
Elasticsearch - basics and beyond
 
Distributed Databases - Concepts & Architectures
Distributed Databases - Concepts & ArchitecturesDistributed Databases - Concepts & Architectures
Distributed Databases - Concepts & Architectures
 
Redshift spike
Redshift spikeRedshift spike
Redshift spike
 
Robust Module based data management system
Robust Module based data management systemRobust Module based data management system
Robust Module based data management system
 
Modern Database Systems - Lecture 00
Modern Database Systems - Lecture 00Modern Database Systems - Lecture 00
Modern Database Systems - Lecture 00
 
performance analysis between sql ans nosql
performance analysis between sql ans nosqlperformance analysis between sql ans nosql
performance analysis between sql ans nosql
 
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtapADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
 
MongoDB: An Introduction - june-2011
MongoDB:  An Introduction - june-2011MongoDB:  An Introduction - june-2011
MongoDB: An Introduction - june-2011
 
Extend db
Extend dbExtend db
Extend db
 
Robust module based data management
Robust module based data managementRobust module based data management
Robust module based data management
 
Mongo db
Mongo dbMongo db
Mongo db
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
 
An HDF-EOS DataBlade using Informix's Object-Relational Database
An HDF-EOS DataBlade using Informix's Object-Relational DatabaseAn HDF-EOS DataBlade using Informix's Object-Relational Database
An HDF-EOS DataBlade using Informix's Object-Relational Database
 
No sql databases
No sql databasesNo sql databases
No sql databases
 
MongoDB
MongoDBMongoDB
MongoDB
 

Viewers also liked

Mongo db manual
Mongo db manualMongo db manual
Mongo db manual
Deysi Gmarra
 
Doctrine MongoDB Object Document Mapper
Doctrine MongoDB Object Document MapperDoctrine MongoDB Object Document Mapper
Doctrine MongoDB Object Document Mapper
Jonathan Wage
 
Mongo db crud guide
Mongo db crud guideMongo db crud guide
Mongo db crud guide
Deysi Gmarra
 
MONGODB
MONGODBMONGODB
MONGODB
Michael Wu
 
Data Migration Between MongoDB and Oracle
Data Migration Between MongoDB and OracleData Migration Between MongoDB and Oracle
Data Migration Between MongoDB and OracleChihYung(Raymond) Wu
 
OSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB TutorialOSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB Tutorial
Steven Francia
 
MongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and Implications
MongoDB
 
MongoDB, E-commerce and Transactions
MongoDB, E-commerce and TransactionsMongoDB, E-commerce and Transactions
MongoDB, E-commerce and Transactions
Steven Francia
 

Viewers also liked (8)

Mongo db manual
Mongo db manualMongo db manual
Mongo db manual
 
Doctrine MongoDB Object Document Mapper
Doctrine MongoDB Object Document MapperDoctrine MongoDB Object Document Mapper
Doctrine MongoDB Object Document Mapper
 
Mongo db crud guide
Mongo db crud guideMongo db crud guide
Mongo db crud guide
 
MONGODB
MONGODBMONGODB
MONGODB
 
Data Migration Between MongoDB and Oracle
Data Migration Between MongoDB and OracleData Migration Between MongoDB and Oracle
Data Migration Between MongoDB and Oracle
 
OSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB TutorialOSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB Tutorial
 
MongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and Implications
 
MongoDB, E-commerce and Transactions
MongoDB, E-commerce and TransactionsMongoDB, E-commerce and Transactions
MongoDB, E-commerce and Transactions
 

Similar to Beginner's guide to Mongodb and NoSQL

EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMINGEVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
ijiert bestjournal
 
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
ijcsity
 
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
ijcsity
 
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
ijcsity
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
Praveen M Jigajinni
 
Choosing your NoSQL storage
Choosing your NoSQL storageChoosing your NoSQL storage
Choosing your NoSQL storage
Imteyaz Khan
 
nosql [Autosaved].pptx
nosql [Autosaved].pptxnosql [Autosaved].pptx
nosql [Autosaved].pptx
Indrani Sen
 
nosql.pptx
nosql.pptxnosql.pptx
nosql.pptx
Prakash Zodge
 
2.Introduction to NOSQL (Core concepts).pptx
2.Introduction to NOSQL (Core concepts).pptx2.Introduction to NOSQL (Core concepts).pptx
2.Introduction to NOSQL (Core concepts).pptx
RushikeshChikane2
 
NOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQLNOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQL
Ramakant Soni
 
NOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdfNOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdf
ajajkhan16
 
CS828 P5 Individual Project v101
CS828 P5 Individual Project v101CS828 P5 Individual Project v101
CS828 P5 Individual Project v101ThienSi Le
 
MongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data scienceMongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data science
bitragowthamkumar1
 
Report 2.0.docx
Report 2.0.docxReport 2.0.docx
Report 2.0.docx
pinstechwork
 
NoSQL Basics and MongDB
NoSQL Basics and  MongDBNoSQL Basics and  MongDB
NoSQL Basics and MongDB
Shamima Yeasmin Mukta
 
A survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo dbA survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo dbAlexander Decker
 
A survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo dbA survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo dbAlexander Decker
 
NOSQL Databases types and Uses
NOSQL Databases types and UsesNOSQL Databases types and Uses
NOSQL Databases types and Uses
Suvradeep Rudra
 
Nosql
NosqlNosql
Nosql
ROXTAD71
 

Similar to Beginner's guide to Mongodb and NoSQL (20)

EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMINGEVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
EVALUATING CASSANDRA, MONGO DB LIKE NOSQL DATASETS USING HADOOP STREAMING
 
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
 
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
 
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
MONGODB VS MYSQL: A COMPARATIVE STUDY OF PERFORMANCE IN SUPER MARKET MANAGEME...
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
 
Choosing your NoSQL storage
Choosing your NoSQL storageChoosing your NoSQL storage
Choosing your NoSQL storage
 
nosql [Autosaved].pptx
nosql [Autosaved].pptxnosql [Autosaved].pptx
nosql [Autosaved].pptx
 
nosql.pptx
nosql.pptxnosql.pptx
nosql.pptx
 
2.Introduction to NOSQL (Core concepts).pptx
2.Introduction to NOSQL (Core concepts).pptx2.Introduction to NOSQL (Core concepts).pptx
2.Introduction to NOSQL (Core concepts).pptx
 
NOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQLNOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQL
 
NOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdfNOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdf
 
CS828 P5 Individual Project v101
CS828 P5 Individual Project v101CS828 P5 Individual Project v101
CS828 P5 Individual Project v101
 
MongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data scienceMongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data science
 
Report 2.0.docx
Report 2.0.docxReport 2.0.docx
Report 2.0.docx
 
NoSQL Basics and MongDB
NoSQL Basics and  MongDBNoSQL Basics and  MongDB
NoSQL Basics and MongDB
 
A survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo dbA survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo db
 
A survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo dbA survey on data mining and analysis in hadoop and mongo db
A survey on data mining and analysis in hadoop and mongo db
 
No sql database
No sql databaseNo sql database
No sql database
 
NOSQL Databases types and Uses
NOSQL Databases types and UsesNOSQL Databases types and Uses
NOSQL Databases types and Uses
 
Nosql
NosqlNosql
Nosql
 

Recently uploaded

一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
v3tuleee
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
John Andrews
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Subhajit Sahu
 
Q1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year ReboundQ1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year Rebound
Oppotus
 
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
ewymefz
 
Everything you wanted to know about LIHTC
Everything you wanted to know about LIHTCEverything you wanted to know about LIHTC
Everything you wanted to know about LIHTC
Roger Valdez
 
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
Timothy Spann
 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
AbhimanyuSinha9
 
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
u86oixdj
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
TravisMalana
 
Influence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business PlanInfluence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business Plan
jerlynmaetalle
 
一比一原版(NYU毕业证)纽约大学毕业证成绩单
一比一原版(NYU毕业证)纽约大学毕业证成绩单一比一原版(NYU毕业证)纽约大学毕业证成绩单
一比一原版(NYU毕业证)纽约大学毕业证成绩单
ewymefz
 
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
mbawufebxi
 
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
dwreak4tg
 
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
pchutichetpong
 
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
u86oixdj
 
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
slg6lamcq
 
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
oz8q3jxlp
 
一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理
一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理
一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理
74nqk8xf
 
一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理
一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理
一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理
g4dpvqap0
 

Recently uploaded (20)

一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
 
Q1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year ReboundQ1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year Rebound
 
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
 
Everything you wanted to know about LIHTC
Everything you wanted to know about LIHTCEverything you wanted to know about LIHTC
Everything you wanted to know about LIHTC
 
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
 
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
 
Influence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business PlanInfluence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business Plan
 
一比一原版(NYU毕业证)纽约大学毕业证成绩单
一比一原版(NYU毕业证)纽约大学毕业证成绩单一比一原版(NYU毕业证)纽约大学毕业证成绩单
一比一原版(NYU毕业证)纽约大学毕业证成绩单
 
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
 
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
 
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
 
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
 
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
 
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
 
一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理
一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理
一比一原版(Coventry毕业证书)考文垂大学毕业证如何办理
 
一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理
一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理
一比一原版(爱大毕业证书)爱丁堡大学毕业证如何办理
 

Beginner's guide to Mongodb and NoSQL

  • 1. Beginner’s Guide to Concepts of NOSQL and MongoDB Documented By: - Maulin Shah
  • 2. Purpose Purpose of writing this document is to guide beginners to NoSQL concepts and MongoDB database. Introduction In recent years as internet and new technologies has become more accessible to people amount of data that was being generated in 1990’s in one year is now in 2016 being generated in one hour and maybe less time than that. And this rate is increasing rapidly every day. But, traditional methods and technologies of collecting and processing data (Like SQL, and different frameworks) were not designed to handle this huge amount of data. So, new methods and technologies has become necessity of time. Because of that we are getting to see new technologies like Hadoop, NoSQL, etc. which are specially designed to handle these amount of data. History of database technologies What is database and Database Management System (DBMS)? Database technologies are collection of organized data. In this type of software data is collected as schemas and tables. Database management system is an application that interacts with users. User types their requests in form of query and DBMS process it and give appropriate output to user. Three main era based models in database technology 1) Navigational (1960-1970) 2) Relational(SQL)(1970 - 2000) 3) Post-relational (NoSQL) (2000 - ongoing) Relational database (RDBMS) was most successful data model till 2000s. Shortcomings of RDBMS 1) Inability to handle unstructured/semi-structured data. Because as internet has expanded year over year more unstructured/semi-structured data is being produced and RDBMS cannot handle that. 2) CRUD operations are not fast enough to give results and are costly operations as it has to deal with joins and maintaining relationship among different data. 3) Because of Schema structure it is hard to scale out RDBMS. To overcome these shortcomings NoSQL databases were introduced NoSQL (Not Only SQL) NoSQL database is provided for distributed data stores where there is need for large scale of data storing needed. Because, they do not require fixed schemas, avoid join operations, and scale data horizontally. In NoSQL database tables stored as ASCII files, tuple represented as row and fields are separated with tabs. Type of NoSQL databases 1) Key-Value Oriented (Radis, Riak ) 2) Column Oriented (HBase, Cassandra) 3) Document Oriented (MongoDB, CouchDB)
  • 3. 4) Graph data Oriented (Neo4j) Key-Value Oriented In this type of database client get, put or delete value for a key. Here Value is Binary Large Object which only cares about data and not inside it, it is responsibility of application to understand what exactly is stored. Column Oriented In this type of database, databases are based on column and every column is considered individually. Here values of single column are stored adjacently. Data maintained by columns are in the form of column – specific files. Document Oriented In this type of database documents are mainly stored in value part of key/value store. These databases are hierarchical tree data structures that can have maps, collections and scalar values. Graph Oriented It uses graph structure to generate output of given query. It is mainly used for storing node data and relationships between these nodes. Defining and finding relationship is very quick and easy in this type of database. CAP Theorem It states that any distributed system; we should have three aspects C (consistency), A (Availability), P (Partition tolerance). But unfortunately we can have any two at same time in a distributed system. Consistency – every user should be able to see same data after execution of an operation. Availability – Less or no downtime. Partition Tolerance – system should work properly even though communication among server is not reliable. Sharding in NoSQL database We can define it as a partitioning scheme for large databases distributed across various servers and responsible for giving high performance and scalability. It Divides database into smaller parts (shards) and replicates it across different servers.
  • 4. MongoDB Learning MongoDB is quite easy and fun. MongoDB is Document-Oriented database; it is open source NoSQL database. We can use it as alternative of RDBMS. It can give high performance by using with more specialized NoSQL databases. Conceptual Understanding of MongoDB 1) MongoDB has same concept like schema in Oracle SQL; within a MongoDB instance (like SQL schema) you can have zero or more database, each acting as high level container for everything else. 2) Collection in MongoDB is same as tables in RDBMS. MongoDB can have zero or more collection in it. 3) Document is MongoDB can be seen as row in RDBMS. Collections are made of zero or more documents. 4) Fields in MongoDB can be seen as Column in RDBMS. Document can have zero or more fields in it. 5) Indexes concept is same as in SQL. 6) Cursor in MongoDB is new concept which is used when we ask MongoDB for data it returns a pointer to a result set which is called cursor. Basic operations in MongoDB Let’s start playing with MongoDB. Insert() db.User.insert[{_id=1,FName:”Maulin”,Lname:”Shah”,address:{street:”Shyamalcrossroad”, city: “Ahmedabad”, zipCode:380015},Phone:[8980162257,9409032647]}, {_id=2,FName:”Paresh”,Lname:”Patel”,address:{street:”kharadigate”, city: “Surat”, zipCode:300018},Phone:[8089612275]}] If we do not have any collection insert() will create one.(!!! Interesting?), here, if we don’t specify id field MongoDB will generate id by itself as Object id. (wow!!) DATABASE COLLECTIONS DOCUMENTS FIELDS
  • 5. Find() It works like select statement in SQL. Example db.example.find() -> select * from example; db.example.find({Age:24}) -> select * from users where Age=24; comparison operators List of operators $ne -> not equal to, $gt -> greater than, $gte -> greater than equal to, $lt -> less than, $lte -> less than equal to , $in, $nin -> not in, $mod, $exists example db.example.find({Name:{$ne:”Maulin”}}) above query will return all documents from user collection where name is Not Maulin. Logical operators List of operators $And, $or Example Db.example.find({Name:”Maulin”,Age:24}) -> It will return all documents where Name is Maulin AND Age is 24. Easy!!! Right. So, this is it from my side. Learning new technology is not always hard. ** ALL THE BEST ** ** HAPPY LEARNING **