SlideShare ist ein Scribd-Unternehmen logo
1 von 17
WEBINAR
Why does Microsoft care about
SQL + NoSQL and Polyglot
Persistence?
SQL, NOSQL, AND POLYGLOT PERSISTENCE
• Microsoft published a book
on 10/15/13 on the benefits
of combining SQL data and
unstructured data
• This webinar explores the
practical implementation of
this strategy
QUESTIONS TO ANSWER
•
•
•
•
•

What is NoSQL?
What is Polyglot Persistence (aka hybrid)?
How do you integrate SQL and NoSQL?
Why is it important?
How does a hybrid .NET, SQL and NoSQL Database benefit
your applications?
• What are the steps to enable your apps to use a
hybrid solution?
WHAT IS NOSQL?
A NoSQL (Not Only SQL) database provides a mechanism for storage and
retrieval of data that employs less constrained consistency models than
traditional relational databases. Motivations for this approach include
simplicity of design, horizontal scaling and finer control over availability.
(Source: Wikipedia)
•
•
•
•
•

Distributed computing – scale out versus scale up
Fault tolerance through mirroring/replication
Ability to be schema-less and handle unstructured data
Eventually consistent as opposed to fully consistent
Several approaches – Key Value, Document, Graph etc
NOSQL EXAMPLES
COMPARISON OF SQL AND NOSQL
A NoSQL database, as the name implies, provides a different storage and processing model than a
traditional SQL based relational database.
RELATIONAL

DOCUMENT
{
“_id” : ObjectId(“4fehbf26
s
{
“frt_name” : “Jeremy”,
i
“_id” : ObjectId(“4fehbf26
s
“last_name” : “Smith”,
{
“frt_name” : “Jeremy”,
i “address” : {
“_id” : ObjectId(“4fehbf26 Glendon
s
“last_name” ::“Smith”,
“street”
“1100
{
“frt_name” : “Jeremy”,
i “address” : {
Avenue”,
“_id” : ObjectId(“4fehbf26 Glendon
s
“last_name” ::“Smith”,Angeles”,
“street”
“city” : “Los
“1100
“frt_name” :“state” : “CA”
i “address”“Jeremy”,
Avenue”,{
:
“last_name” }:“Smith”,Angeles”,
“street”: : “LosGlendon
“city” “1100
“address” : }
Avenue”,{
“state” : “CA”
“street”}: : “LosGlendon Avenue”,
“city” “1100 Angeles”,
“city” :}“Los “CA”
“state” : Angeles”,
“state” : “CA”
}
}
}
}

KEY-VALUE
NOSQL STRENGTHS AND WEAKNESSES

Strength
Multi-node scalability
Weakness
Guaranteed data consistency

Source: Data Access for Highly-Scalable Solutions:
Using SQL, NoSQL, and Polyglot Persistence
COMPARISON OF SQL AND NOSQL
SQL Server

NoSQL

Consistency Model

Fully consistent

Eventually Consistent

Scalability

Single Server (Scale up)

Multiple Servers (Scale out)

Fault Tolerance

HA through Secondary fail over
Server

Fault tolerance through
Mirroring/Replication

Data Design

DBA does data design first

Start schema-less and implement data
structure as you code

Data types

SQL/Relational Data

Table and/or unstructured data

Strengths

Transactions/data
consistency/Robust BI/Reporting
and tooling

Scale/performance/ease of
development and adaptation

So, which is best? BOTH!
WHAT IS POLYGLOT PERSISTENCE?
Polyglot Persistence, like polyglot programming, is all about choosing the
right persistence option for the task at hand.
Scott Leberknight
Different databases are designed to solve different problems. Using a single
database engine for all of the requirements usually leads to non- performant
solutions.
Martin Fowler
Polyglot Persistence is about using hybrid storage approach (RDBMS,
NOSQL,BLOB,FILE) that allows you to use the best tool for the job versus
being locked into one approach.
FatCloud
WHAT DOES POLYGLOT PERSISTENCE LOOK LIKE?

Source: Data Access for Highly-Scalable Solutions:
Using SQL, NoSQL, and Polyglot Persistence
METHOD 1: HOW TO INTEGRATE SQL WITH NOSQL
Data Driven Request Routing

Calls for relational and
transactional data

SQL Server

Invoice
Invoice
Invoice
024
175
832

Web / Mobile or
other Client app

Calls for unstructured
and scale sensitive data

NoSQL Server Cluster

Invoice
Invoice
Invoice
936
492
751

Invoice
Invoice
Invoice
595
037
275

Invoice
Invoice
Invoice
275
Invoice
037
Invoice
936
Invoice
275
Invoice
037
Invoice
936
Invoice
275
037
936

Invoice
Invoice
Invoice
832
Invoice
492
Invoice
024
Invoice
832
Invoice
492
Invoice
024
Invoice
832
492
024

Invoice
Invoice
Invoice
751
Invoice
175
Invoice
595
Invoice
751
Invoice
175
Invoice
595
Invoice
751
175
595
METHOD 2: HOW TO INTEGRATE SQL WITH NOSQL
Automatic Synchronization
FatDB Server Cluster

SQL Server

Invoice
Invoice
Invoice
024
175
832

Invoice
Invoice
Invoice
936
492
751

Invoice
Invoice
Invoice
595
037
275

Automate routine
synchronization
tasks for effortless
data consistency.

SQL Write Back

Invoice
Invoice
Invoice
275
Invoice
037
Invoice
936
Invoice
275
Invoice
037
Invoice
936
Invoice
275
037
936

Invoice
Invoice
Invoice
832
Invoice
492
Invoice
024
Invoice
832
Invoice
492
Invoice
024
Invoice
832
492
024

Invoice
Invoice
Invoice
751
Invoice
175
Invoice
595
Invoice
751
Invoice
175
Invoice
595
Invoice
751
175
595

1. Changes to SQL Server automatically sent to FatDB
2. Changes to FatDB automatically sent to SQL Server
EXAMPLE OF A POLYGLOT DATA STORE
Mobile Clients

1. Legacy apps continue unchanged
updating SQL Server

2. Changes in SQL Server are
transmitted to FatDB
3. FatDB is accessed by
mobile, web, cloud clients delivering
scale and fault tolerance

3

New Web App

FatDB Server Cluster (In house or In cloud)

Invoice
Invoice
Invoice
Invoice
275
Invoice
037
Invoice
936
Invoice
275
Invoice
037
Invoice
936
275
037
936

Invoice
Invoice
Invoice
Invoice
751
Invoice
175
Invoice
595
Invoice
751
Invoice
175
Invoice
595
751
175
595

Invoice
Invoice
Invoice
832
Invoice
492
Invoice
024
Invoice
832
Invoice
492
Invoice
024
832
492
024

2

4. Updates to FatDB are transmitted
back to SQL Server

4

SQL Server
Invoice
Invoice
Invoice
024
175
832

5. BI and Reporting tools can continue
accessing SQL Server as an
accurate data repository
1

Legacy Apps

Invoice
Invoice
Invoice
936
492
751

Invoice
Invoice
Invoice
595
037
275

BI & Reporting

5
WHY IS POLYGLOT (a.k.a HYBRID) IMPORTANT?
“…the advent of NoSQL databases has meant that many application
developers, designers, and architects are now looking to apply the most
appropriate means of data storage to each specific aspect of their systems,
and this may involve implementing multiple types of database and
integrating them into a single solution.”
Microsoft, “Data Access for Highly Scalable Solutions”, 2013
• One size may not fit all that well
• We can now use the best tools or toolset for the job
HOW DOES A HYBRID SOLUTION BENEFIT YOU
1.
2.
3.
4.
5.
6.
7.

More scalable, less cost
Preserve legacy apps
Accelerate time to market
New application functionality
Preserve proven BI and reporting tools
Improved data mining
Superior elasticity
10 TIPS FOR CREATING A HYBRID SOLUTION
1. Think holistically, do your traffic and data analysis
2. Test and meter
3. Minimize architectural complexity, “Missions” trump “Services”
4. Minimize “glue” code and impedance mismatches, standardize
5. Don’t paint yourself into a corner, be “Agile”
6. Minimize maintenance and configuration overhead
7. Look for portability and flexibility
8. Look for strong RDBMS integration
9. Look for an integrated extensible framework
10.Look for good support and resources
QUESTIONS
Chander Dhall, Microsoft MVP
cto@riaconsultingllc.com
@csdhall
Justin Weiler, CTO
justin@fatcloud.com
@fatcloudllc

Weitere ähnliche Inhalte

Was ist angesagt?

Agile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for SuccessAgile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for SuccessEmbarcadero Technologies
 
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...Codemotion
 
ETL with WSO2 Enterprise Middleware Platform
ETL with WSO2 Enterprise Middleware Platform ETL with WSO2 Enterprise Middleware Platform
ETL with WSO2 Enterprise Middleware Platform WSO2
 
SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...
SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...
SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...Edureka!
 
Driving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data AssetsDriving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data AssetsEmbarcadero Technologies
 
Moving to the cloud; PaaS, IaaS or Managed Instance
Moving to the cloud; PaaS, IaaS or Managed InstanceMoving to the cloud; PaaS, IaaS or Managed Instance
Moving to the cloud; PaaS, IaaS or Managed InstanceThomas Sykes
 
Whats New in Postgres 12
Whats New in Postgres 12Whats New in Postgres 12
Whats New in Postgres 12EDB
 
Postgres Integrates Effectively in the "Enterprise Sandbox"
Postgres Integrates Effectively in the "Enterprise Sandbox"Postgres Integrates Effectively in the "Enterprise Sandbox"
Postgres Integrates Effectively in the "Enterprise Sandbox"EDB
 
Postgres Takes Charge Around the World
Postgres Takes Charge Around the WorldPostgres Takes Charge Around the World
Postgres Takes Charge Around the WorldEDB
 
SnapLogic Cloud Integration
SnapLogic Cloud IntegrationSnapLogic Cloud Integration
SnapLogic Cloud IntegrationSnapLogic
 
Data virtualization, Data Federation & IaaS with Jboss Teiid
Data virtualization, Data Federation & IaaS with Jboss TeiidData virtualization, Data Federation & IaaS with Jboss Teiid
Data virtualization, Data Federation & IaaS with Jboss TeiidAnil Allewar
 
No Time to Waste: Migrate from Oracle to Postgres in Minutes
No Time to Waste: Migrate from Oracle to Postgres in MinutesNo Time to Waste: Migrate from Oracle to Postgres in Minutes
No Time to Waste: Migrate from Oracle to Postgres in MinutesEDB
 
5 New Mystery Features of the Denodo Platform
5 New Mystery Features of the Denodo Platform5 New Mystery Features of the Denodo Platform
5 New Mystery Features of the Denodo PlatformDenodo
 
Designing For Occasionally Connected Apps Slideshare
Designing For Occasionally Connected Apps SlideshareDesigning For Occasionally Connected Apps Slideshare
Designing For Occasionally Connected Apps SlideshareDean Willson
 
EDB Postgres Platform
EDB Postgres PlatformEDB Postgres Platform
EDB Postgres PlatformEDB
 
10 Lessons Learned from Meeting with 150 Banks Across the Globe
10 Lessons Learned from Meeting with 150 Banks Across the Globe10 Lessons Learned from Meeting with 150 Banks Across the Globe
10 Lessons Learned from Meeting with 150 Banks Across the GlobeDataWorks Summit
 
Microsoft Cloud Database & Cloud BI
Microsoft Cloud Database & Cloud BIMicrosoft Cloud Database & Cloud BI
Microsoft Cloud Database & Cloud BIMark Kromer
 
Open stack london keynote
Open stack london keynoteOpen stack london keynote
Open stack london keynoteJohn Griffith
 
Deploy, move and manage Postgres across cloud platforms
Deploy, move and manage Postgres across cloud platformsDeploy, move and manage Postgres across cloud platforms
Deploy, move and manage Postgres across cloud platformsAshnikbiz
 

Was ist angesagt? (20)

Agile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for SuccessAgile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for Success
 
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
 
ETL with WSO2 Enterprise Middleware Platform
ETL with WSO2 Enterprise Middleware Platform ETL with WSO2 Enterprise Middleware Platform
ETL with WSO2 Enterprise Middleware Platform
 
SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...
SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...
SSIS Tutorial For Beginners | SQL Server Integration Services (SSIS) | MSBI T...
 
Driving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data AssetsDriving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data Assets
 
Moving to the cloud; PaaS, IaaS or Managed Instance
Moving to the cloud; PaaS, IaaS or Managed InstanceMoving to the cloud; PaaS, IaaS or Managed Instance
Moving to the cloud; PaaS, IaaS or Managed Instance
 
Whats New in Postgres 12
Whats New in Postgres 12Whats New in Postgres 12
Whats New in Postgres 12
 
Postgres Integrates Effectively in the "Enterprise Sandbox"
Postgres Integrates Effectively in the "Enterprise Sandbox"Postgres Integrates Effectively in the "Enterprise Sandbox"
Postgres Integrates Effectively in the "Enterprise Sandbox"
 
Postgres Takes Charge Around the World
Postgres Takes Charge Around the WorldPostgres Takes Charge Around the World
Postgres Takes Charge Around the World
 
SnapLogic Cloud Integration
SnapLogic Cloud IntegrationSnapLogic Cloud Integration
SnapLogic Cloud Integration
 
Data virtualization, Data Federation & IaaS with Jboss Teiid
Data virtualization, Data Federation & IaaS with Jboss TeiidData virtualization, Data Federation & IaaS with Jboss Teiid
Data virtualization, Data Federation & IaaS with Jboss Teiid
 
No Time to Waste: Migrate from Oracle to Postgres in Minutes
No Time to Waste: Migrate from Oracle to Postgres in MinutesNo Time to Waste: Migrate from Oracle to Postgres in Minutes
No Time to Waste: Migrate from Oracle to Postgres in Minutes
 
5 New Mystery Features of the Denodo Platform
5 New Mystery Features of the Denodo Platform5 New Mystery Features of the Denodo Platform
5 New Mystery Features of the Denodo Platform
 
Designing For Occasionally Connected Apps Slideshare
Designing For Occasionally Connected Apps SlideshareDesigning For Occasionally Connected Apps Slideshare
Designing For Occasionally Connected Apps Slideshare
 
EDB Postgres Platform
EDB Postgres PlatformEDB Postgres Platform
EDB Postgres Platform
 
10 Lessons Learned from Meeting with 150 Banks Across the Globe
10 Lessons Learned from Meeting with 150 Banks Across the Globe10 Lessons Learned from Meeting with 150 Banks Across the Globe
10 Lessons Learned from Meeting with 150 Banks Across the Globe
 
Microsoft Cloud Database & Cloud BI
Microsoft Cloud Database & Cloud BIMicrosoft Cloud Database & Cloud BI
Microsoft Cloud Database & Cloud BI
 
Open stack london keynote
Open stack london keynoteOpen stack london keynote
Open stack london keynote
 
Deploy, move and manage Postgres across cloud platforms
Deploy, move and manage Postgres across cloud platformsDeploy, move and manage Postgres across cloud platforms
Deploy, move and manage Postgres across cloud platforms
 
Dimitri SCHMITT - CVEN
Dimitri SCHMITT - CVENDimitri SCHMITT - CVEN
Dimitri SCHMITT - CVEN
 

Ähnlich wie SQL+NoSQL Polyglot Persistence Webinar

Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
 Migration and Coexistence between Relational and NoSQL Databases by Manuel H... Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
Migration and Coexistence between Relational and NoSQL Databases by Manuel H...Big Data Spain
 
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part20812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2Raul Chong
 
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmurTobias Koprowski
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQLbalwinders
 
Gs08 modernize your data platform with sql technologies wash dc
Gs08 modernize your data platform with sql technologies   wash dcGs08 modernize your data platform with sql technologies   wash dc
Gs08 modernize your data platform with sql technologies wash dcBob Ward
 
SQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOL
SQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOLSQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOL
SQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOLBCS Data Management Specialist Group
 
Sql server 2008 r2 analysis services overview whitepaper
Sql server 2008 r2 analysis services overview whitepaperSql server 2008 r2 analysis services overview whitepaper
Sql server 2008 r2 analysis services overview whitepaperKlaudiia Jacome
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabasesAdi Challa
 
Senior database administrator
Senior database administratorSenior database administrator
Senior database administratorMustafa EL-Masry
 
Benefits of the Azure cloud
Benefits of the Azure cloudBenefits of the Azure cloud
Benefits of the Azure cloudJames Serra
 
SQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT SolutionsSQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT SolutionsMichaela Murray
 
Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...
Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...
Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...Hitachi Vantara
 
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015Dave Stokes
 
KoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloudKoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloudTobias Koprowski
 
Azure SQL Database Managed Instance
Azure SQL Database Managed InstanceAzure SQL Database Managed Instance
Azure SQL Database Managed InstanceJames Serra
 

Ähnlich wie SQL+NoSQL Polyglot Persistence Webinar (20)

Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
 Migration and Coexistence between Relational and NoSQL Databases by Manuel H... Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
 
Data virtualization using polybase
Data virtualization using polybaseData virtualization using polybase
Data virtualization using polybase
 
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part20812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
 
IBM - Introduction to Cloudant
IBM - Introduction to CloudantIBM - Introduction to Cloudant
IBM - Introduction to Cloudant
 
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 
Gs08 modernize your data platform with sql technologies wash dc
Gs08 modernize your data platform with sql technologies   wash dcGs08 modernize your data platform with sql technologies   wash dc
Gs08 modernize your data platform with sql technologies wash dc
 
SQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOL
SQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOLSQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOL
SQL vs NoSQL: Why you’ll never dump your relations - Dave Shuttleworth, EXASOL
 
Sql server 2008 r2 analysis services overview whitepaper
Sql server 2008 r2 analysis services overview whitepaperSql server 2008 r2 analysis services overview whitepaper
Sql server 2008 r2 analysis services overview whitepaper
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabases
 
Why you should(n't) run your databases in the cloud
Why you should(n't) run your databases in the cloudWhy you should(n't) run your databases in the cloud
Why you should(n't) run your databases in the cloud
 
Senior database administrator
Senior database administratorSenior database administrator
Senior database administrator
 
Benefits of the Azure cloud
Benefits of the Azure cloudBenefits of the Azure cloud
Benefits of the Azure cloud
 
SQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT SolutionsSQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT Solutions
 
Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...
Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...
Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on ...
 
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
 
KoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloudKoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#9_London_FromPlanToBackupToCloud
 
Azure SQL Database Managed Instance
Azure SQL Database Managed InstanceAzure SQL Database Managed Instance
Azure SQL Database Managed Instance
 
NoSQL Seminer
NoSQL SeminerNoSQL Seminer
NoSQL Seminer
 
tecFinal 451 webinar deck
tecFinal 451 webinar decktecFinal 451 webinar deck
tecFinal 451 webinar deck
 

Kürzlich hochgeladen

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 

Kürzlich hochgeladen (20)

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 

SQL+NoSQL Polyglot Persistence Webinar

  • 1. WEBINAR Why does Microsoft care about SQL + NoSQL and Polyglot Persistence?
  • 2. SQL, NOSQL, AND POLYGLOT PERSISTENCE • Microsoft published a book on 10/15/13 on the benefits of combining SQL data and unstructured data • This webinar explores the practical implementation of this strategy
  • 3. QUESTIONS TO ANSWER • • • • • What is NoSQL? What is Polyglot Persistence (aka hybrid)? How do you integrate SQL and NoSQL? Why is it important? How does a hybrid .NET, SQL and NoSQL Database benefit your applications? • What are the steps to enable your apps to use a hybrid solution?
  • 4. WHAT IS NOSQL? A NoSQL (Not Only SQL) database provides a mechanism for storage and retrieval of data that employs less constrained consistency models than traditional relational databases. Motivations for this approach include simplicity of design, horizontal scaling and finer control over availability. (Source: Wikipedia) • • • • • Distributed computing – scale out versus scale up Fault tolerance through mirroring/replication Ability to be schema-less and handle unstructured data Eventually consistent as opposed to fully consistent Several approaches – Key Value, Document, Graph etc
  • 6. COMPARISON OF SQL AND NOSQL A NoSQL database, as the name implies, provides a different storage and processing model than a traditional SQL based relational database. RELATIONAL DOCUMENT { “_id” : ObjectId(“4fehbf26 s { “frt_name” : “Jeremy”, i “_id” : ObjectId(“4fehbf26 s “last_name” : “Smith”, { “frt_name” : “Jeremy”, i “address” : { “_id” : ObjectId(“4fehbf26 Glendon s “last_name” ::“Smith”, “street” “1100 { “frt_name” : “Jeremy”, i “address” : { Avenue”, “_id” : ObjectId(“4fehbf26 Glendon s “last_name” ::“Smith”,Angeles”, “street” “city” : “Los “1100 “frt_name” :“state” : “CA” i “address”“Jeremy”, Avenue”,{ : “last_name” }:“Smith”,Angeles”, “street”: : “LosGlendon “city” “1100 “address” : } Avenue”,{ “state” : “CA” “street”}: : “LosGlendon Avenue”, “city” “1100 Angeles”, “city” :}“Los “CA” “state” : Angeles”, “state” : “CA” } } } } KEY-VALUE
  • 7. NOSQL STRENGTHS AND WEAKNESSES Strength Multi-node scalability Weakness Guaranteed data consistency Source: Data Access for Highly-Scalable Solutions: Using SQL, NoSQL, and Polyglot Persistence
  • 8. COMPARISON OF SQL AND NOSQL SQL Server NoSQL Consistency Model Fully consistent Eventually Consistent Scalability Single Server (Scale up) Multiple Servers (Scale out) Fault Tolerance HA through Secondary fail over Server Fault tolerance through Mirroring/Replication Data Design DBA does data design first Start schema-less and implement data structure as you code Data types SQL/Relational Data Table and/or unstructured data Strengths Transactions/data consistency/Robust BI/Reporting and tooling Scale/performance/ease of development and adaptation So, which is best? BOTH!
  • 9. WHAT IS POLYGLOT PERSISTENCE? Polyglot Persistence, like polyglot programming, is all about choosing the right persistence option for the task at hand. Scott Leberknight Different databases are designed to solve different problems. Using a single database engine for all of the requirements usually leads to non- performant solutions. Martin Fowler Polyglot Persistence is about using hybrid storage approach (RDBMS, NOSQL,BLOB,FILE) that allows you to use the best tool for the job versus being locked into one approach. FatCloud
  • 10. WHAT DOES POLYGLOT PERSISTENCE LOOK LIKE? Source: Data Access for Highly-Scalable Solutions: Using SQL, NoSQL, and Polyglot Persistence
  • 11. METHOD 1: HOW TO INTEGRATE SQL WITH NOSQL Data Driven Request Routing Calls for relational and transactional data SQL Server Invoice Invoice Invoice 024 175 832 Web / Mobile or other Client app Calls for unstructured and scale sensitive data NoSQL Server Cluster Invoice Invoice Invoice 936 492 751 Invoice Invoice Invoice 595 037 275 Invoice Invoice Invoice 275 Invoice 037 Invoice 936 Invoice 275 Invoice 037 Invoice 936 Invoice 275 037 936 Invoice Invoice Invoice 832 Invoice 492 Invoice 024 Invoice 832 Invoice 492 Invoice 024 Invoice 832 492 024 Invoice Invoice Invoice 751 Invoice 175 Invoice 595 Invoice 751 Invoice 175 Invoice 595 Invoice 751 175 595
  • 12. METHOD 2: HOW TO INTEGRATE SQL WITH NOSQL Automatic Synchronization FatDB Server Cluster SQL Server Invoice Invoice Invoice 024 175 832 Invoice Invoice Invoice 936 492 751 Invoice Invoice Invoice 595 037 275 Automate routine synchronization tasks for effortless data consistency. SQL Write Back Invoice Invoice Invoice 275 Invoice 037 Invoice 936 Invoice 275 Invoice 037 Invoice 936 Invoice 275 037 936 Invoice Invoice Invoice 832 Invoice 492 Invoice 024 Invoice 832 Invoice 492 Invoice 024 Invoice 832 492 024 Invoice Invoice Invoice 751 Invoice 175 Invoice 595 Invoice 751 Invoice 175 Invoice 595 Invoice 751 175 595 1. Changes to SQL Server automatically sent to FatDB 2. Changes to FatDB automatically sent to SQL Server
  • 13. EXAMPLE OF A POLYGLOT DATA STORE Mobile Clients 1. Legacy apps continue unchanged updating SQL Server 2. Changes in SQL Server are transmitted to FatDB 3. FatDB is accessed by mobile, web, cloud clients delivering scale and fault tolerance 3 New Web App FatDB Server Cluster (In house or In cloud) Invoice Invoice Invoice Invoice 275 Invoice 037 Invoice 936 Invoice 275 Invoice 037 Invoice 936 275 037 936 Invoice Invoice Invoice Invoice 751 Invoice 175 Invoice 595 Invoice 751 Invoice 175 Invoice 595 751 175 595 Invoice Invoice Invoice 832 Invoice 492 Invoice 024 Invoice 832 Invoice 492 Invoice 024 832 492 024 2 4. Updates to FatDB are transmitted back to SQL Server 4 SQL Server Invoice Invoice Invoice 024 175 832 5. BI and Reporting tools can continue accessing SQL Server as an accurate data repository 1 Legacy Apps Invoice Invoice Invoice 936 492 751 Invoice Invoice Invoice 595 037 275 BI & Reporting 5
  • 14. WHY IS POLYGLOT (a.k.a HYBRID) IMPORTANT? “…the advent of NoSQL databases has meant that many application developers, designers, and architects are now looking to apply the most appropriate means of data storage to each specific aspect of their systems, and this may involve implementing multiple types of database and integrating them into a single solution.” Microsoft, “Data Access for Highly Scalable Solutions”, 2013 • One size may not fit all that well • We can now use the best tools or toolset for the job
  • 15. HOW DOES A HYBRID SOLUTION BENEFIT YOU 1. 2. 3. 4. 5. 6. 7. More scalable, less cost Preserve legacy apps Accelerate time to market New application functionality Preserve proven BI and reporting tools Improved data mining Superior elasticity
  • 16. 10 TIPS FOR CREATING A HYBRID SOLUTION 1. Think holistically, do your traffic and data analysis 2. Test and meter 3. Minimize architectural complexity, “Missions” trump “Services” 4. Minimize “glue” code and impedance mismatches, standardize 5. Don’t paint yourself into a corner, be “Agile” 6. Minimize maintenance and configuration overhead 7. Look for portability and flexibility 8. Look for strong RDBMS integration 9. Look for an integrated extensible framework 10.Look for good support and resources
  • 17. QUESTIONS Chander Dhall, Microsoft MVP cto@riaconsultingllc.com @csdhall Justin Weiler, CTO justin@fatcloud.com @fatcloudllc

Hinweis der Redaktion

  1. Not only SQL, a different way of thinking about storage. Not relational, but relations can, in fact exist, but they do in code.Designed for unstructured data…Uses a cluster of low cost servers to drive performance, mirror the data, and scale-out the database. This method also allows for high availability and fault tolerance, whereas individual compute nodes may fail, but the data is still available within the clusterRelational - Highly-structured table organization with rigidly-defined data formats and record structure.Document - Collection of complex documents with arbitrary, nested data formats and varying “record” format.Key-Value - An item of data that is identified by an arbitrary name. The key is the name, and the value is the content.BenefitsFLEXIBEL DATA MOdelMANAGING BIG DATASCALABILITY AND ELASTICITYLOWER TCOSql database and relation strengths are for OLTP and ACID requirements.It has been estimated 80% data stored in SQL does not require a relation model and would benefit from the NoSQL model
  2. We cantake the first diagram and make a generic e-commerce version out of easily enough. And draw and analogy to how it would be done with straight SQL
  3. Relational - Highly-structured table organization with rigidly-defined data formats and record structure.Document - Collection of complex documents with arbitrary, nested data formats and varying “record” format.Key-Value - An item of data that is identified by an arbitrary name. The key is the name, and the value is the content.BenefitsFLEXIBEL DATA MOdelMANAGING BIG DATASCALABILITY AND ELASTICITYLOWER TCOSql database and relation strengths are for OLTP and ACID requirements.It has been estimated 80% data stored in SQL does not require a relation model and would benefit from the NoSQL model