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
un...
QUESTIONS TO ANSWER
•
•
•
•
•
What is NoSQL?
What is Polyglot Persistence (aka hybrid)?
How do you integrate SQL and NoSQ...
WHAT IS NOSQL?
A NoSQL (Not Only SQL) database provides a mechanism for storage and
retrieval of data that employs less co...
NOSQL EXAMPLES
COMPARISON OF SQL AND NOSQL
A NoSQL database, as the name implies, provides a different storage and processing model than ...
NOSQL STRENGTHS AND WEAKNESSES
Strength
Multi-node scalability
Weakness
Guaranteed data consistency
Source: Data Access ...
COMPARISON OF SQL AND NOSQL
SQL Server
NoSQL
Consistency Model
Fully consistent
Eventually Consistent
Scalability
Si...
WHAT IS POLYGLOT PERSISTENCE?
Polyglot Persistence, like polyglot programming, is all about choosing the
right persistence...
WHAT DOES POLYGLOT PERSISTENCE LOOK LIKE?
Source: Data Access for Highly-Scalable Solutions:
Using SQL, NoSQL, and Polygl...
METHOD 1: HOW TO INTEGRATE SQL WITH NOSQL
Data Driven Request Routing
Calls for relational and
transactional data
SQL Se...
METHOD 2: HOW TO INTEGRATE SQL WITH NOSQL
Automatic Synchronization
FatDB Server Cluster
SQL Server
Invoice
Invoice
Invo...
EXAMPLE OF A POLYGLOT DATA STORE
Mobile Clients
1. Legacy apps continue unchanged
updating SQL Server
2. Changes in SQL ...
WHY IS POLYGLOT (a.k.a HYBRID) IMPORTANT?
“…the advent of NoSQL databases has meant that many application
developers, desi...
HOW DOES A HYBRID SOLUTION BENEFIT YOU
1.
2.
3.
4.
5.
6.
7.
More scalable, less cost
Preserve legacy apps
Accelerate time...
10 TIPS FOR CREATING A HYBRID SOLUTION
1. Think holistically, do your traffic and data analysis
2. Test and meter
3. Minim...
QUESTIONS
Chander Dhall, Microsoft MVP
cto@riaconsultingllc.com
@csdhall
Justin Weiler, CTO
justin@fatcloud.com
@fatcloudl...
of 17

Why does Microsoft care about NoSQL, SQL and Polyglot Persistence?

FatDB is the only windows NoSQL database that focuses on Polyglot persistence and contains a full integration with SQL Server.
Published on: Mar 4, 2016
Published in: Technology      Business      
Source: www.slideshare.net


Transcripts - Why does Microsoft care about NoSQL, SQL and Polyglot Persistence?

  • 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
  • 5. NOSQL EXAMPLES
  • 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

Related Documents