Mongodb
-
Upload
jitendra-kasaudhan -
Category
Technology
-
view
551 -
download
1
description
Transcript of Mongodb
Document-oriented Storage
Group : 25Minoo Rouhi VejdaniJitendra Kasaudhan
Foteini PetridiArgon Lohaj
Habtom Kahsay Gidey
Minoo, Jitendra, Foteini, Agon, Habtom 2
Outline:
• Overview & Key features• Trade-offs & Comparisons• Use Cases & Competitors• Hands-on• Performance Test (My SQL vs Mongo)
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 3
Where we are in terms of SDLC:
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 4
What is MongoDB?
MongoDB is a ____ Database.
• No-SQL• Document-oriented • Cross-platform
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 5
History
• It is developed by 10gen • In 2007 as a component of a planned platform as a
service product• In 2009 as a commercial standalone product
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 6
Key Features
• Document Database: The possibility to store data in JSON like documents
• Dynamic schema(schemeless): Flexible insertion of data without a pre-defined schema.
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 7
Key Features(2)
• Auto-Sharding: Automatic and Easy scaling of the database
• Map/Reduce: Providing Flexible aggregation
• Open Source and Free!
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 8
Trade-offs
• High performance and availability.• Dynamic schema: minimizes cost and time when application
requirements changes.
• No joins: If you see yourself doing mission critical decisions inside your application where you will need data from multiple documents /collections, then you should think twice before using MongoDB.
• No complex transactions: MongoDB does provide some basic transactional capabilities. Atomic operations are possible within the scope of a single document but multi-collection commits with rollback generally aren’t feasible.
7/1/2014
9
Trade-offs(2)
7/1/2014 Minoo, Jitendra, Foteini, Agon, Habtom
Ref: http://fr.slideshare.net/DavidPeyruc/transmart-community-meeting-57-nov-13-session-2-mongodb-what-why-and-when
Minoo, Jitendra, Foteini, Agon, Habtom 10
Relational vs. Non-Relational
Relational Non Relational
Scaling Less scalable.Vertical scaling i.e a single server must be made increasingly powerful in order to deal with increased demand. It is possible to spread SQL databases over many servers, but significant additional engineering is generally required.
Highly scalable.Horizontal scaling i.e to add capacity, a database administrator can simply add more commodity servers or cloud instances. The database automatically spreads data across servers as necessary.
Data Manipulation
Specific language using select, insert, update etc
Flexible data manipulation using object oriented API.
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 11
Relational vs. Non-Relational
Relational Non RelationalConsistency Provides better consistency. Compromised consistency
in case of multi-object transactions
Schemas Structure and data types are fixed in advance. To store information about a new data item, the entire database must be altered, during which time the database must be taken offline.
Dynamic schema. Records can add new information on the fly, and unlike SQL table rows, dissimilar data can be stored together as necessary.
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 12
Big Data:Organizations are serving more data, more users, more insight with greater ease.
Customer Data Management:
Embracing new ways of managing and serving information about users, including metadata, preferences, user state and others
Content Management and Delivery:
Leading organizations are relying on MongoDB to build next-generation content management and achieve superior user experience.
Data Hub:MongoDB is often used as the central data hub for all of company data because of its ease of use, and scalability.
Use CasesMongoDB is a general purpose database suitable for most applications and use cases.
7/1/2014
Use Cases
7/1/2014 Minoo, Jitendra, Foteini, Agon, Habtom 13
MongoDB was selected for the enterprise content management (ECM) section of the SAP’s platform-as-a-service (PaaS).
Storing Media Metadata on MongoDB: Includes pictures of every item for sale on eBay.
McAfee Global Threat Intelligence (GTI) is a cloud-based intelligence service that correlates data from millions of sources. MongoDB enables big data analytics and supports the real-time flow of cyberthreat (viruses etc) data between GTI and client products. It currently stores 4 billion documents – terabytes of data.
“MetLife Wall” :An application allowing MetLife to see a 360-degree view of all of the customer preferences and interactions, including policy details and transactions across lines of business.
http://www.mongodb.com/presentations/
Minoo, Jitendra, Foteini, Agon, Habtom 14
Use Case: Telefónica
Drawbacks of Oracle-based solution:
• Low performance issues
• Oversized storage requirements
• Data outdated
“Customers Data were neither shared nor usable”
They built a Personalisation Server using Oracle 11g to store customers profile data
Goal : “Rich services to market faster than ever before.”
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 15
Use case: Telefónica(2)
Results:
• Simple, extensible and maintainable schema
• Performance boost
• Lower storage requirements
(one third)
They built an new version of the Personalisation Server with MongoDB 2.0 in 3 months using only 3-4 developers. Some existing features were enhanced and new ones were added.
MongoDB Solution:
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 16
Use case: Telefónica(3) Benefits :
• Cost Reduction
• Low time to market and more extensibility
• New opportunities for other products in market
7/1/2014
Source : http://www.mongodb.com/presentations/business-track-how-mongodb-helps-telefonica-digital-accelerate-time-market
Minoo, Jitendra, Foteini, Agon, Habtom 17
Major Competitors
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 18
No-SQL database comparison
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 197/1/2014
Hands On
1. Database Structure (Schema Design)
1.1. Concept Overview – Referenced vs. Embedded
2. CRUD Operations
3. MongoDB Web UI
4. MongoDB Trainings
5. Data View
Contents:
Minoo, Jitendra, Foteini, Agon, Habtom 207/1/2014
Performance Test(My SQL vs Mongo)
Minoo, Jitendra, Foteini, Agon, Habtom 217/1/2014
Thank You!Q&A
Minoo, Jitendra, Foteini, Agon, Habtom 227/1/2014
Backup Slides
Minoo, Jitendra, Foteini, Agon, Habtom 23
Installation Process(Windows)
1. Download the latest production release of MongoDB :
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 24
Installation Process(Windows)
2. Extract the downloaded archive to C:
7/1/2014
Minoo, Jitendra, Foteini, Agon, Habtom 25
Installation Process(Windows)
3. MongoDB requires a data folder to store its files. The default location for the MongoDB data directory is C:\data\db.
4. To start MongoDB, execute from the Command Prompt: C:\mongodb\bin\mongod.exe
7/1/2014
5. Connect to MongoDB using the mongo.exe shell. Open another Command Prompt and issue the command: C:\mongodb\bin\mongod.exe
Installation Process(Windows)
Minoo, Jitendra, Foteini, Agon, Habtom 27
Backup Slides
7/1/2014
Hands On (1)
Minoo, Jitendra, Foteini, Agon, Habtom 28
Backup Slides
7/1/2014
Hands On (2)
Minoo, Jitendra, Foteini, Agon, Habtom 29
Backup Slides
7/1/2014
Hands On (3)
Minoo, Jitendra, Foteini, Agon, Habtom 30
Backup Slides
7/1/2014
Hands On (4)
Minoo, Jitendra, Foteini, Agon, Habtom 31
Backup Slides
7/1/2014
Hands On (5)
Minoo, Jitendra, Foteini, Agon, Habtom 32
Backup Slides
7/1/2014
Hands On (6)
Minoo, Jitendra, Foteini, Agon, Habtom 33
Backup Slides
7/1/2014
Hands On (7)
Minoo, Jitendra, Foteini, Agon, Habtom 34
Reference
• http://www.mongodb.org/• http://en.wikipedia.org/wiki/MongoDB• http
://docs.mongodb.org/manual/tutorial/isolate-sequence-of-operations/• http://docs.mongodb.org/manual/faq/fundamentals/#does-mongodb-sup
port-transactions• http://www.mongodb.com/document-databases• http://www.mongodb.com/presentations/
7/1/2014