#MDBlocal March 20, 2018 Jumpstart: Introduction to MongoDB
#MDBlocal Mac McIntosh Director of Pre-Sales & Services MongoDB linkedin.com/in/mac-mcintosh
Safe Harbor Statement This presentation contains “forward-looking statements” within the meaning of Section 27A of the Securities Act of 1933, as amended, and Section 21E of the Securities Exchange Act of 1934, as amended. Such forward-looking statements are subject to a number of risks, uncertainties, assumptions and other factors that could cause actual results and the timing of certain events to differ materially from future results expressed or implied by the forward-looking statements. Factors that could cause or contribute to such differences include, but are not limited to, those identified our filings with the Securities and Exchange Commission. You should not rely upon forward-looking statements as predictions of future events. Furthermore, such forward-looking statements speak only as of the date of this presentation. In particular, the development, release, and timing of any features or functionality described for MongoDB products remains at MongoDB’s sole discretion. This information is merely intended to outline our general product direction and it should not be relied on in making a purchasing decision nor is this a commitment, promise or legal obligation to deliver any material, code, or functionality. Except as required by law, we undertake no obligation to update any forward-looking statements to reflect events or circumstances after the date of such statements. #MDBlocal
#MDBlocal MongoDB Overview
1000+ employees About MongoDB, Inc. 5000+ customers 17 offices worldwide Publicly Traded (MDB)
About MongoDB.
Hash-Based Sharding Roles Kerberos On-Prem Monitoring 2.4 2.6 3.0 3.2 $out Index Intersection Text Search Field-Level Redaction LDAP & x509 Auditing Document Validation $lookup Fast Failover Simpler Scalability Aggregation ++ Encryption At Rest In-Memory Storage Engine BI Connector MongoDB Compass APM Integration Profiler Visualization Auto Index Builds Backups to File System Doc-Level Concurrency Compression Storage Engine API ≤50 replicas Auditing ++ Ops Manager Intra-cluster compression Views Log Redaction Linearizable Reads Graph Processing Decimal Collations Faceted Navigation Spark Connector ++ Zones ++ Aggregation ++ Auto-balancing ++ ARM, Power, zSeries BI Connector ++ Compass ++ Hardware Monitoring Server Pool LDAP Authorization Encrypted Backups Cloud Foundry Integration 3.4 The Evolution of MongoDB 3.6 Change Streams Retryable Writes Expressive Array Updates Query Expressivity Causal Consistency Consistent Sharded Secondary Reads Compass Community Compass ++ Ops Manager ++ Query Advisor Schema Validation End to End Compression IP Whitelisting Default Bind to Localhost Operational Session Mgmt. WiredTiger 1m+ Collections MongoDB BI Connector ++ Expressive $lookUp R Driver Charts (post GA) Atlas Cross Region Replication Atlas Auto Storage Scaling 4.0 ACIDTransactions COMING NH SUMMER 2018! MongoDB Atlas Fully Managed DBaaS Wired Tiger Storage Engine
Relational Expressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
The World Has Changed Data Risk Time Cost
NoSQL Scalability & Performance Always On, Global Deployments FlexibilityExpressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
Nexus Architecture Scalability & Performance Always On, Global Deployments FlexibilityExpressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
#MDBlocal Document Model
Anyone recognise this … #MDBlocal
Document Model { first_name: ‘Paul’, surname: ‘Miller’, city: ‘London’, location: { type : ‘Point’, coordinates : [45.123,47.232] }, cars: [ { model: ‘Bentley’, year: 1973, value: 100000, … }, { model: ‘Rolls Royce’, year: 1965, value: 330000, … } ] } MongoDB RDBMS MongoDB Atlas Fully Managed DBaaS #MDBlocal
Documents are Flexible { product_name: ‘Acme Paint’, color: [‘Red’, ‘Green’], size_oz: [8, 32], finish: [‘satin’, ‘eggshell’] } { product_name: ‘T-shirt’, size: [‘S’, ‘M’, ‘L’, ‘XL’], color: [‘Heather Gray’ … ], material: ‘100% cotton’, wash: ‘cold’, dry: ‘tumble dry low’ } { product_name: ‘Mountain Bike’, brake_style: ‘mechanical disc’, color: ‘grey’, frame_material: ‘aluminum’, no_speeds: 21, package_height: ‘7.5x32.9x55’, weight_lbs: 44.05, suspension_type: ‘dual’, wheel_size_in: 26 } Documents in the same product catalog collection in MongoDB MongoDB Atlas Fully Managed DBaaS #MDBlocal
Rich Query Language MongoDBExpressive CRUD Queries • Find anyone with phone # “1-212…” • Check if the person with number “555…” is on the “do not call” list Geospatial • Find the best offer for the customer at geo coordinates of 42nd St. and 6th Ave Text Search • Find all tweets that mention the firm within the last 2 days Graph queries ($graphLookup) Native Binary JSON support • Add an additional phone number to Mark Smith’s without rewriting the document • Select just the mobile phone number in the list • Sort on the modified date { customer_id : 1, first_name : "Mark", last_name : "Smith", city : "San Francisco", phones: [ { number : “1-212-777-1212”, dnc : true, type : “home” }, { number : “1-212-777-1213”, type : “cell” }] } Left outer join ($lookup) • Query for all San Francisco residences, lookup their transactions, and sum the amount by person • Count and sort number of customers by city • Match customer_id and group by city MongoDB Atlas Fully Managed DBaaS #MDBlocal • Query for all people within 3 degrees of separation from Mark Aggregation
17 Aggregation Features Aggregation Framework stages operators, and comparison A feature rich analytical framework ❖$match ❖$group ❖$facet ❖$geoNear ❖$graphLookup ❖$lookup ❖$project ❖$sort ❖$unwind Pipeline Stages ❖Mathematical ➢$add, $abs, $substract, $multiply, $divide, $log, $log10, $stdDevPop, $stdDevSam, $avg, $sqrt, $pow, $sum, $zip, etc. ❖Array ➢$push, $reduce, $reverseArray, $addToSet, $arrayElemAt, $slice, etc. ❖Conditionals ➢$and, $or, $eq, $lt, $lte, $gt, $gte, $cmp, $cond, $switch, $in, etc. Operators ❖Date ➢$dateFromParts, $dateToParts, $dateFromString, $dateToString, $dayOfMonth, $isoWeek, $minute, $month, $year, etc. ❖String ➢$toUpper, $toLower, $substr, $strcasecmp, $concat, $split, etc. ❖Literals ➢$exp, $let, $literal, $map, $type, etc. MongoDB Atlas Fully Managed DBaaS #MDBlocal
18 Fully featured secondary indexes ❖Primary Index ➢Every Collection has a primary key index ❖Compound Index ➢Index against multiple keys in the document ❖MultiKey Index ➢Index into arrays ❖Text Indexes ➢support for text searches ❖GeoSpatial Indexes ➢2d & 2dSphere indexes for spatial geometries ❖Hashed Indexes ➢Hashed based values for sharding Index Types ❖TTL Indexes ➢Single Field indexes, when expired delete the document ❖Unique Indexes ➢Ensures value is not duplicated ❖Partial Indexes ➢Expression based indexes, allowing indexes on subsets of data ❖Case Insensitive Indexes ➢supports text search using case insensitive search ❖Sparse Indexes ➢Only index documents which have the given field Index Features MongoDB Atlas Fully Managed DBaaS #MDBlocal Fully Indexable
Drivers & Frameworks Morphia MEAN Stack MongoDB Atlas Fully Managed DBaaS #MDBlocal
MongoDB: Store objects directly ... Account Account Opportunity Opportunity Contact Contact Lead Lead Objects Database MongoDB Atlas Fully Managed DBaaS #MDBlocal
21 Eliminating the ORM pain Thousands of lines of configuration code…. Total pain in the... Account Opportunity Contact ARR Address Contact Roles Opportunity Team Phone Phone Objects Tables Lead NameName Activity History Open Activities Account Detail Summary Mapping Layer...which needs to be updated whenever the schema changes MongoDB Atlas Fully Managed DBaaS #MDBlocal
#MDBlocal Availability & Workload Isolation
Node 1 (Primary) Node 2 (Secondary) Node 3 (Secondary) Replication Replication Heartbeat Replica Set MongoDB Atlas Fully Managed DBaaS #MDBlocal
Node 2 (Secondary) Node 3 (Secondary) Heartbeat Primary Election Node 1 (Primary) Replica Set - Failure
Node 1 (Primary) Node 2 (Primary) Node 3 (Secondary) Heartbeat Replication Replica Set - Failover
Node 2 (Primary) Node 3 (Secondary) Heartbeat Replication Node 1 (Recovery) Replication Replica Set - Recovery
Node 2 (Primary) Node 3 (Secondary) Heartbeat Replication Node 1 (Secondary) Replication Replica Set - Recovered
Replica Sets – Workload Isolation • Replica sets enable workload isolation • Example: Operational workloads on the primary node, analytical workloads on the secondary nodes eCommerce Application MongoDB Primary In-memory Storage Engine MongoDB Secondary WiredTiger Storage Engine User Data Sessions, Cart, Recommendations MongoDB Secondary WiredTiger Storage Engine Persisted User Data MongoDB Atlas Fully Managed DBaaS #MDBlocal
#MDBlocal Scalability & Data Locality
Elastic Scalability: Sharding
Deploy Global, Access Local MongoDB Atlas Fully Managed DBaaS #MDBlocal
Replicate Data Near Users MongoDB Atlas Fully Managed DBaaS #MDBlocal
#MDBlocal Security
MongoDB Security Features Business Needs MongoDB Security Features Authentication SCRAM, LDAP*, Kerberos*, x.509 Certificates Authorization Built-in Roles, User-Defined Roles, Field-Level Redaction Auditing* Admin, DML, DDL, Role-Based Encryption Network: SSL (with FIPS 140-2*) Disk: Encrypted Storage Engine* or Partner Solutions *Included with MongoDB Enterprise Advanced MongoDB Atlas Fully Managed DBaaS #MDBlocal
#MDBlocal Management Tools
The Best Way to Run MongoDB Ops Manager allows you leverage and automate the best practices we’ve learned from thousands of deployments in a comprehensive application that helps you run MongoDB safely and reliably. • 10x-20x more efficient operations • Complete performance visibility • Protection from data loss • Performance optimization
MongoDB Ops Manager • Dozens of charts tracking key performance indicators • Custom alerts that trigger when key metrics are out of range • RESTful API to integrate with your existing APM tools • Visual displays of query and write latency • Recommendations for new indexes to improve query performance • One-click rollout of new indexes across your deployment; according to best practices and with no downtime OptimizationMonitoring • Deploy, resize, and upgrade your deployments with just a few clicks • Reduce the operational overhead of running MongoDB; enable your ops team to be 10-20x more efficient • RESTful API to integrate with your enterprise orchestration tools Automation Backup • Continuous backups to minimize your exposure to data loss • Restore to precisely the moment you need with point-in-time recovery
MongoDB Compass • Visualize & explore your schema with an intuitive GUI • Gain quick insights about your data with easy-to-read histograms • Build queries with a few clicks • Drill down to view individual documents in your collection • Understand and resolve performance issues with visual explain plans • Check index utilization Debug & Optimize Visualize & Explore The GUI for MongoDB Visual explain plans and full CRUD functionality are currently in beta. • Insert new documents or clone existing documents • Modify documents in place using the powerful visual editor • Delete documents in just a few clicks Insert, Modify, & Delete
#MDBlocal BI Integration
MongoDB Connector for BI Visualize and explore multi-dimensional documents using SQL-based BI tools. The connector does the following: • Provides the BI tool with the schema of the MongoDB collection to be visualized • Translates SQL statements issued by the BI tool into equivalent MongoDB queries that are sent to MongoDB for processing • Converts the results into the tabular format expected by the BI tool, which can then visualize the data based on user requirements #MDBlocal
Location & Flow of Data MongoDB BI Connector Mapping meta-data Application data {name: “Andrew”, address: {street:… }} DocumentTableAnalytics & visualization #MDBlocal
Sophisticated Analytics & Visualizations of Data in Place ● Rich MongoDB query language ● Connector for BI ● Connector for Spark ● Charts (coming soon) MongoDB Atlas Fully Managed DBaaS #MDBlocal
#MDBlocal MongoDB in the Cloud
Choosing the right data platform for the cloud Architectural affinity Geo-distribution Rapid, iterative changes #MDBlocal
2 choices as you move to the cloud: Self-Managed or DBaaS Cloud Migration or Cloud First Self-Managed Aka “Lift and Shift” Database as a service Fork in the road #MDBlocal
The Value of Atlas - Self-service and elastic Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting #MDBlocal Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience
The Value of Atlas - Global and Highly Available Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication #MDBlocal Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots
The Value of Atlas - Secure by default Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield #MDBlocal Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience
The Value of Atlas - Comprehensive Monitoring Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting #MDBlocal Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience
The Value of Atlas - Fully managed Backup Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots #MDBlocal Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication
The Value of Atlas - Cloud Agnostic Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience #MDBlocal Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots
Migrate existing deployments running anywhere into MongoDB Atlas with minimal impact to your application. Live migration works by: ● Performing a sync between your source database and a target database hosted in MongoDB Atlas ● Syncing live data between your source database and the target database ● Notifying you when it’s time to cut over to the MongoDB Atlas cluster Live Cloud Migration #MDBlocal
Atlas: The only true multi-cloud database as a service Database as a service Database that runs the same everywhere Consistent experience across AWS, Azure, and GCP Coverage in any geography Deploy in over 50 regions worldwide Create globally distributed databases with a few clicks Leverage the benefits of a multi-cloud strategy Exploit the benefits of AWS, Azure, or GCP services on your data Avoid lock-in Easily migrate data between cloud providers #MDBlocal
#MDBlocal MongoDB ACID Transactions
#MDBlocal Vigyan Jain Senior Solution Architect MongoDB linkedin.com/in/vigyanjain
MongoDB Multi-Document ACID Transactions Just like relational transactions • Multi-statement, familiar relational syntax • Easy to add to any application • Multiple documents in 1 or many collections ACID guarantees • Snapshot isolation, all or nothing execution • No performance impact for non-transactional operations Schedule • MongoDB 4.0, NH Summer ‘18: replica set • MongoDB 4.2: extended to sharded clusters MongoDB Atlas Fully Managed DBaaS #MDBlocal
Sign up for the beta program www.mongodb.com/transactions
#MDBlocal Summary
Summary: MongoDB Uniquely Delivers…... Intelligent distributed systems design ACID transactional guarantees of relational databases Documents, the best way to work with data Freedom to Run Anywhere
#MDBlocal How to learn more?!
#MDBlocal Free MongoDB Courses | MongoDB Certification Register Now at university.mongodb.com
#MDBlocal Questions?
#MDBlocal THANK YOU FOR JOINING!
#MDBlocal March 20, 2018

Jumpstart: Introduction to MongoDB

  • 1.
    #MDBlocal March 20, 2018 Jumpstart:Introduction to MongoDB
  • 2.
    #MDBlocal Mac McIntosh Director ofPre-Sales & Services MongoDB linkedin.com/in/mac-mcintosh
  • 3.
    Safe Harbor Statement Thispresentation contains “forward-looking statements” within the meaning of Section 27A of the Securities Act of 1933, as amended, and Section 21E of the Securities Exchange Act of 1934, as amended. Such forward-looking statements are subject to a number of risks, uncertainties, assumptions and other factors that could cause actual results and the timing of certain events to differ materially from future results expressed or implied by the forward-looking statements. Factors that could cause or contribute to such differences include, but are not limited to, those identified our filings with the Securities and Exchange Commission. You should not rely upon forward-looking statements as predictions of future events. Furthermore, such forward-looking statements speak only as of the date of this presentation. In particular, the development, release, and timing of any features or functionality described for MongoDB products remains at MongoDB’s sole discretion. This information is merely intended to outline our general product direction and it should not be relied on in making a purchasing decision nor is this a commitment, promise or legal obligation to deliver any material, code, or functionality. Except as required by law, we undertake no obligation to update any forward-looking statements to reflect events or circumstances after the date of such statements. #MDBlocal
  • 4.
  • 5.
  • 6.
  • 7.
    Hash-Based Sharding Roles Kerberos On-Prem Monitoring 2.4 2.6 3.03.2 $out Index Intersection Text Search Field-Level Redaction LDAP & x509 Auditing Document Validation $lookup Fast Failover Simpler Scalability Aggregation ++ Encryption At Rest In-Memory Storage Engine BI Connector MongoDB Compass APM Integration Profiler Visualization Auto Index Builds Backups to File System Doc-Level Concurrency Compression Storage Engine API ≤50 replicas Auditing ++ Ops Manager Intra-cluster compression Views Log Redaction Linearizable Reads Graph Processing Decimal Collations Faceted Navigation Spark Connector ++ Zones ++ Aggregation ++ Auto-balancing ++ ARM, Power, zSeries BI Connector ++ Compass ++ Hardware Monitoring Server Pool LDAP Authorization Encrypted Backups Cloud Foundry Integration 3.4 The Evolution of MongoDB 3.6 Change Streams Retryable Writes Expressive Array Updates Query Expressivity Causal Consistency Consistent Sharded Secondary Reads Compass Community Compass ++ Ops Manager ++ Query Advisor Schema Validation End to End Compression IP Whitelisting Default Bind to Localhost Operational Session Mgmt. WiredTiger 1m+ Collections MongoDB BI Connector ++ Expressive $lookUp R Driver Charts (post GA) Atlas Cross Region Replication Atlas Auto Storage Scaling 4.0 ACIDTransactions COMING NH SUMMER 2018! MongoDB Atlas Fully Managed DBaaS Wired Tiger Storage Engine
  • 8.
    Relational Expressive Query Language &Secondary Indexes Strong Consistency Enterprise Management & Integrations
  • 9.
    The World HasChanged Data Risk Time Cost
  • 10.
    NoSQL Scalability & Performance Always On, GlobalDeployments FlexibilityExpressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
  • 11.
    Nexus Architecture Scalability & Performance AlwaysOn, Global Deployments FlexibilityExpressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
  • 12.
  • 13.
    Anyone recognise this… #MDBlocal
  • 14.
    Document Model { first_name: ‘Paul’, surname:‘Miller’, city: ‘London’, location: { type : ‘Point’, coordinates : [45.123,47.232] }, cars: [ { model: ‘Bentley’, year: 1973, value: 100000, … }, { model: ‘Rolls Royce’, year: 1965, value: 330000, … } ] } MongoDB RDBMS MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 15.
    Documents are Flexible { product_name:‘Acme Paint’, color: [‘Red’, ‘Green’], size_oz: [8, 32], finish: [‘satin’, ‘eggshell’] } { product_name: ‘T-shirt’, size: [‘S’, ‘M’, ‘L’, ‘XL’], color: [‘Heather Gray’ … ], material: ‘100% cotton’, wash: ‘cold’, dry: ‘tumble dry low’ } { product_name: ‘Mountain Bike’, brake_style: ‘mechanical disc’, color: ‘grey’, frame_material: ‘aluminum’, no_speeds: 21, package_height: ‘7.5x32.9x55’, weight_lbs: 44.05, suspension_type: ‘dual’, wheel_size_in: 26 } Documents in the same product catalog collection in MongoDB MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 16.
    Rich Query Language MongoDBExpressiveCRUD Queries • Find anyone with phone # “1-212…” • Check if the person with number “555…” is on the “do not call” list Geospatial • Find the best offer for the customer at geo coordinates of 42nd St. and 6th Ave Text Search • Find all tweets that mention the firm within the last 2 days Graph queries ($graphLookup) Native Binary JSON support • Add an additional phone number to Mark Smith’s without rewriting the document • Select just the mobile phone number in the list • Sort on the modified date { customer_id : 1, first_name : "Mark", last_name : "Smith", city : "San Francisco", phones: [ { number : “1-212-777-1212”, dnc : true, type : “home” }, { number : “1-212-777-1213”, type : “cell” }] } Left outer join ($lookup) • Query for all San Francisco residences, lookup their transactions, and sum the amount by person • Count and sort number of customers by city • Match customer_id and group by city MongoDB Atlas Fully Managed DBaaS #MDBlocal • Query for all people within 3 degrees of separation from Mark Aggregation
  • 17.
    17 Aggregation Features Aggregation Frameworkstages operators, and comparison A feature rich analytical framework ❖$match ❖$group ❖$facet ❖$geoNear ❖$graphLookup ❖$lookup ❖$project ❖$sort ❖$unwind Pipeline Stages ❖Mathematical ➢$add, $abs, $substract, $multiply, $divide, $log, $log10, $stdDevPop, $stdDevSam, $avg, $sqrt, $pow, $sum, $zip, etc. ❖Array ➢$push, $reduce, $reverseArray, $addToSet, $arrayElemAt, $slice, etc. ❖Conditionals ➢$and, $or, $eq, $lt, $lte, $gt, $gte, $cmp, $cond, $switch, $in, etc. Operators ❖Date ➢$dateFromParts, $dateToParts, $dateFromString, $dateToString, $dayOfMonth, $isoWeek, $minute, $month, $year, etc. ❖String ➢$toUpper, $toLower, $substr, $strcasecmp, $concat, $split, etc. ❖Literals ➢$exp, $let, $literal, $map, $type, etc. MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 18.
    18 Fully featured secondary indexes ❖PrimaryIndex ➢Every Collection has a primary key index ❖Compound Index ➢Index against multiple keys in the document ❖MultiKey Index ➢Index into arrays ❖Text Indexes ➢support for text searches ❖GeoSpatial Indexes ➢2d & 2dSphere indexes for spatial geometries ❖Hashed Indexes ➢Hashed based values for sharding Index Types ❖TTL Indexes ➢Single Field indexes, when expired delete the document ❖Unique Indexes ➢Ensures value is not duplicated ❖Partial Indexes ➢Expression based indexes, allowing indexes on subsets of data ❖Case Insensitive Indexes ➢supports text search using case insensitive search ❖Sparse Indexes ➢Only index documents which have the given field Index Features MongoDB Atlas Fully Managed DBaaS #MDBlocal Fully Indexable
  • 19.
    Drivers & Frameworks Morphia MEANStack MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 20.
    MongoDB: Store objectsdirectly ... Account Account Opportunity Opportunity Contact Contact Lead Lead Objects Database MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 21.
    21 Eliminating the ORMpain Thousands of lines of configuration code…. Total pain in the... Account Opportunity Contact ARR Address Contact Roles Opportunity Team Phone Phone Objects Tables Lead NameName Activity History Open Activities Account Detail Summary Mapping Layer...which needs to be updated whenever the schema changes MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 22.
  • 23.
    Node 1 (Primary) Node 2 (Secondary) Node3 (Secondary) Replication Replication Heartbeat Replica Set MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 24.
    Node 2 (Secondary) Node 3 (Secondary) Heartbeat PrimaryElection Node 1 (Primary) Replica Set - Failure
  • 25.
    Node 1 (Primary) Node 2 (Primary) Node3 (Secondary) Heartbeat Replication Replica Set - Failover
  • 26.
    Node 2 (Primary) Node 3 (Secondary) Heartbeat Replication Node1 (Recovery) Replication Replica Set - Recovery
  • 27.
    Node 2 (Primary) Node 3 (Secondary) Heartbeat Replication Node1 (Secondary) Replication Replica Set - Recovered
  • 28.
    Replica Sets –Workload Isolation • Replica sets enable workload isolation • Example: Operational workloads on the primary node, analytical workloads on the secondary nodes eCommerce Application MongoDB Primary In-memory Storage Engine MongoDB Secondary WiredTiger Storage Engine User Data Sessions, Cart, Recommendations MongoDB Secondary WiredTiger Storage Engine Persisted User Data MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 29.
  • 30.
  • 31.
    Deploy Global, AccessLocal MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 32.
    Replicate Data NearUsers MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 33.
  • 34.
    MongoDB Security Features BusinessNeeds MongoDB Security Features Authentication SCRAM, LDAP*, Kerberos*, x.509 Certificates Authorization Built-in Roles, User-Defined Roles, Field-Level Redaction Auditing* Admin, DML, DDL, Role-Based Encryption Network: SSL (with FIPS 140-2*) Disk: Encrypted Storage Engine* or Partner Solutions *Included with MongoDB Enterprise Advanced MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 35.
  • 36.
    The Best Wayto Run MongoDB Ops Manager allows you leverage and automate the best practices we’ve learned from thousands of deployments in a comprehensive application that helps you run MongoDB safely and reliably. • 10x-20x more efficient operations • Complete performance visibility • Protection from data loss • Performance optimization
  • 37.
    MongoDB Ops Manager •Dozens of charts tracking key performance indicators • Custom alerts that trigger when key metrics are out of range • RESTful API to integrate with your existing APM tools • Visual displays of query and write latency • Recommendations for new indexes to improve query performance • One-click rollout of new indexes across your deployment; according to best practices and with no downtime OptimizationMonitoring • Deploy, resize, and upgrade your deployments with just a few clicks • Reduce the operational overhead of running MongoDB; enable your ops team to be 10-20x more efficient • RESTful API to integrate with your enterprise orchestration tools Automation Backup • Continuous backups to minimize your exposure to data loss • Restore to precisely the moment you need with point-in-time recovery
  • 38.
    MongoDB Compass • Visualize& explore your schema with an intuitive GUI • Gain quick insights about your data with easy-to-read histograms • Build queries with a few clicks • Drill down to view individual documents in your collection • Understand and resolve performance issues with visual explain plans • Check index utilization Debug & Optimize Visualize & Explore The GUI for MongoDB Visual explain plans and full CRUD functionality are currently in beta. • Insert new documents or clone existing documents • Modify documents in place using the powerful visual editor • Delete documents in just a few clicks Insert, Modify, & Delete
  • 39.
  • 40.
    MongoDB Connector forBI Visualize and explore multi-dimensional documents using SQL-based BI tools. The connector does the following: • Provides the BI tool with the schema of the MongoDB collection to be visualized • Translates SQL statements issued by the BI tool into equivalent MongoDB queries that are sent to MongoDB for processing • Converts the results into the tabular format expected by the BI tool, which can then visualize the data based on user requirements #MDBlocal
  • 41.
    Location & Flowof Data MongoDB BI Connector Mapping meta-data Application data {name: “Andrew”, address: {street:… }} DocumentTableAnalytics & visualization #MDBlocal
  • 42.
    Sophisticated Analytics &Visualizations of Data in Place ● Rich MongoDB query language ● Connector for BI ● Connector for Spark ● Charts (coming soon) MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 43.
  • 44.
    Choosing the rightdata platform for the cloud Architectural affinity Geo-distribution Rapid, iterative changes #MDBlocal
  • 45.
    2 choices asyou move to the cloud: Self-Managed or DBaaS Cloud Migration or Cloud First Self-Managed Aka “Lift and Shift” Database as a service Fork in the road #MDBlocal
  • 46.
    The Value ofAtlas - Self-service and elastic Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting #MDBlocal Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience
  • 47.
    The Value ofAtlas - Global and Highly Available Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication #MDBlocal Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots
  • 48.
    The Value ofAtlas - Secure by default Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield #MDBlocal Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience
  • 49.
    The Value ofAtlas - Comprehensive Monitoring Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting #MDBlocal Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience
  • 50.
    The Value ofAtlas - Fully managed Backup Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots #MDBlocal Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication
  • 51.
    The Value ofAtlas - Cloud Agnostic Secure by default • Network isolation and Peering • Encryption in flight and at rest • Role-based access control • SOC 2 Type 1 / Privacy Shield Cloud Agnostic • AWS, Azure, and GCP • Easy migrations • Consistent experience #MDBlocal Comprehensive Monitoring • Performance Advisor • Dashboards w/ 100+ metrics • Real Time Performance • Customizable alerting Self-service and elastic • Deploy in minutes • Scale up/down without downtime • Automated upgrades Global and highly available • 50 Regions worldwide • Replica sets optimized for availability • Cross-region replication Managed Backup • Point in Time Restore • Queryable backups • Consistent snapshots
  • 52.
    Migrate existing deploymentsrunning anywhere into MongoDB Atlas with minimal impact to your application. Live migration works by: ● Performing a sync between your source database and a target database hosted in MongoDB Atlas ● Syncing live data between your source database and the target database ● Notifying you when it’s time to cut over to the MongoDB Atlas cluster Live Cloud Migration #MDBlocal
  • 53.
    Atlas: The onlytrue multi-cloud database as a service Database as a service Database that runs the same everywhere Consistent experience across AWS, Azure, and GCP Coverage in any geography Deploy in over 50 regions worldwide Create globally distributed databases with a few clicks Leverage the benefits of a multi-cloud strategy Exploit the benefits of AWS, Azure, or GCP services on your data Avoid lock-in Easily migrate data between cloud providers #MDBlocal
  • 54.
  • 55.
    #MDBlocal Vigyan Jain Senior SolutionArchitect MongoDB linkedin.com/in/vigyanjain
  • 56.
    MongoDB Multi-Document ACIDTransactions Just like relational transactions • Multi-statement, familiar relational syntax • Easy to add to any application • Multiple documents in 1 or many collections ACID guarantees • Snapshot isolation, all or nothing execution • No performance impact for non-transactional operations Schedule • MongoDB 4.0, NH Summer ‘18: replica set • MongoDB 4.2: extended to sharded clusters MongoDB Atlas Fully Managed DBaaS #MDBlocal
  • 57.
    Sign up forthe beta program www.mongodb.com/transactions
  • 58.
  • 59.
    Summary: MongoDB UniquelyDelivers…... Intelligent distributed systems design ACID transactional guarantees of relational databases Documents, the best way to work with data Freedom to Run Anywhere
  • 60.
  • 61.
    #MDBlocal Free MongoDB Courses| MongoDB Certification Register Now at university.mongodb.com
  • 62.
  • 63.
  • 64.