SlideShare a Scribd company logo
INTRODUCTION TO
AZURE DOCUMENT
DB
Mohit Chhabra
Senior Software Engineer
Harman International
AzureGuy.in
Azure document db/Cosmos DB
SQL
• RDBMS
• SCALE UP/Horizontally
Scalable
• Structured or Schema
• Atomic Transaction
• Difficult for programmer
• Eg. CAR Disassembled in
and reassembled when
required.
NOSQL
• NonRelational
• Scale OUT/Horizontally
Scalable
• Semi or unstructured data
• EVENTUAL CONSISTENCY
• Easy for Programmers
• Eg. Park a car in parking
Comparison B/W SQL & NO-SQL
NOSQL
DOCUMENT
BASED-
DOCUMENT
DB/Cassandra
Graph –
Neo4j, SAP
HANA
Key Value Pair
–Redis, Azure
Storage
Column
Based-
Cassandra
Type of NOSQL
Azure document db/Cosmos DB
Azure document db/Cosmos DB
Azure DocumentDB
Azure DocumentDB is
a fully managed
NoSQL “database as a
service” built for ultra-
fast and predictable
performance, high
availability, elastic
scaling, and global
distribution, and is
especially focused on
ease of development.
Supported Languages & Frameworks
• Node.js
• .NET
• Python
• Java
• REST
• SQL
Tools, SDKs, and standards-based interfaces are available for
DocumentDB development with powerful support for querying against
most datatypes, even geospatial.
DocumentDB in One Slide
9
• Simple HTTP RESTful model.
• Access can be via any client that supports
HTTP. Libraries for; Node, .NET, Python, JS
• All resources are uniquely addressable by
a URI.
• Partitioned for scale out and replicated
for HA. Tunable indexing & consistency
• Granular access control through item
level permissions
• Attachments stored in Azure Blobs and
support document lifecycle.
• T-SQL like programmability.
• Customers buy storage and throughput
capacity basis at account level
/dbs/{id} /colls/{id} /docs/{id} /attachments/{id}
/sprocs/{id}
/triggers/{id}
/functions/{id}
/users/{id}
POST
Item
resource TenantFeed
URI
PUT
Item
resource
Item
URI
DELETE
Item
URI
GET TenantFeed Or Item
URI
Create a new resource
/Execute a sprocs/trigger/query
Replace an existing resource
Delete an existing resource
Read/Query an existing
resource
POST http://myaccount.documents.azure.net/dbs
{ "name":"My Company Db"}
...
[201 Created]
{
“id": "My Company Db",
“_rid": "UoEi5w==",
“_self": "dbs/UoEi5w==/",
“_colls": "colls/",
“_users": "users/"
}
The DocumentDB Data Model
1
0
All data is stored in JSON Documents
Object created in code
Object saved in Database
Azure DocumentDB Resources
• Database
• User
• Collection
• Stored Procedure
• Trigger
• User-defined
Function (UDF)
• Document
• Attachment
Resource Hierarchy
Database
A database is a logical container of document storage partitioned
across collections. It is also a users container.
User
The logical namespace for scoping permissions.
Permission
An authorization token associated with a user for access to a specific
resource.
Collection
A collection is a container of JSON documents and the associated
JavaScript application logic.
Resource Hierarchy
Stored Procedure
Application logic written in JavaScript which is registered with a collection and
transactionally executed within the database engine.
Trigger
Application logic written in JavaScript executed before or after either an insert,
replace or delete operation.
UDF
Application logic written in JavaScript. UDFs enable you to model a custom query
operator and thereby extend the core DocumentDB query language.
Document
Arbitrary user-defined JSON content. By default, no schema needs to be defined
nor do secondary indices need to be provided for all the documents added to a
collection.
Resource Associations
ACCOUNT ACCOUNT ACCOUNT
COLLECTION COLLECTION COLLECTION
DATABASEDATABASE DATABASE DATABASEDATABASE DATABASE
DOCUMENTS DOCUMENTS DOCUMENTS DOCUMENTS
Querying Data
Azure DocumentDB supports querying of documents using a familiar
SQL (Structured Query Language) over hierarchical JSON documents.
• SELECT, FROM, and
WHERE statements
• HAVING and ORDER BY
statements
• Full Geospatial and
Geometry support, such
as ST_DISTANCE and
ST_WITHIN
THANK YOU @mohit_techy

More Related Content

What's hot (20)

PPTX
Azure DocumentDB 101
Ike Ellis
 
PPTX
Introduction to Azure DocumentDB
Ike Ellis
 
PPTX
NoSQL for SQL Users
IBM Cloud Data Services
 
PPTX
Practical Use of a NoSQL Database
IBM Cloud Data Services
 
PDF
Disney+ Hotstar: Scaling NoSQL for Millions of Video On-Demand Users
ScyllaDB
 
PDF
Practical Use of a NoSQL
IBM Cloud Data Services
 
PPTX
Move your on prem data to a lake in a Lake in Cloud
CAMMS
 
PPT
Cloudant Overview Bluemix Meetup from Lisa Neddam
Romeo Kienzler
 
PPTX
Why MongoDB over other Databases - Habilelabs
HabileLabs
 
PPTX
Intro to RavenDB
Alonso Robles
 
PPTX
Introduction to azure cosmos db
Ratan Parai
 
PDF
Cortana Analytics Workshop: Azure Data Lake
MSAdvAnalytics
 
PPTX
RavenDB Presentation
Mark Rodseth
 
PPTX
Database Choices
Lynn Langit
 
PPT
NoSQL Slideshare Presentation
Ericsson Labs
 
PDF
Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
Fwdays
 
PPTX
Azure DocumentDB
Neil Mackenzie
 
KEY
MongoDB vs Mysql. A devops point of view
Pierre Baillet
 
PPTX
Document db
Christian Holm Diget
 
PPTX
SQL to NoSQL: Top 6 Questions
Mike Broberg
 
Azure DocumentDB 101
Ike Ellis
 
Introduction to Azure DocumentDB
Ike Ellis
 
NoSQL for SQL Users
IBM Cloud Data Services
 
Practical Use of a NoSQL Database
IBM Cloud Data Services
 
Disney+ Hotstar: Scaling NoSQL for Millions of Video On-Demand Users
ScyllaDB
 
Practical Use of a NoSQL
IBM Cloud Data Services
 
Move your on prem data to a lake in a Lake in Cloud
CAMMS
 
Cloudant Overview Bluemix Meetup from Lisa Neddam
Romeo Kienzler
 
Why MongoDB over other Databases - Habilelabs
HabileLabs
 
Intro to RavenDB
Alonso Robles
 
Introduction to azure cosmos db
Ratan Parai
 
Cortana Analytics Workshop: Azure Data Lake
MSAdvAnalytics
 
RavenDB Presentation
Mark Rodseth
 
Database Choices
Lynn Langit
 
NoSQL Slideshare Presentation
Ericsson Labs
 
Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
Fwdays
 
Azure DocumentDB
Neil Mackenzie
 
MongoDB vs Mysql. A devops point of view
Pierre Baillet
 
SQL to NoSQL: Top 6 Questions
Mike Broberg
 

Similar to Azure document db/Cosmos DB (20)

PPTX
Cool NoSQL on Azure with DocumentDB
Jan Hentschel
 
PPTX
Introducing DocumentDB
James Serra
 
PPTX
No SQL, No Problem: Use Azure DocumentDB
Ken Cenerelli
 
PPTX
Azure doc db (slideshare)
David Green
 
PDF
Introduction to azure document db
Antonios Chatzipavlis
 
PPTX
Microsoft azure documentDB
Mohamed Elkhodary
 
PDF
[「RDB技術者のためのNoSQLガイド」出版記念セミナー] Azure DocumentDB
Naoki (Neo) SATO
 
PPTX
Introduction à DocumentDB
MSDEVMTL
 
PPTX
Knowit study group örnsköldsvik - introduction to microsoft azure document db
Mathias Westin
 
PPTX
Introduction to Azure DocumentDB
Denny Lee
 
PPTX
Microsoft Azure DocumentDB - Global Azure Bootcamp 2016
Sunny Sharma
 
PDF
Samedi SQL Québec - La plateforme data de Azure
MSDEVMTL
 
PPTX
Webinar - Introduction to Azure DocumentDB
Josh Lane
 
PPTX
Azure DocumentDB for Healthcare Integration
BizTalk360
 
PDF
Benjamin Guinebertière - Microsoft Azure: Document DB and other noSQL databas...
NoSQLmatters
 
PPTX
Azure DocumentDB Overview
Andrew Liu
 
PPTX
Introduction to document db- Global Azure Bootcamp 2016
Jalpesh Vadgama
 
PPTX
AzureDocumentDB
Saravanan G
 
PDF
Ralph Kemperdick – IT-Tage 2015 – Microsoft Azure als Datenplattform
Informatik Aktuell
 
PPTX
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
RushikeshChikane2
 
Cool NoSQL on Azure with DocumentDB
Jan Hentschel
 
Introducing DocumentDB
James Serra
 
No SQL, No Problem: Use Azure DocumentDB
Ken Cenerelli
 
Azure doc db (slideshare)
David Green
 
Introduction to azure document db
Antonios Chatzipavlis
 
Microsoft azure documentDB
Mohamed Elkhodary
 
[「RDB技術者のためのNoSQLガイド」出版記念セミナー] Azure DocumentDB
Naoki (Neo) SATO
 
Introduction à DocumentDB
MSDEVMTL
 
Knowit study group örnsköldsvik - introduction to microsoft azure document db
Mathias Westin
 
Introduction to Azure DocumentDB
Denny Lee
 
Microsoft Azure DocumentDB - Global Azure Bootcamp 2016
Sunny Sharma
 
Samedi SQL Québec - La plateforme data de Azure
MSDEVMTL
 
Webinar - Introduction to Azure DocumentDB
Josh Lane
 
Azure DocumentDB for Healthcare Integration
BizTalk360
 
Benjamin Guinebertière - Microsoft Azure: Document DB and other noSQL databas...
NoSQLmatters
 
Azure DocumentDB Overview
Andrew Liu
 
Introduction to document db- Global Azure Bootcamp 2016
Jalpesh Vadgama
 
AzureDocumentDB
Saravanan G
 
Ralph Kemperdick – IT-Tage 2015 – Microsoft Azure als Datenplattform
Informatik Aktuell
 
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
RushikeshChikane2
 
Ad

More from Mohit Chhabra (18)

PPTX
Azure Sentinel.pptx
Mohit Chhabra
 
PPTX
Azure Governance for Enterprise
Mohit Chhabra
 
PPTX
Virtual assistant with azure ai
Mohit Chhabra
 
PPTX
Azure bastion
Mohit Chhabra
 
PPTX
Secure hybrid workload with azure
Mohit Chhabra
 
PPTX
Azure functions
Mohit Chhabra
 
PPTX
Convert your sketches to code with microsoft ai
Mohit Chhabra
 
PPTX
Intro to docker and kubernetes
Mohit Chhabra
 
PPTX
Net overview-and-roadmap
Mohit Chhabra
 
PPTX
Azure BluePrint
Mohit Chhabra
 
PPTX
Azure devops
Mohit Chhabra
 
PPTX
Containerization in microsoft azure
Mohit Chhabra
 
PPTX
Azure full
Mohit Chhabra
 
PPTX
App innovationcircles azure
Mohit Chhabra
 
PPTX
App innovationcircles xamarin
Mohit Chhabra
 
PPTX
Cloud based programming
Mohit Chhabra
 
PPTX
Azure cli2.0
Mohit Chhabra
 
PPTX
DevOps in Microsoft Azure
Mohit Chhabra
 
Azure Sentinel.pptx
Mohit Chhabra
 
Azure Governance for Enterprise
Mohit Chhabra
 
Virtual assistant with azure ai
Mohit Chhabra
 
Azure bastion
Mohit Chhabra
 
Secure hybrid workload with azure
Mohit Chhabra
 
Azure functions
Mohit Chhabra
 
Convert your sketches to code with microsoft ai
Mohit Chhabra
 
Intro to docker and kubernetes
Mohit Chhabra
 
Net overview-and-roadmap
Mohit Chhabra
 
Azure BluePrint
Mohit Chhabra
 
Azure devops
Mohit Chhabra
 
Containerization in microsoft azure
Mohit Chhabra
 
Azure full
Mohit Chhabra
 
App innovationcircles azure
Mohit Chhabra
 
App innovationcircles xamarin
Mohit Chhabra
 
Cloud based programming
Mohit Chhabra
 
Azure cli2.0
Mohit Chhabra
 
DevOps in Microsoft Azure
Mohit Chhabra
 
Ad

Recently uploaded (20)

PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PPTX
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
PDF
Alexander Marshalov - How to use AI Assistants with your Monitoring system Q2...
VictoriaMetrics
 
PPTX
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
How to Hire AI Developers_ Step-by-Step Guide in 2025.pdf
DianApps Technologies
 
PDF
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
Ortus Solutions, Corp
 
PDF
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
PDF
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
PPTX
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
PPTX
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
PDF
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
PDF
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
PDF
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
PPTX
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
PDF
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
PPTX
Transforming Mining & Engineering Operations with Odoo ERP | Streamline Proje...
SatishKumar2651
 
PPTX
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
Alexander Marshalov - How to use AI Assistants with your Monitoring system Q2...
VictoriaMetrics
 
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
How to Hire AI Developers_ Step-by-Step Guide in 2025.pdf
DianApps Technologies
 
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
Ortus Solutions, Corp
 
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
Transforming Mining & Engineering Operations with Odoo ERP | Streamline Proje...
SatishKumar2651
 
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 

Azure document db/Cosmos DB

  • 1. INTRODUCTION TO AZURE DOCUMENT DB Mohit Chhabra Senior Software Engineer Harman International AzureGuy.in
  • 3. SQL • RDBMS • SCALE UP/Horizontally Scalable • Structured or Schema • Atomic Transaction • Difficult for programmer • Eg. CAR Disassembled in and reassembled when required. NOSQL • NonRelational • Scale OUT/Horizontally Scalable • Semi or unstructured data • EVENTUAL CONSISTENCY • Easy for Programmers • Eg. Park a car in parking Comparison B/W SQL & NO-SQL
  • 4. NOSQL DOCUMENT BASED- DOCUMENT DB/Cassandra Graph – Neo4j, SAP HANA Key Value Pair –Redis, Azure Storage Column Based- Cassandra Type of NOSQL
  • 7. Azure DocumentDB Azure DocumentDB is a fully managed NoSQL “database as a service” built for ultra- fast and predictable performance, high availability, elastic scaling, and global distribution, and is especially focused on ease of development.
  • 8. Supported Languages & Frameworks • Node.js • .NET • Python • Java • REST • SQL Tools, SDKs, and standards-based interfaces are available for DocumentDB development with powerful support for querying against most datatypes, even geospatial.
  • 9. DocumentDB in One Slide 9 • Simple HTTP RESTful model. • Access can be via any client that supports HTTP. Libraries for; Node, .NET, Python, JS • All resources are uniquely addressable by a URI. • Partitioned for scale out and replicated for HA. Tunable indexing & consistency • Granular access control through item level permissions • Attachments stored in Azure Blobs and support document lifecycle. • T-SQL like programmability. • Customers buy storage and throughput capacity basis at account level /dbs/{id} /colls/{id} /docs/{id} /attachments/{id} /sprocs/{id} /triggers/{id} /functions/{id} /users/{id} POST Item resource TenantFeed URI PUT Item resource Item URI DELETE Item URI GET TenantFeed Or Item URI Create a new resource /Execute a sprocs/trigger/query Replace an existing resource Delete an existing resource Read/Query an existing resource POST http://myaccount.documents.azure.net/dbs { "name":"My Company Db"} ... [201 Created] { “id": "My Company Db", “_rid": "UoEi5w==", “_self": "dbs/UoEi5w==/", “_colls": "colls/", “_users": "users/" }
  • 10. The DocumentDB Data Model 1 0 All data is stored in JSON Documents Object created in code Object saved in Database
  • 11. Azure DocumentDB Resources • Database • User • Collection • Stored Procedure • Trigger • User-defined Function (UDF) • Document • Attachment
  • 12. Resource Hierarchy Database A database is a logical container of document storage partitioned across collections. It is also a users container. User The logical namespace for scoping permissions. Permission An authorization token associated with a user for access to a specific resource. Collection A collection is a container of JSON documents and the associated JavaScript application logic.
  • 13. Resource Hierarchy Stored Procedure Application logic written in JavaScript which is registered with a collection and transactionally executed within the database engine. Trigger Application logic written in JavaScript executed before or after either an insert, replace or delete operation. UDF Application logic written in JavaScript. UDFs enable you to model a custom query operator and thereby extend the core DocumentDB query language. Document Arbitrary user-defined JSON content. By default, no schema needs to be defined nor do secondary indices need to be provided for all the documents added to a collection.
  • 14. Resource Associations ACCOUNT ACCOUNT ACCOUNT COLLECTION COLLECTION COLLECTION DATABASEDATABASE DATABASE DATABASEDATABASE DATABASE DOCUMENTS DOCUMENTS DOCUMENTS DOCUMENTS
  • 15. Querying Data Azure DocumentDB supports querying of documents using a familiar SQL (Structured Query Language) over hierarchical JSON documents. • SELECT, FROM, and WHERE statements • HAVING and ORDER BY statements • Full Geospatial and Geometry support, such as ST_DISTANCE and ST_WITHIN

Editor's Notes

  • #8: Azure DocumentDB is schema-free and combines rich and familiar SQL query capabilities with consistent low latencies on JSON-based data models, targeting solutions for web, mobile, gaming, and IoT. Since DocumentDB is schema agnostic, it makes it extremely easy to adjust and adapt data models on the fly as business logic and application scenarios change. With DocumentDB you no longer have to deploy constant updates to the data-tier and worry about managing schema and relationships. All content in DocumentDB is automatically indexed, which makes it possible to query data across entire structures at any time. The term “NoSQL” is more of a marketing buzzword, and actual means “no requirement for entity relationships and secondary indexing” in order to query information.
  • #9: Since DocumentDB is a JSON-based storage mechanism, accessing and interacting with data can be accomplished through most standards-based interfaces, as well as robust toolsets and SDKs. Although native Universal Windows Platform support is not currently available, support for virtually any other development scenario is available. Deeper level features of are currently exposed via JavaScript, such as stored procedures, triggers and user defined functions (UDFs) making it easy for developers to write application logic that can be packaged and executed directly on database storage partitions.
  • #12: To make sure specific concepts are understood, its helpful to review terminology used by DocumentDB documentation and supporting concepts. Although many of these terms and concepts apply to other data storage technologies, there are often differences in the way these terms apply to Azure DocumentDB in practical scenarios. In Azure DocumentDB systems, all elements of the hierarchy are referred to as “resources”.
  • #13: Most terms used in the context of Azure DocumentDB are similar, or at least conceptual similar to terms used in both object-oriented and relational database strategies, however the scope and design of certain elements differs in exact implementation. For example an Azure DocumentDB “Collection” can span multiple servers and partitions and are the primary entity of DocumentDB “groupings”. The terms “database” and “container” are often used synonymously, as the term database is more conceptual than physical.
  • #14: Similar to the terms container and database, the DocumentDB term “document” is often confusing to new developers, as “document” more commonly means a “file-based” item, such as a PDF or Word document, Excel spreadsheet, PowerPoint slide deck, or even a text file. The term document in DocumentDB-speak is actually a JSON-based representation of data, and only optionally contains binary data. To get a better picture of what a document “looks like” in DocumentDB terms, imagine a single record from a relational database formatted as a JSON object. Although optional, attachments are also supported to store binary data.
  • #15: The database entities that DocumentDB manages are referred to as resources. Each resource is uniquely identified by a logical URI. You can interact with the resources using standard HTTP verbs, request/response headers and status codes, as well as object and property-based methods via the tools and SDKs.
  • #16: Since DocumentDB is “schema-free” it provides automatic indexing of JSON documents without requiring explicit schema or creation of secondary indexes. If you’re familiar with legacy T-SQL or (Transactional Structured Query Language) commands you’ll be right at home querying DocumentDB content. Querying content typically consists or writing SELECT queries with option WHERE clauses and can be combined and joined across objects in the collection hierarchy.