SlideShare a Scribd company logo
1 of 30
Bumps and Breezes
Our Journey From RDBMS To MongoDB
Presenters: Ajit Oke and Harsha Undapalli
Organization:
Background of Pre-MongoDB(RDBMS) Environment
Why MongoDB?
Evolution of MongoDB Environment
Database – Bumps and Breezes
MongoDB Application Layer – Bumps and Breezes
Benchmarking Results
Next Steps and Help Needed
Agenda
Our Journey From RDBMS to MongoDB
Pre-MongoDB Environment
 To ensure quality, every Intel product is electrically and
functionally tested thoroughly before it reaches
customer.
 Currently, this multi TB test data is managed by
RDBMS based Decision Support System (DSS).
 Intel CPU products, typically, have a Die attached to
Substrate using thousands of tiny balls. When DSS
team received a request to store ball level test data in
RDBMS, team started facing challenges in terms of
performance and storage.
 After literature review and proof of concept(POC)
analysis, team decided to use MongoDB for Ball
level test data. Substrate
Die
Our Journey From RDBMS to MongoDB
Why MongoDB?
MongoDB
Easy
Learning
Flexible
Schema
Driver
Support
Open Source
Scalability
Query
Performance
Faster performance with
multiple concurrent users
Horizontal scalability
using Sharding
Cost effective solution
with community support
Drivers available for C#,
Python etc.
Support dynamic addition
of fields in a collection
User friendly documentation and
training courses
Our Journey From RDBMS to MongoDB
Evolution of MongoDB Environment
In the last year and half, our MongoDB
environment is continuing to evolve with
the business needs.
This journey was not easy. We had a few
bumps and many breezes along the way.
Our Journey From RDBMS to MongoDB
Breezes - Database
Breezes
Small Install Footprint
 MongoDB binaries have a small footprint.
 Lean installation package of MongoDB
makes it easy to install on even virtual
servers, desktops or laptops.
 In comparison to our current RDBMS
platform, which takes several gigabytes of
storage space, MongoDB is very lightweight
in terms of storage needs.
Our Journey From RDBMS to MongoDB
Breezes
Ease of creating Mongo databases and database objects
 Compared to RDBMS, creating database and database objects is very easy in MongoDB.
 INDEX creation is very intuitive and similar to RDBMS.
 Config file in YAML format with sections.
 Similarity with RDBMS but doesn’t have the overhead of RDBMS.
Our Journey From RDBMS to MongoDB
Breezes
Data Compression
 Collection stats - db.getCollection(‘<collection-name>').stats()
 Example – We are almost getting 3 times compression through wiredTiger which will be huge
on large volume databases.
 WiredTiger data compression comes inbuilt in MongoDB.
Our Journey From RDBMS to MongoDB
Breezes
TTL index
 Eliminates the need of a separate data purger utility.
https://docs.mongodb.com/manual/core/index-ttl/
 Command to change the expiration value -
https://docs.mongodb.com/manual/reference/command/collMod/#dbcmd.collMod
Our Journey From RDBMS to MongoDB
Breezes
Sharding capability
 As database grows in size and usage, MongoDB Sharding
capability provides excellent mechanism of horizontal
scaling using commodity hardware.
 In RDBMS, vertical scalability is achieved by upgrading
server hardware and horizontal scalability is offered using
shared disk storage systems. Both these options are very
expensive compared to MongoDB sharding.
 Creating Sharding environment was formidable task initially,
but after taking a few MongoDB University online courses,
and learning from experiences from MongoDB user
community, we could create a foolproof process for shard
creation.
 Choosing hashed sharding key on high cardinality field
provided us excellent balancing while loading data as well
as storing data.
Scalability Technology Shift over the years
Our Journey From RDBMS to MongoDB
Bumps and Key Learnings - Database
Bumps and Key Learnings
Usage of some config settings
 bindIpAll parameter - changes in
MongoDB 3.6
 keyFile parameter for authentication
 cacheSize parameter for performance
Our Journey From RDBMS to MongoDB
Bumps and Key Learnings
Replica Set/Sharding with
authentication and key file creation
 Creating a key file, was a challenge at that time
because we could not find proper documentation.
Experiences from some of the other users were
referring to third party tools to create hexadecimal
key etc.
 At the end, we realized that we can easily create a
key file using text editor. Since our servers are well
secured inside a firewall and only authorized users
can access them, we are OK with key file having
readable text.
Our Journey From RDBMS to MongoDB
MongoDB Application Layer
Bumps and Breezes
Software Stack in our MongoDB Application
 Software components are developed in .NET C# platform
using MongoDB drivers –
 CSV Importer
 Custom File Loader
 Standard Library
 Standard library for reusable functionalities - Connect to
mongo client, Insert/Update/Delete/Find documents in
Mongo collection.
 Loaders are highly configurable in terms of connection
options, database, collection, user credentials and number
of parallel instances to run.
Standard
Library
Custom
File
Loader
CSV
Importer
Our Journey From RDBMS to MongoDB
Breezes – Application
Breezes
MongoDB C# driver capabilities - https://docs.mongodb.com/ecosystem/drivers/csharp/
 Easy interface to CRUD operations
 Builders – Filters, Sort, Limit, Skip
 Aggregation Framework
 BulkWrite, FindOneAndUpdate
 Mongo client connection options
Our Journey From RDBMS to MongoDB
Breezes
Flexible schema structure – dynamic document creation with flexible fields in same collection.
Our Journey From RDBMS to MongoDB
Breezes
Support for parallel loading
As MongoDB supports document level concurrency, we were able to simultaneously insert several 1000s of documents
into the same collection using our parallel running loaders with configurable number of processes.
85
18
10.5
0
10
20
30
40
50
60
70
80
90
1 4 8
LOADTIMEINSECONDS
NUMBER OF LOADER INSTANCES
Load Performance
12.3
52.4
70
0
10
20
30
40
50
60
70
80
1 4 8
LOADRATE(GB/HOUR)
NUMBER OF LOADER INSTANCES
Load Rate(GB/Hour)
Our Journey From RDBMS to MongoDB
Breezes
 MongoDB Documentation -
https://docs.mongodb.com/
 MongoDB University -
https://university.mongodb.com/courses
Our Journey From RDBMS to MongoDB
Bumps and Key Learnings – Application
Bumps and Key Learnings
Mongo Import options
 Capture success/error message from import command Screen -
 Define the fields and their datatypes in each document (Headerline vs No Headerline) -
 Connect to a replica set -
mongoimport --host svr1:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ --authenticationDatabase MDB_CSV --
type CSV --columnsHaveTypes --headerline --file E:RawDataLoadCSVtest_0034_WW13.CSV --numInsertionWorkers 4 --ignoreBlanks --parseGrace stop
mongoimport --host RS_NAME/svr1:27017, svr2:27017, svr3:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ --
authenticationDatabase MDB_CSV --type CSV --columnsHaveTypes --fieldFile D:MongoFieldFilesfields.txt --file
E:RawDataLoadCSVtest_0034_WW15.CSV --numInsertionWorkers 4 --ignoreBlanks --parseGrace stop
mongoimport --host localhost:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ --authenticationDatabase
MDB_CSV --type CSV --columnsHaveTypes --fieldFile D:MongoFieldFilesfields.txt --file E:RawDataLoadCSVtest_0034_WW14.CSV --
numInsertionWorkers 4 --ignoreBlanks --parseGrace stop
mongoimport --host svr1:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ --authenticationDatabase MDB_CSV --
type CSV --columnsHaveTypes --headerline --file E:RawDataLoadCSVtest_0034_WW13.CSV --numInsertionWorkers 4 --ignoreBlanks --parseGrace stop
Our Journey From RDBMS to MongoDB
Bumps and Key Learnings
 InsertMany  BulkWrite
InsertMany Vs BulkWrite
 No easy way to capture insertion count.
 Internally uses BulkWrite.
 Cannot handle multiple type of
(Insert/Update/Delete) operations at once.
Our Journey From RDBMS to MongoDB
Bumps and Key Learnings
 Replica set connection through C# driver -  Programmatically build the connection string -
mongodb://<username>:<password>@<host1:port1>,..,<hostN:portN>/<authDB>?<connectOptions>
Various Ways of Replica set Connection
Our Journey From RDBMS to MongoDB
Data Access Patterns
 Aggregation queries that roll up the ball data – $group, $project, $match
 3D Scatter plots of ball X and Y positions along with ball data values, to identify certain error patterns
 Clustering or commonality analysis of ball data
0
5
10
15
20
25
30
1 2 3 4 5 6 7 8 9 10
TOTALUNITS
CLUSTER ID
Cluster Distribution
Our Journey From RDBMS to MongoDB
Benchmarking Results
Performance benchmarks : Multi User Scalability
400
410
450
1100
1900
130
131
135
150
190
2 5 10 20 40
TIMEINSECONDS
NUMBER OF CONCURRENT USERS
PERFORMANCE ON RDBMS VS MONGODB
RDBMS Performance in Seconds MongoDB Performance in Seconds
MongoDB Handles up to 40 concurrent
users within acceptable query
performance time
Our Journey From RDBMS to MongoDB
Query Performance - Data vs Cache Size Correlation
0
20
40
60
80
100
120
140
160
180
Default cache size 100 GB cache size Default cache size 200 GB cache size Default cache size 300GB cache size
TIMETOQUERYINMINUTES
DB Query Performance vs Cache Size Correlation
Query For 10K Units
Query For 20K Units
Query For 100K Units
2TB DB Size 3TB DB Size1TB DB Size
Our Journey From RDBMS to MongoDB
Next Steps and Help Needed
Our Next Steps
MongoDB 4.0
 Compliance to ACID properties that includes transaction
across multiple documents. This will allow us to develop
applications and schema with advantages of RDBMS on
NO SQL environment.
 Aggregation pipeline enhancements.
Sharding
 Sharding will be explored further to combine multiple
replica set based MongoDB into a few giant MongoDB
shard environments.
Help Needed from MongoDB
 More inbuilt analytical functions(e.g. percentile, rank,
median) in aggregation pipeline will help in advanced
data analysis.
 Row level security helps with better access control.
 Improvement in aggregate query performance on
shard environment.
Our Journey From RDBMS to MongoDB

More Related Content

What's hot

MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentationHyphen Call
 
Introduction To MongoDB
Introduction To MongoDBIntroduction To MongoDB
Introduction To MongoDBElieHannouch
 
MongoDB Internals
MongoDB InternalsMongoDB Internals
MongoDB InternalsSiraj Memon
 
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
 
Transitioning from SQL to MongoDB
Transitioning from SQL to MongoDBTransitioning from SQL to MongoDB
Transitioning from SQL to MongoDBMongoDB
 
MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...
MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...
MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...MongoDB
 
Performance analysis of MongoDB and HBase
Performance analysis of MongoDB and HBasePerformance analysis of MongoDB and HBase
Performance analysis of MongoDB and HBaseSindhujanDhayalan
 
Webinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineWebinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineMongoDB
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB
 
MongoDB: An Introduction - june-2011
MongoDB:  An Introduction - june-2011MongoDB:  An Introduction - june-2011
MongoDB: An Introduction - june-2011Chris Westin
 
Responsive & Responsible: Implementing Responsive Design at Scale
Responsive & Responsible: Implementing Responsive Design at ScaleResponsive & Responsible: Implementing Responsive Design at Scale
Responsive & Responsible: Implementing Responsive Design at Scalescottjehl
 
Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architectureBishal Khanal
 
Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise MongoDB
 
MongoDB at Scale
MongoDB at ScaleMongoDB at Scale
MongoDB at ScaleMongoDB
 
MongoDB on AWS
MongoDB on AWSMongoDB on AWS
MongoDB on AWSeldariof
 
Securing Your MongoDB Deployment
Securing Your MongoDB DeploymentSecuring Your MongoDB Deployment
Securing Your MongoDB DeploymentMongoDB
 

What's hot (20)

MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
 
Introduction To MongoDB
Introduction To MongoDBIntroduction To MongoDB
Introduction To MongoDB
 
MongoDB Internals
MongoDB InternalsMongoDB Internals
MongoDB Internals
 
Data Migration Between MongoDB and Oracle
Data Migration Between MongoDB and OracleData Migration Between MongoDB and Oracle
Data Migration Between MongoDB and Oracle
 
Transitioning from SQL to MongoDB
Transitioning from SQL to MongoDBTransitioning from SQL to MongoDB
Transitioning from SQL to MongoDB
 
MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...
MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...
MongoDB World 2019: Raiders of the Anti-patterns: A Journey Towards Fixing Sc...
 
Performance analysis of MongoDB and HBase
Performance analysis of MongoDB and HBasePerformance analysis of MongoDB and HBase
Performance analysis of MongoDB and HBase
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Webinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineWebinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage Engine
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
 
MongoDB: An Introduction - june-2011
MongoDB:  An Introduction - june-2011MongoDB:  An Introduction - june-2011
MongoDB: An Introduction - june-2011
 
Responsive & Responsible: Implementing Responsive Design at Scale
Responsive & Responsible: Implementing Responsive Design at ScaleResponsive & Responsible: Implementing Responsive Design at Scale
Responsive & Responsible: Implementing Responsive Design at Scale
 
Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architecture
 
Mongodb
MongodbMongodb
Mongodb
 
Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise
 
Mongo db intro.pptx
Mongo db intro.pptxMongo db intro.pptx
Mongo db intro.pptx
 
MongoDB at Scale
MongoDB at ScaleMongoDB at Scale
MongoDB at Scale
 
MongoDB on AWS
MongoDB on AWSMongoDB on AWS
MongoDB on AWS
 
Securing Your MongoDB Deployment
Securing Your MongoDB DeploymentSecuring Your MongoDB Deployment
Securing Your MongoDB Deployment
 
Mongo db dhruba
Mongo db dhrubaMongo db dhruba
Mongo db dhruba
 

Similar to MongoDB World 2018: Bumps and Breezes: Our Journey from RDBMS to MongoDB

Introduction to MongoDB and its best practices
Introduction to MongoDB and its best practicesIntroduction to MongoDB and its best practices
Introduction to MongoDB and its best practicesAshishRathore72
 
MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...
MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...
MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...Daniel M. Farrell
 
Elevate MongoDB with ODBC/JDBC
Elevate MongoDB with ODBC/JDBCElevate MongoDB with ODBC/JDBC
Elevate MongoDB with ODBC/JDBCMongoDB
 
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...Amazon Web Services
 
Techorama - Evolvable Application Development with MongoDB
Techorama  - Evolvable Application Development with MongoDBTechorama  - Evolvable Application Development with MongoDB
Techorama - Evolvable Application Development with MongoDBbwullems
 
MongoDB.local Sydney: An Introduction to Document Databases with MongoDB
MongoDB.local Sydney: An Introduction to Document Databases with MongoDBMongoDB.local Sydney: An Introduction to Document Databases with MongoDB
MongoDB.local Sydney: An Introduction to Document Databases with MongoDBMongoDB
 
Jumpstart: Your Introduction To MongoDB
Jumpstart: Your Introduction To MongoDBJumpstart: Your Introduction To MongoDB
Jumpstart: Your Introduction To MongoDBMongoDB
 
Node.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQ
Node.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQNode.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQ
Node.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQJoshua Miller
 
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...HostedbyConfluent
 
How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...
How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...
How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...MongoDB
 
Tikal Fuse Day Access Layer Implementation (C#) Based On Mongo Db
Tikal Fuse Day   Access Layer Implementation (C#) Based On Mongo DbTikal Fuse Day   Access Layer Implementation (C#) Based On Mongo Db
Tikal Fuse Day Access Layer Implementation (C#) Based On Mongo DbTikal Knowledge
 
TCO Comparison MongoDB & Oracle
TCO Comparison MongoDB & OracleTCO Comparison MongoDB & Oracle
TCO Comparison MongoDB & OracleEl Taller Web
 
Best Practices for Building Open Source Data Layers
Best Practices for Building Open Source Data LayersBest Practices for Building Open Source Data Layers
Best Practices for Building Open Source Data LayersIBMCompose
 
NoSQL on microsoft azure april 2014
NoSQL on microsoft azure   april 2014NoSQL on microsoft azure   april 2014
NoSQL on microsoft azure april 2014Brian Benz
 
Why NBC Universal Migrated to MongoDB Atlas
Why NBC Universal Migrated to MongoDB AtlasWhy NBC Universal Migrated to MongoDB Atlas
Why NBC Universal Migrated to MongoDB AtlasDatavail
 
MongoDB Tips and Tricks
MongoDB Tips and TricksMongoDB Tips and Tricks
MongoDB Tips and TricksM Malai
 

Similar to MongoDB World 2018: Bumps and Breezes: Our Journey from RDBMS to MongoDB (20)

Introduction to MongoDB and its best practices
Introduction to MongoDB and its best practicesIntroduction to MongoDB and its best practices
Introduction to MongoDB and its best practices
 
MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...
MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...
MongoDB Developer's Notebook, March 2016 -- MongoDB Connector for Business In...
 
Elevate MongoDB with ODBC/JDBC
Elevate MongoDB with ODBC/JDBCElevate MongoDB with ODBC/JDBC
Elevate MongoDB with ODBC/JDBC
 
MongoDB DOC v1.5
MongoDB DOC v1.5MongoDB DOC v1.5
MongoDB DOC v1.5
 
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
 
Techorama - Evolvable Application Development with MongoDB
Techorama  - Evolvable Application Development with MongoDBTechorama  - Evolvable Application Development with MongoDB
Techorama - Evolvable Application Development with MongoDB
 
MongoDB.local Sydney: An Introduction to Document Databases with MongoDB
MongoDB.local Sydney: An Introduction to Document Databases with MongoDBMongoDB.local Sydney: An Introduction to Document Databases with MongoDB
MongoDB.local Sydney: An Introduction to Document Databases with MongoDB
 
Mongodb By Vipin
Mongodb By VipinMongodb By Vipin
Mongodb By Vipin
 
MongoDB 3.4 webinar
MongoDB 3.4 webinarMongoDB 3.4 webinar
MongoDB 3.4 webinar
 
MongoDB
MongoDBMongoDB
MongoDB
 
Jumpstart: Your Introduction To MongoDB
Jumpstart: Your Introduction To MongoDBJumpstart: Your Introduction To MongoDB
Jumpstart: Your Introduction To MongoDB
 
Node.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQ
Node.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQNode.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQ
Node.CQ - Creating Real-time Data Mashups with Node.JS and Adobe CQ
 
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
 
How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...
How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...
How Thermo Fisher Is Reducing Mass Spectrometry Experiment Times from Days to...
 
Tikal Fuse Day Access Layer Implementation (C#) Based On Mongo Db
Tikal Fuse Day   Access Layer Implementation (C#) Based On Mongo DbTikal Fuse Day   Access Layer Implementation (C#) Based On Mongo Db
Tikal Fuse Day Access Layer Implementation (C#) Based On Mongo Db
 
TCO Comparison MongoDB & Oracle
TCO Comparison MongoDB & OracleTCO Comparison MongoDB & Oracle
TCO Comparison MongoDB & Oracle
 
Best Practices for Building Open Source Data Layers
Best Practices for Building Open Source Data LayersBest Practices for Building Open Source Data Layers
Best Practices for Building Open Source Data Layers
 
NoSQL on microsoft azure april 2014
NoSQL on microsoft azure   april 2014NoSQL on microsoft azure   april 2014
NoSQL on microsoft azure april 2014
 
Why NBC Universal Migrated to MongoDB Atlas
Why NBC Universal Migrated to MongoDB AtlasWhy NBC Universal Migrated to MongoDB Atlas
Why NBC Universal Migrated to MongoDB Atlas
 
MongoDB Tips and Tricks
MongoDB Tips and TricksMongoDB Tips and Tricks
MongoDB Tips and Tricks
 

More from MongoDB

MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!MongoDB
 
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...MongoDB
 
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDBMongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDBMongoDB
 
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...MongoDB
 
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB
 
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 MongoDB SoCal 2020: MongoDB Atlas Jump Start MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB SoCal 2020: MongoDB Atlas Jump StartMongoDB
 
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]MongoDB
 
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2MongoDB
 
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...MongoDB
 
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!MongoDB
 
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your MindsetMongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your MindsetMongoDB
 
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas JumpstartMongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas JumpstartMongoDB
 
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...MongoDB
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB
 
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...MongoDB
 
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep DiveMongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep DiveMongoDB
 
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & GolangMongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & GolangMongoDB
 
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...MongoDB
 
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...MongoDB
 
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDBMongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDBMongoDB
 

More from MongoDB (20)

MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
 
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
 
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDBMongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
 
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
 
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
 
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 MongoDB SoCal 2020: MongoDB Atlas Jump Start MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
 
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
 
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
 
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
 
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your MindsetMongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
 
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas JumpstartMongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
 
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
 
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
 
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep DiveMongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
 
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & GolangMongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
 
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
 
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
 
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDBMongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
 

Recently uploaded

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 

Recently uploaded (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 

MongoDB World 2018: Bumps and Breezes: Our Journey from RDBMS to MongoDB

  • 1. Bumps and Breezes Our Journey From RDBMS To MongoDB Presenters: Ajit Oke and Harsha Undapalli Organization:
  • 2. Background of Pre-MongoDB(RDBMS) Environment Why MongoDB? Evolution of MongoDB Environment Database – Bumps and Breezes MongoDB Application Layer – Bumps and Breezes Benchmarking Results Next Steps and Help Needed Agenda Our Journey From RDBMS to MongoDB
  • 3. Pre-MongoDB Environment  To ensure quality, every Intel product is electrically and functionally tested thoroughly before it reaches customer.  Currently, this multi TB test data is managed by RDBMS based Decision Support System (DSS).  Intel CPU products, typically, have a Die attached to Substrate using thousands of tiny balls. When DSS team received a request to store ball level test data in RDBMS, team started facing challenges in terms of performance and storage.  After literature review and proof of concept(POC) analysis, team decided to use MongoDB for Ball level test data. Substrate Die Our Journey From RDBMS to MongoDB
  • 4. Why MongoDB? MongoDB Easy Learning Flexible Schema Driver Support Open Source Scalability Query Performance Faster performance with multiple concurrent users Horizontal scalability using Sharding Cost effective solution with community support Drivers available for C#, Python etc. Support dynamic addition of fields in a collection User friendly documentation and training courses Our Journey From RDBMS to MongoDB
  • 5. Evolution of MongoDB Environment In the last year and half, our MongoDB environment is continuing to evolve with the business needs. This journey was not easy. We had a few bumps and many breezes along the way. Our Journey From RDBMS to MongoDB
  • 7. Breezes Small Install Footprint  MongoDB binaries have a small footprint.  Lean installation package of MongoDB makes it easy to install on even virtual servers, desktops or laptops.  In comparison to our current RDBMS platform, which takes several gigabytes of storage space, MongoDB is very lightweight in terms of storage needs. Our Journey From RDBMS to MongoDB
  • 8. Breezes Ease of creating Mongo databases and database objects  Compared to RDBMS, creating database and database objects is very easy in MongoDB.  INDEX creation is very intuitive and similar to RDBMS.  Config file in YAML format with sections.  Similarity with RDBMS but doesn’t have the overhead of RDBMS. Our Journey From RDBMS to MongoDB
  • 9. Breezes Data Compression  Collection stats - db.getCollection(‘<collection-name>').stats()  Example – We are almost getting 3 times compression through wiredTiger which will be huge on large volume databases.  WiredTiger data compression comes inbuilt in MongoDB. Our Journey From RDBMS to MongoDB
  • 10. Breezes TTL index  Eliminates the need of a separate data purger utility. https://docs.mongodb.com/manual/core/index-ttl/  Command to change the expiration value - https://docs.mongodb.com/manual/reference/command/collMod/#dbcmd.collMod Our Journey From RDBMS to MongoDB
  • 11. Breezes Sharding capability  As database grows in size and usage, MongoDB Sharding capability provides excellent mechanism of horizontal scaling using commodity hardware.  In RDBMS, vertical scalability is achieved by upgrading server hardware and horizontal scalability is offered using shared disk storage systems. Both these options are very expensive compared to MongoDB sharding.  Creating Sharding environment was formidable task initially, but after taking a few MongoDB University online courses, and learning from experiences from MongoDB user community, we could create a foolproof process for shard creation.  Choosing hashed sharding key on high cardinality field provided us excellent balancing while loading data as well as storing data. Scalability Technology Shift over the years Our Journey From RDBMS to MongoDB
  • 12. Bumps and Key Learnings - Database
  • 13. Bumps and Key Learnings Usage of some config settings  bindIpAll parameter - changes in MongoDB 3.6  keyFile parameter for authentication  cacheSize parameter for performance Our Journey From RDBMS to MongoDB
  • 14. Bumps and Key Learnings Replica Set/Sharding with authentication and key file creation  Creating a key file, was a challenge at that time because we could not find proper documentation. Experiences from some of the other users were referring to third party tools to create hexadecimal key etc.  At the end, we realized that we can easily create a key file using text editor. Since our servers are well secured inside a firewall and only authorized users can access them, we are OK with key file having readable text. Our Journey From RDBMS to MongoDB
  • 16. Software Stack in our MongoDB Application  Software components are developed in .NET C# platform using MongoDB drivers –  CSV Importer  Custom File Loader  Standard Library  Standard library for reusable functionalities - Connect to mongo client, Insert/Update/Delete/Find documents in Mongo collection.  Loaders are highly configurable in terms of connection options, database, collection, user credentials and number of parallel instances to run. Standard Library Custom File Loader CSV Importer Our Journey From RDBMS to MongoDB
  • 18. Breezes MongoDB C# driver capabilities - https://docs.mongodb.com/ecosystem/drivers/csharp/  Easy interface to CRUD operations  Builders – Filters, Sort, Limit, Skip  Aggregation Framework  BulkWrite, FindOneAndUpdate  Mongo client connection options Our Journey From RDBMS to MongoDB
  • 19. Breezes Flexible schema structure – dynamic document creation with flexible fields in same collection. Our Journey From RDBMS to MongoDB
  • 20. Breezes Support for parallel loading As MongoDB supports document level concurrency, we were able to simultaneously insert several 1000s of documents into the same collection using our parallel running loaders with configurable number of processes. 85 18 10.5 0 10 20 30 40 50 60 70 80 90 1 4 8 LOADTIMEINSECONDS NUMBER OF LOADER INSTANCES Load Performance 12.3 52.4 70 0 10 20 30 40 50 60 70 80 1 4 8 LOADRATE(GB/HOUR) NUMBER OF LOADER INSTANCES Load Rate(GB/Hour) Our Journey From RDBMS to MongoDB
  • 21. Breezes  MongoDB Documentation - https://docs.mongodb.com/  MongoDB University - https://university.mongodb.com/courses Our Journey From RDBMS to MongoDB
  • 22. Bumps and Key Learnings – Application
  • 23. Bumps and Key Learnings Mongo Import options  Capture success/error message from import command Screen -  Define the fields and their datatypes in each document (Headerline vs No Headerline) -  Connect to a replica set - mongoimport --host svr1:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ --authenticationDatabase MDB_CSV -- type CSV --columnsHaveTypes --headerline --file E:RawDataLoadCSVtest_0034_WW13.CSV --numInsertionWorkers 4 --ignoreBlanks --parseGrace stop mongoimport --host RS_NAME/svr1:27017, svr2:27017, svr3:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ -- authenticationDatabase MDB_CSV --type CSV --columnsHaveTypes --fieldFile D:MongoFieldFilesfields.txt --file E:RawDataLoadCSVtest_0034_WW15.CSV --numInsertionWorkers 4 --ignoreBlanks --parseGrace stop mongoimport --host localhost:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ --authenticationDatabase MDB_CSV --type CSV --columnsHaveTypes --fieldFile D:MongoFieldFilesfields.txt --file E:RawDataLoadCSVtest_0034_WW14.CSV -- numInsertionWorkers 4 --ignoreBlanks --parseGrace stop mongoimport --host svr1:27017 --db MDB_CSV --collection MC_CSV –username readWriteUser --password readwrite$ --authenticationDatabase MDB_CSV -- type CSV --columnsHaveTypes --headerline --file E:RawDataLoadCSVtest_0034_WW13.CSV --numInsertionWorkers 4 --ignoreBlanks --parseGrace stop Our Journey From RDBMS to MongoDB
  • 24. Bumps and Key Learnings  InsertMany  BulkWrite InsertMany Vs BulkWrite  No easy way to capture insertion count.  Internally uses BulkWrite.  Cannot handle multiple type of (Insert/Update/Delete) operations at once. Our Journey From RDBMS to MongoDB
  • 25. Bumps and Key Learnings  Replica set connection through C# driver -  Programmatically build the connection string - mongodb://<username>:<password>@<host1:port1>,..,<hostN:portN>/<authDB>?<connectOptions> Various Ways of Replica set Connection Our Journey From RDBMS to MongoDB
  • 26. Data Access Patterns  Aggregation queries that roll up the ball data – $group, $project, $match  3D Scatter plots of ball X and Y positions along with ball data values, to identify certain error patterns  Clustering or commonality analysis of ball data 0 5 10 15 20 25 30 1 2 3 4 5 6 7 8 9 10 TOTALUNITS CLUSTER ID Cluster Distribution Our Journey From RDBMS to MongoDB
  • 28. Performance benchmarks : Multi User Scalability 400 410 450 1100 1900 130 131 135 150 190 2 5 10 20 40 TIMEINSECONDS NUMBER OF CONCURRENT USERS PERFORMANCE ON RDBMS VS MONGODB RDBMS Performance in Seconds MongoDB Performance in Seconds MongoDB Handles up to 40 concurrent users within acceptable query performance time Our Journey From RDBMS to MongoDB
  • 29. Query Performance - Data vs Cache Size Correlation 0 20 40 60 80 100 120 140 160 180 Default cache size 100 GB cache size Default cache size 200 GB cache size Default cache size 300GB cache size TIMETOQUERYINMINUTES DB Query Performance vs Cache Size Correlation Query For 10K Units Query For 20K Units Query For 100K Units 2TB DB Size 3TB DB Size1TB DB Size Our Journey From RDBMS to MongoDB
  • 30. Next Steps and Help Needed Our Next Steps MongoDB 4.0  Compliance to ACID properties that includes transaction across multiple documents. This will allow us to develop applications and schema with advantages of RDBMS on NO SQL environment.  Aggregation pipeline enhancements. Sharding  Sharding will be explored further to combine multiple replica set based MongoDB into a few giant MongoDB shard environments. Help Needed from MongoDB  More inbuilt analytical functions(e.g. percentile, rank, median) in aggregation pipeline will help in advanced data analysis.  Row level security helps with better access control.  Improvement in aggregate query performance on shard environment. Our Journey From RDBMS to MongoDB