SlideShare uma empresa Scribd logo
1 de 25
Scaling Persistent Store Using 
MySQL FABRIC 
P.R.KARTHIK 
MySQL DBA
About US 
Karthik.P.R 
• 4 + years of Industry experience as MySQL DBA. 
• 1+ year at Yahoo! Administrating MySQL servers. 
• Area of Focus MySQL HA and MySQL Sharding 
• Student : M.Sc ( FOSS) 
• Blogger : remotemysqldba.blogspot.in
PROGRAM AGENDA 
• Scaling MySQL 
• Available Sharding Tools 
• MySQL Fabric
Scaling MySQL 
• Scaling MySQL 
• Available Sharding Tools 
• MySQL Fabric 
• Handling Shards
Scaling MySQL 
• Starts with a single node
Scaling MySQL 
• As reads and writes grows 
Scale Vertically. 
• Increase system resources 
• Memory 
• CPU 
• Hard Disk
Scaling MySQL 
Scaling reads using replication. 
• Replication is the best solution. 
• Replication is Async. 
• Failover has to be set. 
• Single writer 
Write Queries Read Queries
Scaling MySQL 
Scaling reads using Galera 
• Read/ Write on any node 
• Synchronous Replication 
• A good HA solution. 
• Easy to add nodes. 
Write / Read 
Queries
Scaling MySQL 
Scaling Writes 
• Replication can’t scale writes 
• Partitioning is needed. 
• Distributes the writes 
• Horizontal scaling or Sharding. 
ID 1 - 1000 ID 1001 - 2000
Scaling MySQL 
Components . 
•Shard Key 
– Range 
– Hash 
– List 
•Meta data store 
•Managing data set 
•High Availability of shards. 
•Database and schema changes.
Scaling MySQL 
Sharding Architecture 
Proxy layer 
State Store 
Shard A 
Shard B 
Shard C 
Application
Scaling MySQL 
Advantages of Sharding 
•Improved Performance 
•Smaller Data set on local node. 
•Handling large data set 
•Scale well horizontally. 
•Only small data set is affected on a node failure. 
Disadvantages of Sharding 
•Managing the shards 
•Code change is need at some cases. 
•Splitting Shards 
•Maintaining the HA
Available Sharding Tools 
• Sharding is used widely in Large Scale MySQL Deployments. 
• Large organization built their own tools for sharding. 
Popular MySQL Shards, 
 Facebook 
• Twitter 
• Tumblr 
• Flickr 
• Youtube 
• Dropbox
Available Sharding Tools 
Sharding Tools. 
1) Saclebase ( Closed Source) 
2) Jetpants (Tumblr ) 
3) Vitess ( Youtube ) 
4) MySQL Fabric ( Oracle MySQL )
MySQL FABRIC
MySQL FABRIC 
• MySQL Fabric is the frame work to maintain shards and High Availability. 
• Downloaded from MySQL Utilities. 
• Good CLI commands. 
• Works on MySQL > 5.6.10 
• XML RPC for Python , php and Java. 
• Minimized downtime of shard.
MySQL FABRIC ARCHITECTURE 
Application XML-RPC 
Connector 
XML-RPC 
FABRIC 
NODE 
Global Group 
Group 1 Group 2 Group 3 Group 4 
Back Store
MySQL FABRIC 
FABRIC Components. 
• Fabric node. 
• Fabric aware connectors ( XML RPC ) 
• Server Groups. 
– Global Group 
– Shard Group 
• Back Store
MySQL FABRIC 
Fabric node 
• Stores Fabric Config 
• Shard Moving 
• Shard splitting 
• High Availability monitoring 
Back Store 
• Global tables info 
• Shard key info and mapping 
• Shard monitoring 
Fabric Node Back store
MySQL FABRIC 
Fabric aware connectors 
• Supports Python/ php / Java Connectors 
• Fetch Shard info 
• Local cache 
• Avoids the proxy hop. 
Application XML-RPC 
Connector
MySQL FABRIC 
Server Groups 
• Stores actual data 
– Global Group 
– Shard Group 
• Primary – Read / Write 
• Secondary – Reads ( failover) 
• Spare ( On request ) 
Server Group 
Primary Node Secondary Node 
Spare Node
MySQL FABRIC 
Server Groups ( Global Group ) 
• Stores Global Tables and schema 
• Schema changes 
• Replicates to Shard groups 
Global Group Shard Group 
Global Writes 
Fabric Node
MySQL FABRIC ARCHITECTURE ( Again ) 
Application XML-RPC 
Connector 
XML-RPC 
FABRIC 
NODE 
Global Group 
Group 1 Group 2 Group 3 Group 4 
Back Store
MySQL FABRIC 
Advantages: 
• Ease of Failover with GTID. 
• Shard Split is easy 
• RPC avoid network hops. 
Dis Advantages 
• Fabric node will be single point of failure 
• No Cross Shard . ( Shard query can help here) 
• Limited Connectors.
THANK YOU

Mais conteúdo relacionado

Mais procurados

Using MySQL in Automated Testing
Using MySQL in Automated TestingUsing MySQL in Automated Testing
Using MySQL in Automated Testing
Morgan Tocker
 
MySQL 5.6 - Operations and Diagnostics Improvements
MySQL 5.6 - Operations and Diagnostics ImprovementsMySQL 5.6 - Operations and Diagnostics Improvements
MySQL 5.6 - Operations and Diagnostics Improvements
Morgan Tocker
 

Mais procurados (20)

How MariaDB is approaching DBaaS
How MariaDB is approaching DBaaSHow MariaDB is approaching DBaaS
How MariaDB is approaching DBaaS
 
ClustrixDB: how distributed databases scale out
ClustrixDB: how distributed databases scale outClustrixDB: how distributed databases scale out
ClustrixDB: how distributed databases scale out
 
Backup and Recovery in MySQL Cluster
Backup and Recovery in MySQL ClusterBackup and Recovery in MySQL Cluster
Backup and Recovery in MySQL Cluster
 
Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...
Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...
Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...
 
Using MySQL in Automated Testing
Using MySQL in Automated TestingUsing MySQL in Automated Testing
Using MySQL in Automated Testing
 
Apache Kafka at LinkedIn
Apache Kafka at LinkedInApache Kafka at LinkedIn
Apache Kafka at LinkedIn
 
Scalablity and benchmark in mysql performance
Scalablity and benchmark in mysql performanceScalablity and benchmark in mysql performance
Scalablity and benchmark in mysql performance
 
Global Data Replication with Galera for Ansell Guardian®
Global Data Replication with Galera for Ansell Guardian®Global Data Replication with Galera for Ansell Guardian®
Global Data Replication with Galera for Ansell Guardian®
 
Configuring workload-based storage and topologies
Configuring workload-based storage and topologiesConfiguring workload-based storage and topologies
Configuring workload-based storage and topologies
 
Capacity planning for your data stores
Capacity planning for your data storesCapacity planning for your data stores
Capacity planning for your data stores
 
Writing powerful stored procedures in PL/SQL
Writing powerful stored procedures in PL/SQLWriting powerful stored procedures in PL/SQL
Writing powerful stored procedures in PL/SQL
 
Getting started with postgresql
Getting started with postgresqlGetting started with postgresql
Getting started with postgresql
 
CosmosDB for DBAs & Developers
CosmosDB for DBAs & DevelopersCosmosDB for DBAs & Developers
CosmosDB for DBAs & Developers
 
MySQL Live Migration - Common Scenarios
MySQL Live Migration - Common ScenariosMySQL Live Migration - Common Scenarios
MySQL Live Migration - Common Scenarios
 
Auto Europe's ongoing journey with MariaDB and open source
Auto Europe's ongoing journey with MariaDB and open sourceAuto Europe's ongoing journey with MariaDB and open source
Auto Europe's ongoing journey with MariaDB and open source
 
Introduction to CosmosDB - Azure Bootcamp 2018
Introduction to CosmosDB - Azure Bootcamp 2018Introduction to CosmosDB - Azure Bootcamp 2018
Introduction to CosmosDB - Azure Bootcamp 2018
 
MySQL Performance Schema in Action
MySQL Performance Schema in Action MySQL Performance Schema in Action
MySQL Performance Schema in Action
 
Scylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
Scylla Summit 2022: How ScyllaDB Powers This Next Tech CycleScylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
Scylla Summit 2022: How ScyllaDB Powers This Next Tech Cycle
 
MySQL 5.6 - Operations and Diagnostics Improvements
MySQL 5.6 - Operations and Diagnostics ImprovementsMySQL 5.6 - Operations and Diagnostics Improvements
MySQL 5.6 - Operations and Diagnostics Improvements
 
MySQL Rebuild using Logical Backups
MySQL Rebuild using Logical Backups MySQL Rebuild using Logical Backups
MySQL Rebuild using Logical Backups
 

Semelhante a Scaling MySQL Using Fabric

MySQL HA Sharding-Fabric
MySQL HA Sharding-FabricMySQL HA Sharding-Fabric
MySQL HA Sharding-Fabric
Abdul Manaf
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Continuent
 
Massively sharded my sql at tumblr presentation
Massively sharded my sql at tumblr presentationMassively sharded my sql at tumblr presentation
Massively sharded my sql at tumblr presentation
kriptonium
 
Optimizing MySQL for Cascade Server
Optimizing MySQL for Cascade ServerOptimizing MySQL for Cascade Server
Optimizing MySQL for Cascade Server
hannonhill
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQLWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Continuent
 

Semelhante a Scaling MySQL Using Fabric (20)

MySQL HA Sharding-Fabric
MySQL HA Sharding-FabricMySQL HA Sharding-Fabric
MySQL HA Sharding-Fabric
 
Using MySQL Fabric for High Availability and Scaling Out
Using MySQL Fabric for High Availability and Scaling OutUsing MySQL Fabric for High Availability and Scaling Out
Using MySQL Fabric for High Availability and Scaling Out
 
MariaDB 10: The Complete Tutorial
MariaDB 10: The Complete TutorialMariaDB 10: The Complete Tutorial
MariaDB 10: The Complete Tutorial
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
 
The Complete MariaDB Server tutorial
The Complete MariaDB Server tutorialThe Complete MariaDB Server tutorial
The Complete MariaDB Server tutorial
 
Massively sharded my sql at tumblr presentation
Massively sharded my sql at tumblr presentationMassively sharded my sql at tumblr presentation
Massively sharded my sql at tumblr presentation
 
Evan Ellis "Tumblr. Massively Sharded MySQL"
Evan Ellis "Tumblr. Massively Sharded MySQL"Evan Ellis "Tumblr. Massively Sharded MySQL"
Evan Ellis "Tumblr. Massively Sharded MySQL"
 
Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2
 
The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015
 
Getting started with Riak in the Cloud
Getting started with Riak in the CloudGetting started with Riak in the Cloud
Getting started with Riak in the Cloud
 
MySQL Options in OpenStack
MySQL Options in OpenStackMySQL Options in OpenStack
MySQL Options in OpenStack
 
Optimizing MySQL for Cascade Server
Optimizing MySQL for Cascade ServerOptimizing MySQL for Cascade Server
Optimizing MySQL for Cascade Server
 
MySQL NDB Cluster 8.0
MySQL NDB Cluster 8.0MySQL NDB Cluster 8.0
MySQL NDB Cluster 8.0
 
MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)
 
OpenStack Days East -- MySQL Options in OpenStack
OpenStack Days East -- MySQL Options in OpenStackOpenStack Days East -- MySQL Options in OpenStack
OpenStack Days East -- MySQL Options in OpenStack
 
MySQL: Scale Through Consolidation Webinar
MySQL: Scale Through Consolidation Webinar MySQL: Scale Through Consolidation Webinar
MySQL: Scale Through Consolidation Webinar
 
Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)
 
How does Apache Pegasus (incubating) community develop at SensorsData
How does Apache Pegasus (incubating) community develop at SensorsDataHow does Apache Pegasus (incubating) community develop at SensorsData
How does Apache Pegasus (incubating) community develop at SensorsData
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQLWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Último (20)

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Scaling MySQL Using Fabric

  • 1. Scaling Persistent Store Using MySQL FABRIC P.R.KARTHIK MySQL DBA
  • 2. About US Karthik.P.R • 4 + years of Industry experience as MySQL DBA. • 1+ year at Yahoo! Administrating MySQL servers. • Area of Focus MySQL HA and MySQL Sharding • Student : M.Sc ( FOSS) • Blogger : remotemysqldba.blogspot.in
  • 3. PROGRAM AGENDA • Scaling MySQL • Available Sharding Tools • MySQL Fabric
  • 4. Scaling MySQL • Scaling MySQL • Available Sharding Tools • MySQL Fabric • Handling Shards
  • 5. Scaling MySQL • Starts with a single node
  • 6. Scaling MySQL • As reads and writes grows Scale Vertically. • Increase system resources • Memory • CPU • Hard Disk
  • 7. Scaling MySQL Scaling reads using replication. • Replication is the best solution. • Replication is Async. • Failover has to be set. • Single writer Write Queries Read Queries
  • 8. Scaling MySQL Scaling reads using Galera • Read/ Write on any node • Synchronous Replication • A good HA solution. • Easy to add nodes. Write / Read Queries
  • 9. Scaling MySQL Scaling Writes • Replication can’t scale writes • Partitioning is needed. • Distributes the writes • Horizontal scaling or Sharding. ID 1 - 1000 ID 1001 - 2000
  • 10. Scaling MySQL Components . •Shard Key – Range – Hash – List •Meta data store •Managing data set •High Availability of shards. •Database and schema changes.
  • 11. Scaling MySQL Sharding Architecture Proxy layer State Store Shard A Shard B Shard C Application
  • 12. Scaling MySQL Advantages of Sharding •Improved Performance •Smaller Data set on local node. •Handling large data set •Scale well horizontally. •Only small data set is affected on a node failure. Disadvantages of Sharding •Managing the shards •Code change is need at some cases. •Splitting Shards •Maintaining the HA
  • 13. Available Sharding Tools • Sharding is used widely in Large Scale MySQL Deployments. • Large organization built their own tools for sharding. Popular MySQL Shards,  Facebook • Twitter • Tumblr • Flickr • Youtube • Dropbox
  • 14. Available Sharding Tools Sharding Tools. 1) Saclebase ( Closed Source) 2) Jetpants (Tumblr ) 3) Vitess ( Youtube ) 4) MySQL Fabric ( Oracle MySQL )
  • 16. MySQL FABRIC • MySQL Fabric is the frame work to maintain shards and High Availability. • Downloaded from MySQL Utilities. • Good CLI commands. • Works on MySQL > 5.6.10 • XML RPC for Python , php and Java. • Minimized downtime of shard.
  • 17. MySQL FABRIC ARCHITECTURE Application XML-RPC Connector XML-RPC FABRIC NODE Global Group Group 1 Group 2 Group 3 Group 4 Back Store
  • 18. MySQL FABRIC FABRIC Components. • Fabric node. • Fabric aware connectors ( XML RPC ) • Server Groups. – Global Group – Shard Group • Back Store
  • 19. MySQL FABRIC Fabric node • Stores Fabric Config • Shard Moving • Shard splitting • High Availability monitoring Back Store • Global tables info • Shard key info and mapping • Shard monitoring Fabric Node Back store
  • 20. MySQL FABRIC Fabric aware connectors • Supports Python/ php / Java Connectors • Fetch Shard info • Local cache • Avoids the proxy hop. Application XML-RPC Connector
  • 21. MySQL FABRIC Server Groups • Stores actual data – Global Group – Shard Group • Primary – Read / Write • Secondary – Reads ( failover) • Spare ( On request ) Server Group Primary Node Secondary Node Spare Node
  • 22. MySQL FABRIC Server Groups ( Global Group ) • Stores Global Tables and schema • Schema changes • Replicates to Shard groups Global Group Shard Group Global Writes Fabric Node
  • 23. MySQL FABRIC ARCHITECTURE ( Again ) Application XML-RPC Connector XML-RPC FABRIC NODE Global Group Group 1 Group 2 Group 3 Group 4 Back Store
  • 24. MySQL FABRIC Advantages: • Ease of Failover with GTID. • Shard Split is easy • RPC avoid network hops. Dis Advantages • Fabric node will be single point of failure • No Cross Shard . ( Shard query can help here) • Limited Connectors.