SlideShare una empresa de Scribd logo
1 de 65
Findingyourplace
in theCosmos
EricPotter
Technical Strategist,
Aptera Software
Findingyourplace
in theCosmos
EricPotter
Technical Strategist,
Aptera Software
What
Why
Performance
Storage
Document Databases
Model
Model
Model
Insert
Insert
Insert
Query
● LINQ to SQL API
● Stored Procedures in JavaScript
● JavaScript for
○ Store Procedures
○ Triggers
○ User Defined Functions
● (future) Entity Framework
KeyValue
Model
Model
Insert
Insert
• All values are retrieved by their keys.
• Data is structured so there is little need to
join records together.
• These limitations make the data retrieval
times incredibly fast.
Query
Graph
Model
Insert - Vertices
g.addV('person').property('id', ‘coryHouse')
g.addV('person').property('id', 'jeremyClark')
g.addV('person').property('id', 'arthurDoler')
g.addV('podcast').property('id', 'crossCuttingConcerns')
g.addV('podcast').property('id', 'developerOnFire').property('Name', 'Developer On Fire')
g.addV('podcast').property('id', 'dotnetrocks').property('Name’, ‘.Net Rocks')
g.addV('conference').property('id', 'kcdc-2018')
g.addV('conference').property('id', 'devUp-2018')
g.addV('conference').property('id', ‘codeMash-2019')
Insert - Edges
g.V(‘jeremyclark').addE('appearedOn').to(g.V('dotnetrocks'))
g.V(‘jeremyclark').addE('spokeAt').to(g.V(‘kcdc-2018'))
g.V('coryHouse').addE('appearedOn').to(g.V('dotnetrocks'))
g.V('coryHouse').addE('appearedOn').to(g.V('developerOnFire')
g.V('coryHouse').addE('spokeAt').to(g.V('kcdc-2018'))
g.V('coryHouse').addE('spokeAt').to(g.V(‘codemash-2019'))
Query
Results
dotnetrocks
developerOnFire
live360-2018
kcdc-2018
g.V('jeremyClark').out()
Query
Results
codeMash-2019
kcdc-2018
g.V(‘coryHouse').out(‘spokeAt’)
Query
Results
coryHouse
chrisWoodruff
…
g.V(‘codemash-2019').in()
Query
Results
DotNetRocks
DeveloperOnFire
g.V(‘codeMash-2019').in().out('appearedOn')
Wide Column Store
Model
Insert
SELECT *
FROM podcasts.episodes
WHERE shownum = 38
Query
Questions?
Integration
Integrations
• Logic Apps / Microsoft Flow
• Azure Functions
• Azure Change Feed Processor
Conslusion
“
Thank You.
Let’s Chat Later.
@pottereric HumbleToolsmith.com

Más contenido relacionado

La actualidad más candente

Presto Summit 2018 - 04 - Netflix Containers
Presto Summit 2018 - 04 - Netflix ContainersPresto Summit 2018 - 04 - Netflix Containers
Presto Summit 2018 - 04 - Netflix Containerskbajda
 
A deep dive into APEX JET charts
A deep dive into APEX JET chartsA deep dive into APEX JET charts
A deep dive into APEX JET chartsRoel Hartman
 
Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)
Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)
Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)Jorge Millán Cabrera
 
Presto talk @ Global AI conference 2018 Boston
Presto talk @ Global AI conference 2018 BostonPresto talk @ Global AI conference 2018 Boston
Presto talk @ Global AI conference 2018 Bostonkbajda
 
Rounds analytics pipeline
Rounds analytics pipelineRounds analytics pipeline
Rounds analytics pipelineAviv Laufer
 
Apache Airflow Architecture
Apache Airflow ArchitectureApache Airflow Architecture
Apache Airflow ArchitectureGerard Toonstra
 
BigQuery at AppsFlyer - past, present and future
BigQuery at AppsFlyer - past, present and futureBigQuery at AppsFlyer - past, present and future
BigQuery at AppsFlyer - past, present and futureNir Rubinstein
 
Denver AUG Oct 2018 Praecipio Turbo Kit for Jira
Denver AUG Oct 2018 Praecipio Turbo Kit for JiraDenver AUG Oct 2018 Praecipio Turbo Kit for Jira
Denver AUG Oct 2018 Praecipio Turbo Kit for Jiradenveraug
 
Presto Summit 2018 - 10 - Qubole
Presto Summit 2018  - 10 - QubolePresto Summit 2018  - 10 - Qubole
Presto Summit 2018 - 10 - Qubolekbajda
 
Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)
Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)
Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)Shift Conference
 
IPC Global Big Data To Decision Solution Overview
IPC Global Big Data To Decision Solution OverviewIPC Global Big Data To Decision Solution Overview
IPC Global Big Data To Decision Solution Overviewpzybrick
 
DevTest Labs en Azure (por Iván Cañizares)
DevTest Labs en Azure (por Iván Cañizares)DevTest Labs en Azure (por Iván Cañizares)
DevTest Labs en Azure (por Iván Cañizares)Jorge Millán Cabrera
 
Building Notebook-based AI Pipelines with Elyra and Kubeflow
Building Notebook-based AI Pipelines with Elyra and KubeflowBuilding Notebook-based AI Pipelines with Elyra and Kubeflow
Building Notebook-based AI Pipelines with Elyra and KubeflowDatabricks
 
The State of the Developer Ecosystem - .NET Conf Madrid 2018
The State of the Developer Ecosystem - .NET Conf Madrid 2018The State of the Developer Ecosystem - .NET Conf Madrid 2018
The State of the Developer Ecosystem - .NET Conf Madrid 2018Carlos Mendible
 
BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...
BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...
BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...Gaurav Kumar Garg
 
KliqObjects Overview
KliqObjects OverviewKliqObjects Overview
KliqObjects OverviewKT-Labs
 
About The Event-Driven Data Layer & Adobe Analytics
About The Event-Driven Data Layer & Adobe AnalyticsAbout The Event-Driven Data Layer & Adobe Analytics
About The Event-Driven Data Layer & Adobe AnalyticsKevin Haag
 
"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]Kevin Xu
 
KliqPlan Overview
KliqPlan OverviewKliqPlan Overview
KliqPlan OverviewKT-Labs
 
API Management: La Puerta de enlace (por Francisco Nieto)
API Management: La Puerta de enlace (por Francisco Nieto)API Management: La Puerta de enlace (por Francisco Nieto)
API Management: La Puerta de enlace (por Francisco Nieto)Jorge Millán Cabrera
 

La actualidad más candente (20)

Presto Summit 2018 - 04 - Netflix Containers
Presto Summit 2018 - 04 - Netflix ContainersPresto Summit 2018 - 04 - Netflix Containers
Presto Summit 2018 - 04 - Netflix Containers
 
A deep dive into APEX JET charts
A deep dive into APEX JET chartsA deep dive into APEX JET charts
A deep dive into APEX JET charts
 
Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)
Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)
Un orquestador en la nube: Azure Data Factory (por Carlos Sacristán)
 
Presto talk @ Global AI conference 2018 Boston
Presto talk @ Global AI conference 2018 BostonPresto talk @ Global AI conference 2018 Boston
Presto talk @ Global AI conference 2018 Boston
 
Rounds analytics pipeline
Rounds analytics pipelineRounds analytics pipeline
Rounds analytics pipeline
 
Apache Airflow Architecture
Apache Airflow ArchitectureApache Airflow Architecture
Apache Airflow Architecture
 
BigQuery at AppsFlyer - past, present and future
BigQuery at AppsFlyer - past, present and futureBigQuery at AppsFlyer - past, present and future
BigQuery at AppsFlyer - past, present and future
 
Denver AUG Oct 2018 Praecipio Turbo Kit for Jira
Denver AUG Oct 2018 Praecipio Turbo Kit for JiraDenver AUG Oct 2018 Praecipio Turbo Kit for Jira
Denver AUG Oct 2018 Praecipio Turbo Kit for Jira
 
Presto Summit 2018 - 10 - Qubole
Presto Summit 2018  - 10 - QubolePresto Summit 2018  - 10 - Qubole
Presto Summit 2018 - 10 - Qubole
 
Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)
Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)
Shift Remote: WEB - GraphQL and React – Quick Start - Dubravko Bogovic (Infobip)
 
IPC Global Big Data To Decision Solution Overview
IPC Global Big Data To Decision Solution OverviewIPC Global Big Data To Decision Solution Overview
IPC Global Big Data To Decision Solution Overview
 
DevTest Labs en Azure (por Iván Cañizares)
DevTest Labs en Azure (por Iván Cañizares)DevTest Labs en Azure (por Iván Cañizares)
DevTest Labs en Azure (por Iván Cañizares)
 
Building Notebook-based AI Pipelines with Elyra and Kubeflow
Building Notebook-based AI Pipelines with Elyra and KubeflowBuilding Notebook-based AI Pipelines with Elyra and Kubeflow
Building Notebook-based AI Pipelines with Elyra and Kubeflow
 
The State of the Developer Ecosystem - .NET Conf Madrid 2018
The State of the Developer Ecosystem - .NET Conf Madrid 2018The State of the Developer Ecosystem - .NET Conf Madrid 2018
The State of the Developer Ecosystem - .NET Conf Madrid 2018
 
BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...
BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...
BitRot (The silent corruption of data on disk ) detection in GlusterFS (Glust...
 
KliqObjects Overview
KliqObjects OverviewKliqObjects Overview
KliqObjects Overview
 
About The Event-Driven Data Layer & Adobe Analytics
About The Event-Driven Data Layer & Adobe AnalyticsAbout The Event-Driven Data Layer & Adobe Analytics
About The Event-Driven Data Layer & Adobe Analytics
 
"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]
 
KliqPlan Overview
KliqPlan OverviewKliqPlan Overview
KliqPlan Overview
 
API Management: La Puerta de enlace (por Francisco Nieto)
API Management: La Puerta de enlace (por Francisco Nieto)API Management: La Puerta de enlace (por Francisco Nieto)
API Management: La Puerta de enlace (por Francisco Nieto)
 

Similar a Finding Your Place in the Cosmos - Azure Cosmos DB

Scalable web application architecture
Scalable web application architectureScalable web application architecture
Scalable web application architecturepostrational
 
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...Chester Chen
 
Smart Data Conference: DL4J and DataVec
Smart Data Conference: DL4J and DataVecSmart Data Conference: DL4J and DataVec
Smart Data Conference: DL4J and DataVecJosh Patterson
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in NetflixDanny Yuan
 
NoSQL Endgame DevoxxUA Conference 2020
NoSQL Endgame DevoxxUA Conference 2020NoSQL Endgame DevoxxUA Conference 2020
NoSQL Endgame DevoxxUA Conference 2020Thodoris Bais
 
SQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API ConsumersSQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API ConsumersJerod Johnson
 
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...James Anderson
 
Modular Web Applications With Netzke
Modular Web Applications With NetzkeModular Web Applications With Netzke
Modular Web Applications With Netzkenetzke
 
Dublin Ireland Spark Meetup October 15, 2015
Dublin Ireland Spark Meetup October 15, 2015Dublin Ireland Spark Meetup October 15, 2015
Dublin Ireland Spark Meetup October 15, 2015eddiebaggott
 
前端MVC之BackboneJS
前端MVC之BackboneJS前端MVC之BackboneJS
前端MVC之BackboneJSZhang Xiaoxue
 
Schema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfSchema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfLars Albertsson
 
Rafael Bagmanov «Scala in a wild enterprise»
Rafael Bagmanov «Scala in a wild enterprise»Rafael Bagmanov «Scala in a wild enterprise»
Rafael Bagmanov «Scala in a wild enterprise»e-Legion
 
Shaping serverless architecture with domain driven design patterns - py web-il
Shaping serverless architecture with domain driven design patterns - py web-ilShaping serverless architecture with domain driven design patterns - py web-il
Shaping serverless architecture with domain driven design patterns - py web-ilAsher Sterkin
 
Awesome html with ujs, jQuery and coffeescript
Awesome html with ujs, jQuery and coffeescriptAwesome html with ujs, jQuery and coffeescript
Awesome html with ujs, jQuery and coffeescriptAmir Barylko
 
Andrzej Ludwikowski - Event Sourcing - co może pójść nie tak?
Andrzej Ludwikowski -  Event Sourcing - co może pójść nie tak?Andrzej Ludwikowski -  Event Sourcing - co może pójść nie tak?
Andrzej Ludwikowski - Event Sourcing - co może pójść nie tak?SegFaultConf
 
如何建立企業級應用的商業規則引擎
如何建立企業級應用的商業規則引擎如何建立企業級應用的商業規則引擎
如何建立企業級應用的商業規則引擎CodeData
 
Painless Persistence in a Disconnected World
Painless Persistence in a Disconnected WorldPainless Persistence in a Disconnected World
Painless Persistence in a Disconnected WorldChristian Melchior
 
Openstack Nova APIs
Openstack Nova APIs Openstack Nova APIs
Openstack Nova APIs Stackops
 

Similar a Finding Your Place in the Cosmos - Azure Cosmos DB (20)

Scalable web application architecture
Scalable web application architectureScalable web application architecture
Scalable web application architecture
 
Spring data requery
Spring data requerySpring data requery
Spring data requery
 
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
 
Smart Data Conference: DL4J and DataVec
Smart Data Conference: DL4J and DataVecSmart Data Conference: DL4J and DataVec
Smart Data Conference: DL4J and DataVec
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in Netflix
 
NoSQL Endgame DevoxxUA Conference 2020
NoSQL Endgame DevoxxUA Conference 2020NoSQL Endgame DevoxxUA Conference 2020
NoSQL Endgame DevoxxUA Conference 2020
 
SQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API ConsumersSQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API Consumers
 
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
 
Modular Web Applications With Netzke
Modular Web Applications With NetzkeModular Web Applications With Netzke
Modular Web Applications With Netzke
 
Dublin Ireland Spark Meetup October 15, 2015
Dublin Ireland Spark Meetup October 15, 2015Dublin Ireland Spark Meetup October 15, 2015
Dublin Ireland Spark Meetup October 15, 2015
 
前端MVC之BackboneJS
前端MVC之BackboneJS前端MVC之BackboneJS
前端MVC之BackboneJS
 
Schema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfSchema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdf
 
Rafael Bagmanov «Scala in a wild enterprise»
Rafael Bagmanov «Scala in a wild enterprise»Rafael Bagmanov «Scala in a wild enterprise»
Rafael Bagmanov «Scala in a wild enterprise»
 
Shaping serverless architecture with domain driven design patterns - py web-il
Shaping serverless architecture with domain driven design patterns - py web-ilShaping serverless architecture with domain driven design patterns - py web-il
Shaping serverless architecture with domain driven design patterns - py web-il
 
Awesome html with ujs, jQuery and coffeescript
Awesome html with ujs, jQuery and coffeescriptAwesome html with ujs, jQuery and coffeescript
Awesome html with ujs, jQuery and coffeescript
 
Andrzej Ludwikowski - Event Sourcing - co może pójść nie tak?
Andrzej Ludwikowski -  Event Sourcing - co może pójść nie tak?Andrzej Ludwikowski -  Event Sourcing - co może pójść nie tak?
Andrzej Ludwikowski - Event Sourcing - co może pójść nie tak?
 
Big Data Tools in AWS
Big Data Tools in AWSBig Data Tools in AWS
Big Data Tools in AWS
 
如何建立企業級應用的商業規則引擎
如何建立企業級應用的商業規則引擎如何建立企業級應用的商業規則引擎
如何建立企業級應用的商業規則引擎
 
Painless Persistence in a Disconnected World
Painless Persistence in a Disconnected WorldPainless Persistence in a Disconnected World
Painless Persistence in a Disconnected World
 
Openstack Nova APIs
Openstack Nova APIs Openstack Nova APIs
Openstack Nova APIs
 

Más de Eric Potter

Learning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptxLearning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptxEric Potter
 
Learning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptxLearning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptxEric Potter
 
KnowYouLimitations.pptx
KnowYouLimitations.pptxKnowYouLimitations.pptx
KnowYouLimitations.pptxEric Potter
 
KnowYouLimitations.pptx
KnowYouLimitations.pptxKnowYouLimitations.pptx
KnowYouLimitations.pptxEric Potter
 
Easy Automated UI Testing with Canopy
Easy Automated UI Testing with CanopyEasy Automated UI Testing with Canopy
Easy Automated UI Testing with CanopyEric Potter
 
TypeScript: Beyond The Basics
TypeScript: Beyond The BasicsTypeScript: Beyond The Basics
TypeScript: Beyond The BasicsEric Potter
 
C# pattern matching
C# pattern matchingC# pattern matching
C# pattern matchingEric Potter
 
Generalist or Specialist
Generalist or SpecialistGeneralist or Specialist
Generalist or SpecialistEric Potter
 

Más de Eric Potter (8)

Learning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptxLearning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptx
 
Learning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptxLearning Go From Hello World to Web Service.pptx
Learning Go From Hello World to Web Service.pptx
 
KnowYouLimitations.pptx
KnowYouLimitations.pptxKnowYouLimitations.pptx
KnowYouLimitations.pptx
 
KnowYouLimitations.pptx
KnowYouLimitations.pptxKnowYouLimitations.pptx
KnowYouLimitations.pptx
 
Easy Automated UI Testing with Canopy
Easy Automated UI Testing with CanopyEasy Automated UI Testing with Canopy
Easy Automated UI Testing with Canopy
 
TypeScript: Beyond The Basics
TypeScript: Beyond The BasicsTypeScript: Beyond The Basics
TypeScript: Beyond The Basics
 
C# pattern matching
C# pattern matchingC# pattern matching
C# pattern matching
 
Generalist or Specialist
Generalist or SpecialistGeneralist or Specialist
Generalist or Specialist
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 

Finding Your Place in the Cosmos - Azure Cosmos DB

Notas del editor

  1. Open C:\Projects\SpeakerNetwork\SpeakerNetwork.sln TODO – better graphic explaining partition keys TODO – better graphic for database \ container \ document
  2. Open C:\Projects\SpeakerNetwork\SpeakerNetwork.sln
  3. Integration with Logic Apps
  4. Global Distribution: You can distribute your data to any number of Azure regions, with the click of a button. Elastic Scale Out: Scale storage size transparently and automatically to handle your size requirements now and forever. Multi-Model: Low Latency: 5 Consistency Models: Comprehensive SLAs: Money back guarantees https://www.youtube.com/watch?v=L_PPKyAsR3w&feature=youtu.be – Leslie Lamport {Turing Award Winner} “CosmosDB is a database system in which the data can be replicated and copies distributed throughout the world. This permits the application to be configured so that every user is near a copy of the data without the application programmer having to worry about how many copies there are or where they are located.”
  5. Azure Cosmos DB had its beginnings in 2010 as “Project Florence”.
  6. This is the video clip of creating a new CosmosDB instance
  7. SQL Server has worked well for many years. When we have SQL Server, MySQL, Postgres, and others, why do we need anything else? Why do we need new storage solutions? It is because we have new storage problems. New kinds of problems require new kinds of solutions
  8. Not all apps are 2 boxes and a cylinder If this is what you need, by all means use it. Relational databases were developed at a time when minimizing total storage was an effective way to provide business value. For many years, many organizations tried to consolidate all of the storage into a database or a group of databases on a single server. This made reporting much easier. Relational database systems are the most broadly useful databases. So for most applications they will still be the database of choice. Especially if your application only has one database.
  9. Microservices… If you are always using SQL databases, there will be times when you are trying to fit a square peg in a round hole. Or you might be trying to fit a square peg in a hexagon hole. Or you might be trying to put a large square peg into four small square holes. Many microservice proponents advocate for having one database per service. If we have more and more specialized databases, there are many more opportunities to use a different data model. In these cases, the CosmosDB or other NoSQL databases follow the Unix Philosophy of tools. They do one specialized thing and do it well. In a scenario where you needed multiple NoSQL databases, you could either stand them all up yourself, or you could just use Cosmos.
  10. NoSQL is beyond just a fad. It isn’t a popular as it once was, but it has proven itself to be productive in the right scenarios.
  11. Thoughtworks Technology Radar
  12. By far the biggest differentiator of CosmosDB over it’s competition is in performance at a global scale.
  13. Global Scale If this is what you need, CosmosDB is a no brainer It is ridiculously easy to replicate data to other regions in the world.
  14. Horizontal Scale out This is why there are limited join capabilities This is why stored procedures can only hit one partition key This is why partition keys are particularly important
  15. Replicate Data Globally
  16. 5 Consistency Models “Implementing any distributed system involves a tradeoff between on the one hand degree of consistency it provides to the users and on the other hand it’s availability and response time.” – Leslie Lamport {Turning Award Winnder} Most systems choose either strong consistency or eventual consistency. Strong - The reads are guaranteed to return the most recent committed version of an item. Bounded Stateless – can configure how out of date readable data can be Session – Session consistency is scoped to a client session. Consistent Prefix - guarantees that reads never see out-of-order writes Eventual - There's no ordering guarantee for reads. In the absence of any further writes, the replicas eventually converge.
  17. It is kind of like a data storage mullet – Gremlin in the front, atom-record-sequence in the back. The internals are where the real wizardry happens. And as a Potter, I love wizardry. The underlying data model is projected onto the selected API. The atom-record-sequence model is what Cosmos uses internally to replicate data around the world. But as a developer, you never have to think about that. The developer only has to be concerned with knowing on of the straight forward APIs. All of the API are hitting the same kind of datastore behind the scenes. But the data is projected into a familiar format.
  18. The M87 black hole
  19. Mongo DocDB SQL has a whole language just for defining tables (Data Definition Language or DDL) Working with a document database is structurally similar to working with a dictionary because you request data with a key and a value is returned to you. In practice it is more like a library because you look something up and get a whole book back. It is kind of like a hip new restaurant that has great stuff, but you won’t find a table.
  20. There is some irony in the fact that mongoDB was designed to run on commodity hardware and now you can run it on one of the most powerful cloud instances in the world.
  21. Mars
  22. I believe the big benefit is performance. Is that correct?
  23. Mercury
  24. If you have long skinny tables with no relationships, a key-value store might be what you are looking for.
  25. Uses the TableStorage NuGet package
  26. Working with graph databases is like talking to that one family member than has an astonishing ability to know how everyone in the family is related to everyone else. Not only that, the know random details about everyone. Graph databases have also been compared to social networks. So I guess it is kind of like Facebook without all the adds, fake news, and posts from the one guys from high school who now shares pictures of his kids once every 47 minutes. Could be very valuable in a manufacturing scenario. Can work with Gremlin.Net or the new .NET SDK.
  27. Neptune
  28. If you have a database with lots of linking tables, you might want to use a graph database.
  29. Query embedded in C# as strings
  30. Cassandra as a service Cassandra Query Language
  31. Good for sparse data. Good for data with varying structures. Data is retrieved by row and column, almost like looking something up in an excel spreadsheet. Created by Facebook The biggest use case is to service users that already have an investment in Cassandra and they want it to run on Azure hardware.
  32. Saturn – because the data is sparse
  33. Cassandra is wide column store, and, as such, essentially a hybrid between a key-value and a tabular database management system. Its data model is a partitioned row store with tunable consistency. The data model makes more sense when you understand that it is designed to run in a distributed environment. Keyspace Table -- Partition (not represented in CQL) ---- Row
  34. Data in Cassandra is often arranged as one query per table, and data is repeated amongst many tables, a process known as denormalization.
  35. Cassandra cannot do joins or subqueries. Rather, Cassandra emphasizes denormalization through features like collections. CQL v4 with some restrictions Selects in CQL look very similar to their SQL equivilant
  36. As we move towards systems with more sophisticated architectures, it will be increasingly important to use the right tools in the right places. CosmosDB’s capabilities put it in a position to solve interesting problems for businesses and applications. Hopefully you have are now better prepared to identify when your application could benefit from using CosmosDB.