Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
prepared for: 20/20 Companies | 8.22.2010
NoSQL - MongoDB
version 1.0
Presenter: Shiv K Sah
Department: OST
Designation: T...
prepared for: 20/20 Companies | 8.22.2010
Agenda
❖ NoSQL Introduction & Overview
❖ MongoDB Introduction & Overview
❖ Why M...
prepared for: 20/20 Companies | 8.22.2010
NoSQL : “Not Only SQL”
prepared for: 20/20 Companies | 8.22.2010
NoSQL Introduction
● NoSQL database, also called Not Only SQL, is an approach to...
prepared for: 20/20 Companies | 8.22.2010
NoSQL Overview
prepared for: 20/20 Companies | 8.22.2010
Types of NoSQL databases
● Key-Value databases: CouchDB, Oracle NoSQL Database, ...
prepared for: 20/20 Companies | 8.22.2010
prepared for: 20/20 Companies | 8.22.2010
Types of NoSQL databases
prepared for: 20/20 Companies | 8.22.2010
Advantage of using NoSQL
● Quicker development times, this is due to aggregates,...
prepared for: 20/20 Companies | 8.22.2010
Disadvantages of using NoSQL
● It Has a Very Narrow Focus
● Standardization and ...
prepared for: 20/20 Companies | 8.22.2010
MongoDB (from humongous)
prepared for: 20/20 Companies | 8.22.2010
● It is a Open Source, cross platform database written in C++.
● It is a documen...
prepared for: 20/20 Companies | 8.22.2010
Basic Overview
Database: Database is a physical container for
collections. Each ...
prepared for: 20/20 Companies | 8.22.2010
● Schema less : MongoDB is document database in which one collection holds
diffe...
prepared for: 20/20 Companies | 8.22.2010
Features
● Document-oriented
● Ad hoc queries
● Indexing
● Replication
● Load ba...
prepared for: 20/20 Companies | 8.22.2010
How mongoDB works?
There is a process “mongod” that acts as a database server.
T...
prepared for: 20/20 Companies | 8.22.2010
➢ JSON:- JSON (JavaScript Object Notation) is a lightweight data-interchange
for...
prepared for: 20/20 Companies | 8.22.2010
Behind MongoDB - JSON / BSON
prepared for: 20/20 Companies | 8.22.2010
MongoDB : Engine
➢ MMAP: For heavy read application
➢ WiredTiger: For heavy writ...
prepared for: 20/20 Companies | 8.22.2010
MongoDB : Tools
➢ MongoDB Cloud Manager
➢ Robomongo
➢ MongoVUE
➢ MongoChef
➢ NoS...
prepared for: 20/20 Companies | 8.22.2010
Sample MongoDB Document
Below given example shows the document structure of a bl...
prepared for: 20/20 Companies | 8.22.2010
Relationship of RDBMS terminology with MongoDB
Below given table shows the relat...
prepared for: 20/20 Companies | 8.22.2010
➢ Download mongoDB from https://mongodb.org/downloads
➢ Install mongoDB (Manual:...
prepared for: 20/20 Companies | 8.22.2010
➢ Authentication - Who are you in MongoDB?
○ Application user
○ Administrator
○ ...
prepared for: 20/20 Companies | 8.22.2010
Manage User and Roles
➢ MongoDB employs Role-Based Access Control (RBAC) to dete...
prepared for: 20/20 Companies | 8.22.2010
Create a system user administrator
use admin
db.createUser({
user: "root",
pwd: ...
prepared for: 20/20 Companies | 8.22.2010
MongoDB : CRUD Example
➢ Create database “icreondb”
➢ Create collection
>use icr...
prepared for: 20/20 Companies | 8.22.2010
Collection : Insert document
prepared for: 20/20 Companies | 8.22.2010
Collection : Update document
prepared for: 20/20 Companies | 8.22.2010
Collection : Delete document
The following diagram shows the same query in SQL:
prepared for: 20/20 Companies | 8.22.2010
Collection : Find in collections
prepared for: 20/20 Companies | 8.22.2010
Collection : Find in collections
prepared for: 20/20 Companies | 8.22.2010
Collection : Filter Query
Comparison Operators
$eq Matches values that are equal...
prepared for: 20/20 Companies | 8.22.2010
Collection : Filter Query
Logical Operators
$or Joins query clauses with a logic...
prepared for: 20/20 Companies | 8.22.2010
Collection : Filter Query
$exists Matches documents that have the specified fiel...
prepared for: 20/20 Companies | 8.22.2010
Collection : Projection
Projection Operators
$ Projects the first element in an ...
prepared for: 20/20 Companies | 8.22.2010
Aggregation Framework
➢ Aggregations are operations that process data records an...
prepared for: 20/20 Companies | 8.22.2010
Aggregation Framework
prepared for: 20/20 Companies | 8.22.2010
Aggregation : Pipeline Operator
Name Description
$match Filter documents
$projec...
prepared for: 20/20 Companies | 8.22.2010
Zip document
{
"_id": "10280",
"city": "NEW YORK",
"state": "NY",
"pop": 5574,
"...
prepared for: 20/20 Companies | 8.22.2010
SQL and the corresponding MongoDB statements
Statement MYSQL MONGODB
Create CREA...
prepared for: 20/20 Companies | 8.22.2010
➢ What is a priority?
○ High consistency
○ High read performance
○ High write pe...
prepared for: 20/20 Companies | 8.22.2010
➢ One to One Relationship
○ Relationships are often embedded
○ Optimized read pe...
prepared for: 20/20 Companies | 8.22.2010
Example: Blogging in MySQL* - MongoDB
prepared for: 20/20 Companies | 8.22.2010
Data Modeling in MongoDB
There are two tools that allow applications to represen...
prepared for: 20/20 Companies | 8.22.2010
Replication
➢ A replica set in MongoDB
is a group of mongod
processes that maint...
prepared for: 20/20 Companies | 8.22.2010
Sharding
➢ Sharding is the process of storing
data records across multiple
machi...
prepared for: 20/20 Companies | 8.22.2010
Database Design?
prepared for: 20/20 Companies | 8.22.2010
Further studies
➢ https://university.mongodb.com
➢ https://docs.mongodb.org/manu...
prepared for: 20/20 Companies | 8.22.2010
Shiv Kumar Sah
Technical Lead
TechExpert@me.com
@shivkumarsah
Thank You
➢ Q & A
...
Nächste SlideShare
Wird geladen in …5
×

MongoDB NoSQL - Developer Guide

1.175 Aufrufe

Veröffentlicht am

MongoDB NoSQL

- NoSQL Introduction & Overview
- MongoDB Introduction & Overview
- Why MongoDB
- Relationship of RDBMS terminology with MongoDB
- Installations server and tools
- The Mongo Shell
- CRUD (Creating, Reading and Updating Data)
- Aggregation Framework
- Schema Design - Patterns
- Replication
- Sharding

Veröffentlicht in: Technologie

MongoDB NoSQL - Developer Guide

  1. 1. prepared for: 20/20 Companies | 8.22.2010 NoSQL - MongoDB version 1.0 Presenter: Shiv K Sah Department: OST Designation: Technical Lead
  2. 2. prepared for: 20/20 Companies | 8.22.2010 Agenda ❖ NoSQL Introduction & Overview ❖ MongoDB Introduction & Overview ❖ Why MongoDB ❖ Relationship of RDBMS terminology with MongoDB ❖ Installing server and tools ❖ The Mongo Shell ❖ CRUD (Creating, Reading and Updating Data) ❖ Aggregation Framework ❖ Schema Design - Patterns ❖ Replication ❖ Sharding ❖ Use case studies of Analytic Application'
  3. 3. prepared for: 20/20 Companies | 8.22.2010 NoSQL : “Not Only SQL”
  4. 4. prepared for: 20/20 Companies | 8.22.2010 NoSQL Introduction ● NoSQL database, also called Not Only SQL, is an approach to data management and database design that's useful for very large sets of distributed data. ● A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in traditional relational databases. ● NoSQL (not only SQL) - a number of approaches and projects aimed for the implementation of database models, with significant differences from those that used in traditional relational database management system with access to the data with the help of SQL. Description schema in the case of NoSQL can be carried out through the use of different data structures: hash tables, arrays, trees, etc. ● For the first time the term "NoSQL" was used in the late 90's. ● Now there are about 150 kinds of NoSQL databases (nosql-database.org)
  5. 5. prepared for: 20/20 Companies | 8.22.2010 NoSQL Overview
  6. 6. prepared for: 20/20 Companies | 8.22.2010 Types of NoSQL databases ● Key-Value databases: CouchDB, Oracle NoSQL Database, MemcacheDB, DynamoDB(Amazon), FoundationDB, HyperDex, Redis, Riak, OrientDB, FairCom c-treeACE, Aerospike, MUMPS ● Document databases: MongoDB, Apache CouchDB, Couchbase, HyperDex, MarkLogic, Lotus Notes, Clusterpoint, OrientDB, Qizx ● Column-family databases: Accumulo, Cassandra, Druid, HBase, Vertica ● Graph databases: Allegro, Neo4J, InfiniteGraph, OrientDB, Virtuoso, Stardog ● Multi-model: OrientDB, FoundationDB, ArangoDB, Alchemy Database, CortexDB ● Migrations, Polyglot persistence and more
  7. 7. prepared for: 20/20 Companies | 8.22.2010
  8. 8. prepared for: 20/20 Companies | 8.22.2010 Types of NoSQL databases
  9. 9. prepared for: 20/20 Companies | 8.22.2010 Advantage of using NoSQL ● Quicker development times, this is due to aggregates, meaning you write to the database once, instead of multiple times for individual entities. ● Easy to scale where relational databases are meant for a single server. ● Prevents having to create tables with custom columns like custom1, custom2, etc. This is due to all NoSQL databases being schema-less ● Prevents having tables with large amounts of NULL values (sparse table). ● It’s More Scalable ● It’s Flexible ● It’s Administrator-Friendly ● It’s Cost-Effective and Open-Source ● The Cloud’s the Limit
  10. 10. prepared for: 20/20 Companies | 8.22.2010 Disadvantages of using NoSQL ● It Has a Very Narrow Focus ● Standardization and Open Source ● Performance and Scaling > Consistency ● A General Lack of Maturity ● It Doesn’t Play Nice with Analytics ● No relations between the tables(collections in mongodb). ● No Stored Procedures in mongodb (NoSql database). ● Most of the administration is depends upon scripting like bash,perl etc., in linux environment. ● GUI mode tools to access the database is not flexibly available in market.
  11. 11. prepared for: 20/20 Companies | 8.22.2010 MongoDB (from humongous)
  12. 12. prepared for: 20/20 Companies | 8.22.2010 ● It is a Open Source, cross platform database written in C++. ● It is a document oriented database that provides, high performance, high availability, and easy scalability. ● It stores data as documents. So it is a document oriented database. ● It does not support SQL It supports a rich, ad-hoc query language of its own. ● It works on concept of collection and document. There are few organizations migrated to MongoDb and it proven benefits to them:. These are: What is a MongoDB? Organization Migrated From Application MTV Networks Multiple RDBMS Centralized content management Cisco Multiple RDBMS Analytics, social networking Foursquare PostgreSQL Social, mobile networking platforms Salesforce marketing Cloud RDBMS Social marketing, analytics Orange Digital MySQL Content management edmunds.com Oracale Billing, online advertising, user data
  13. 13. prepared for: 20/20 Companies | 8.22.2010 Basic Overview Database: Database is a physical container for collections. Each database gets its own set of files on the file system. A single MongoDB server typically has multiple databases. Collection: Collection is a group of MongoDB documents. It is the equivalent of an RDBMS table. Collections do not enforce a schema. Documents within a collection can have different fields. Document: A document is a set of key-value pairs. Documents have dynamic schema. Dynamic schema means that documents in the same collection do not need to have the same set of fields or structure, and common fields in a collection's documents may hold different types of data.
  14. 14. prepared for: 20/20 Companies | 8.22.2010 ● Schema less : MongoDB is document database in which one collection holds different different documents. Number of fields, content and size of the document can be differ from one document to another. ● You can set an index on any attribute of a MongoDb record (as FirstName="Sameer",Address="8 Gandhi Road"), with respect to which, a record can be sort quickly and ordered. ● MongoDb supports various programming languages like C, C# and .NET, C++, Erlang, Haskell, Java, Javascript, Perl, PHP, Python, Ruby, Scala (via Casbah). ● MongoDb supports rich query to fetch the data. ● Data is stored in the form of JSON style documents. ● No complex joins ● MongoDb is easily installable. Why MongoDB?
  15. 15. prepared for: 20/20 Companies | 8.22.2010 Features ● Document-oriented ● Ad hoc queries ● Indexing ● Replication ● Load balancing ● File storage ● Aggregation ● Server-side JavaScript execution ● Capped collections ● HTTP Server for REST API
  16. 16. prepared for: 20/20 Companies | 8.22.2010 How mongoDB works? There is a process “mongod” that acts as a database server. This process attaches itself to a directory with the --dbpath option. (Default dbpath : “/data/db”). And start listening to a specific port number via --port option. (Default port : 27017, 28017 - Http interfaces) Example:- > .mongod.exe --dbpath "C:datadb" --port 28080
  17. 17. prepared for: 20/20 Companies | 8.22.2010 ➢ JSON:- JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. Its built on key value structure and ordered list of values. ➢ BSON:- Binary JSON, is a binary-encoded serialization of JSON-like docu- ments. It supports the embedding of documents and arrays within other doc- uments and arrays. BSON also contains extensions that allow representa- tion of data types that are not part of the JSON spec. Characteristics:- ○ Lightweight: minimum overhead ○ Traversable ○ Efficient: encoding and decoding Behind MongoDB - JSON / BSON
  18. 18. prepared for: 20/20 Companies | 8.22.2010 Behind MongoDB - JSON / BSON
  19. 19. prepared for: 20/20 Companies | 8.22.2010 MongoDB : Engine ➢ MMAP: For heavy read application ➢ WiredTiger: For heavy write applications.
  20. 20. prepared for: 20/20 Companies | 8.22.2010 MongoDB : Tools ➢ MongoDB Cloud Manager ➢ Robomongo ➢ MongoVUE ➢ MongoChef ➢ NoSQL Manager for MongoDB ➢ PHPMoAdmin ➢ PHPmongoDB ➢ mongobird ➢ Mongo Management Studio ➢ 3T MongoChef ➢ 3T Schema Explorer ➢ 3T Data Compare
  21. 21. prepared for: 20/20 Companies | 8.22.2010 Sample MongoDB Document Below given example shows the document structure of a blog site which is simply a comma separated key value pair. { _id: ObjectId(7df78ad8902c) title: 'MongoDB Overview', description: 'MongoDB is no sql database', by: 'tutorials point', url: 'http://www.tutorialspoint.com', tags: ['mongodb', 'database', 'NoSQL'], likes: 100, comments: [ { user:'user1', message: 'My first comment', dateCreated: new Date(2011,1,20,2,15), like: 0 }, { user:'user2', message: 'My second comments', dateCreated: new Date(2011,1,25,7,45), like: 5 } ] } Note: _id is a 12 bytes hexadecimal number which assures the uniqueness of every document. You can provide _id while inserting the document. If you didn't provide then MongoDB provide a unique id for every document. These 12 bytes first 4 bytes for the current timestamp, next 3 bytes for machine id, next 2 bytes for process id of mongodb server and remaining 3 bytes are simple incremental value.
  22. 22. prepared for: 20/20 Companies | 8.22.2010 Relationship of RDBMS terminology with MongoDB Below given table shows the relationship of RDBMS terminology with MongoDB RDBMS MongoDB Database Database Table Collection Tuple/Row Document column Field Table Join Embedded Documents Primary Key Primary Key (Default key _id provided by mongodb itself) Database Server and Client Mysqld/Oracle mongod mysql/sqlplus mongo
  23. 23. prepared for: 20/20 Companies | 8.22.2010 ➢ Download mongoDB from https://mongodb.org/downloads ➢ Install mongoDB (Manual: http://docs.mongodb.org/manual/installation) ➢ Configuration: ○ dbpath - /var/lib/mongo, /data/db ○ log path - /var/log/mongodb ○ Configuration file - /etc/mongod.conf, C:/mongodb/mongod.cfg ○ port - 27017, 28017 ➢ Install mongod service MongoDB Installation
  24. 24. prepared for: 20/20 Companies | 8.22.2010 ➢ Authentication - Who are you in MongoDB? ○ Application user ○ Administrator ○ Backup job ○ Monitoring agents ➢ Authorization - What can you do in MongoDB? ○ CDUD Operation ○ Configure the database ○ Manage sharding/replication ○ User management MongoDB Configuration
  25. 25. prepared for: 20/20 Companies | 8.22.2010 Manage User and Roles ➢ MongoDB employs Role-Based Access Control (RBAC) to determine access for users ➢ MongoDb store user and roles details to admin database. ➢ Each application and user of a MongoDB system should map to a distinct application or administrator ➢ MongoDB provide built-in roles like… ○ Database user role ■ read ■ readWrite ○ Database Administration Roles ■ dbAdmin ■ dbOwner ■ userAdmin
  26. 26. prepared for: 20/20 Companies | 8.22.2010 Create a system user administrator use admin db.createUser({ user: "root", pwd: "root", roles: ["root"] }) db.createUser({ user: "siteUserAdmin", pwd: "password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] })
  27. 27. prepared for: 20/20 Companies | 8.22.2010 MongoDB : CRUD Example ➢ Create database “icreondb” ➢ Create collection >use icreondb switched to db icreondb >db.createCollection("departments") { "ok" : 1 } >db.departments.insert( { "name": "Open Source Technology", "code": "OST", "technology": ["PHP", "Python", "MySQL", "MongoDB"] } )
  28. 28. prepared for: 20/20 Companies | 8.22.2010 Collection : Insert document
  29. 29. prepared for: 20/20 Companies | 8.22.2010 Collection : Update document
  30. 30. prepared for: 20/20 Companies | 8.22.2010 Collection : Delete document The following diagram shows the same query in SQL:
  31. 31. prepared for: 20/20 Companies | 8.22.2010 Collection : Find in collections
  32. 32. prepared for: 20/20 Companies | 8.22.2010 Collection : Find in collections
  33. 33. prepared for: 20/20 Companies | 8.22.2010 Collection : Filter Query Comparison Operators $eq Matches values that are equal to a specified value. $gt Matches values that are greater than a specified value. $gte Matches values that are greater than or equal to a specified value. $lt Matches values that are less than a specified value. $lte Matches values that are less than or equal to a specified value. $ne Matches all values that are not equal to a specified value. $in Matches any of the values specified in an array. $nin Matches none of the values specified in an array.
  34. 34. prepared for: 20/20 Companies | 8.22.2010 Collection : Filter Query Logical Operators $or Joins query clauses with a logical OR returns all documents that match the conditions of either clause. $and Joins query clauses with a logical AND returns all documents that match the conditions of both clauses. $not Inverts the effect of a query expression and returns documents that do not match the query expression. $nor Joins query clauses with a logical NOR returns all documents that fail to match both clauses.
  35. 35. prepared for: 20/20 Companies | 8.22.2010 Collection : Filter Query $exists Matches documents that have the specified field. $type Selects documents if a field is of the specified type. Element Operators Array Operators $all Matches arrays that contain all elements specified in the query. $elemMatch Selects documents if element in the array field matches all the specified $elemMatch conditions $size Selects documents if the array field is a specified size.
  36. 36. prepared for: 20/20 Companies | 8.22.2010 Collection : Projection Projection Operators $ Projects the first element in an array that matches the query condition. $elemMatch Projects the first element in an array that matches the specified $elemMatch condition. $meta Projects the document’s score assigned during $text operation. $slice Limits the number of elements projected from an array. Supports skip and limit slices.
  37. 37. prepared for: 20/20 Companies | 8.22.2010 Aggregation Framework ➢ Aggregations are operations that process data records and return computed results. ➢ MongoDB provides a rich set of aggregation operations that examine and perform calculations on the data sets. ➢ Running data aggregation on the mongod instance simplifies application code and limits resource requirements.
  38. 38. prepared for: 20/20 Companies | 8.22.2010 Aggregation Framework
  39. 39. prepared for: 20/20 Companies | 8.22.2010 Aggregation : Pipeline Operator Name Description $match Filter documents $project Reshape document $group Summarize document $unwind Expand document $sort Order document $limit/$skip Pagination document $redant Restrict document $geoNear Proximity sort document
  40. 40. prepared for: 20/20 Companies | 8.22.2010 Zip document { "_id": "10280", "city": "NEW YORK", "state": "NY", "pop": 5574, "loc": [ -74.016323, 40.710537 ] } Report: ➢ States with Populations above 10 Million ➢ Average City Population by State ➢ Largest and Smallest Cities by State Aggregation : Demo
  41. 41. prepared for: 20/20 Companies | 8.22.2010 SQL and the corresponding MongoDB statements Statement MYSQL MONGODB Create CREATE TABLE users ( id INT NOT NULL AUTO_INCREMENT, user_id Varchar(30), age Number, status char(1), PRIMARY KEY (id) ) db.users.insert( { user_id: "abc123", age: 55, status: "A" } ) OR db.createCollection("users") Alter ALTER TABLE users ADD join_date DATETIME db.users.update( { }, { $set: { join_date: new Date() } }, { multi: true } ) Drop Column ALTER TABLE users DROP COLUMN join_date db.users.update( { }, { $unset: { join_date: "" } }, { multi: true } ) Drop Table DROP TABLE users db.users.drop() Insert INSERT INTO users(user_id, age, status) VALUES ("bcd001", 45, "A") db.users.insert( { user_id: "bcd001", age: 45, status: "A" } ) Select SELECT user_id, status FROM users WHERE status = "A" db.users.find( { status: "A" }, { user_id: 1, status: 1, _id: 0 } ) () Update UPDATE users SET status = "C" WHERE age > 25 db.users.update( { age: { $gt: 25 } }, { $set: { status: "C" } }, { multi: true } ) Delete DELETE FROM users WHERE status = "D" db.users.remove( { status: "D" } )
  42. 42. prepared for: 20/20 Companies | 8.22.2010 ➢ What is a priority? ○ High consistency ○ High read performance ○ High write performance ➢ How does the application access and manipulate data? ○ Read/Write Ratio ○ Types of Queries / Updates ○ Data life-cycle and growth ○ Analytics (MapReduce, Aggregation) Schema Design - Patterns
  43. 43. prepared for: 20/20 Companies | 8.22.2010 ➢ One to One Relationship ○ Relationships are often embedded ○ Optimized read performance. ○ Document provides a holistic representation of objects with embedded entities ➢ One to Many Relations ○ De-normalization ○ Provides data locality using Referencing or Embedding ➢ Many to Many Relations ○ Referencing and indexing Schema Design - Example
  44. 44. prepared for: 20/20 Companies | 8.22.2010 Example: Blogging in MySQL* - MongoDB
  45. 45. prepared for: 20/20 Companies | 8.22.2010 Data Modeling in MongoDB There are two tools that allow applications to represent these relationships: references and embedded documents. References: References: References store the relationships between data by including links or references from one document to another. Applications can resolve these references to access the related data. Embedded Data: Embedded documents capture relationships between data by storing related data in a single document structure. These denormalized data models allow applications to retrieve and manipulate related data in a single database operation. User Document: { _id: <ObjectId1>, username: "user1" } Contact Document: { _id: <ObjectId2>, user_id: <ObjectId1>, phone: "1234567890", email: "user@example.com" } Access Document: { _id: <ObjectId3>, user_id: <ObjectId1>, level: 5, group: "Dev" } { _id: <ObjectId1>, username: "user1", contact: { phone: "1234567890", email: "user@example.com" }, access: { level: 5, group: "Dev" } }
  46. 46. prepared for: 20/20 Companies | 8.22.2010 Replication ➢ A replica set in MongoDB is a group of mongod processes that maintain the same data set ➢ Replica sets provide redundancy and high availability, and are the basis for all production deployments
  47. 47. prepared for: 20/20 Companies | 8.22.2010 Sharding ➢ Sharding is the process of storing data records across multiple machines and is MongoDB’s approach to meeting the demands of data growth. ➢ With sharding, you add more machines to support data growth and the demands of read and write operations.
  48. 48. prepared for: 20/20 Companies | 8.22.2010 Database Design?
  49. 49. prepared for: 20/20 Companies | 8.22.2010 Further studies ➢ https://university.mongodb.com ➢ https://docs.mongodb.org/manual ➢ https://www.mongodb.com/presentations
  50. 50. prepared for: 20/20 Companies | 8.22.2010 Shiv Kumar Sah Technical Lead TechExpert@me.com @shivkumarsah Thank You ➢ Q & A ➢ Feedback

×