{"id":22109,"date":"2020-11-17T13:26:23","date_gmt":"2020-11-17T07:56:23","guid":{"rendered":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/"},"modified":"2024-09-03T14:53:37","modified_gmt":"2024-09-03T09:23:37","slug":"understanding-cap-theorem","status":"publish","type":"post","link":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/","title":{"rendered":"What is CAP Theorem?"},"content":{"rendered":"\n<p>CAP theorem is also called Brewer's theorem, named after the computer scientist, Eric Brewer. We will try to answer the following questions to better understand CAP theorem:<\/p>\n\n\n\n<p><strong><em>Contributed by: <a href=\"https:\/\/www.linkedin.com\/in\/ramalingam-mkp-769271a\/\" target=\"_blank\" rel=\"nofollow noreferrer noopener\" aria-label=\"Ramalingam (opens in a new tab)\">Ramalingam<\/a> <\/em><\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>What is the CAP theorem?<\/strong><\/li><li><strong>Where can the CAP theorem be used as an example?<\/strong><\/li><li><strong>How is CAP theorem used in the field of distributed system databases?&nbsp;<\/strong><\/li><\/ul>\n\n\n\n<p>Before we deep dive into the concepts, let us try to understand the distribution system. A distributed system is any network structure that consists of autonomous systems that are connected using a distribution node. Distributed systems help in sharing different resources and capabilities to provide users with a single, integrated coherent network. Why do you build a distributed system? This is because we are trying to build something more reliable than a centralized system.<\/p>\n\n\n\n<p>With the understanding of the distribution system, now we can relate to the CAP theorem. CAP theorem stands for:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>C<\/strong>onsistency<\/li><li><strong>A<\/strong>vailability<\/li><li><strong>P<\/strong>artition tolerance<\/li><\/ul>\n\n\n\n<p>The theorem talks about the trade-offs between consistency and availability that you have to make if your system ever suffers from partitions.\u00a0<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"bank-example-to-understand-cap-theorem\"><strong>Bank example to understand CAP theorem<\/strong><\/h2>\n\n\n\n<p>Let us consider a bank which has two branches and one account. Bank branches can support&nbsp;<\/p>\n\n\n\n<p>three different operations:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Money withdrawal<\/li><li>Money deposit<\/li><li>Check Account balance<\/li><\/ol>\n\n\n\n<p>Now the account holder walks up to a bank branch. If everything is working, then the system is relatively simple. If the account holder deposits or withdraw money, banks need to update the balance on both branch systems and then complete the track. This involves a consistent view of the account balance as it's always the same on every branch system. As an account holder, he will like to operate the account with whatever operations he wants and also whenever he wants. Bank branch system needs to be available for him. We will consider the following negative scenario.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>A customer walks up to a Branch, and the branch system does not work. In that case, the bank branch needs to put a sign on the Bank branch saying: Today, our bank branch is not operational, please visit the nearest branch.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Now customers walk up to a branch that's working, but there is another branch which is not working. Now the problem is both the branch systems cannot network with each other, or their communication is too slow for the system to work. The distributed system has suffered a partition in this case. So, what does the bank branch do next when this partition happens? This is the design decision that the CAP theorem talks about. The system can make a choice either to be consistent or available, but it can't do both. <\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"bank-with-consistency-design\"><strong>Bank with Consistency design<\/strong><\/h2>\n\n\n\n<p>If the bank has chosen a consistent design, then the branch will inform: <strong>I can't accept deposits or withdrawals right now, because I can't update the balance in the other bank branch.<\/strong> As a customer, you might get a warm fuzzy feeling, oh cool, the bank is doing everything at hand to keep my money in account balance safe. Also, you will be annoyed because you can't use any banking services.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"bank-with-availability-design\"><strong>Bank with availability design<\/strong><\/h2>\n\n\n\n<p>In availability design, when you walk up to the branch offices and say, I can't talk to the other branch system. But I will allow you to make the positive withdrawals and will keep track of what happened and then later when the partition heals with the other branch, the account transaction will be updated in another bank branch. So, with this design, it's more available, even though bank branches are inconsistent in the storage of the bank balance. In a nutshell, this is the cap theorem when you design your system for availability.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"bank-with-degree-of-consistency-and-availability-design\"><strong>Bank with degree of consistency and availability design<\/strong><\/h2>\n\n\n\n<p>In the real world, we can also consider degrees of consistency and degrees of availability. Also make trade-offs.<\/p>\n\n\n\n<p>&nbsp;For example, when a partition happens, we can have bank branches:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Accept partial deposits &amp; withdrawal&nbsp;<\/li><li>Not provide balance information service.<\/li><\/ul>\n\n\n\n<p>Banks can also provide balance information but only provide tentative balance information. Which means, we are not sure if this is the correct balance, but it is probably right if you haven't been running between ATMs.<\/p>\n\n\n\n<p>Banks can allow withdrawals, but only allow customers to do a limited number of transactions and amount. That way, the account balance does not become negative, and the customer is not hit with a huge fee. In turn, banks can also be sued.&nbsp;<\/p>\n\n\n\n<p>In short, the bank decides to make. How much complexity do you want to add to your system, to get higher availability to the account holders? Because consistent designs tend to be simpler to build and understand. Complicated availability design can bring conflicts and can become harder or even impossible to resolve.<\/p>\n\n\n\n<p>Above mentioned are not the only ways we could increase availability in the branch system. Banks can add power backups to branches. So, those systems are less likely to fail due to a power outage. Banks can test the software better so that we're not going to have failures due to bugs as often. Banks might need to decide quite frankly the network doesn't fail very often to have better customer experience.<\/p>\n\n\n\n<p>Just a thought. Try to apply a bank example with an e-commerce portal for supply chain management. Think about amazon prime day sales where the order in your checkout becomes unavailable. What amazon should choose to be consistent in the product listing or always have the inventory to be available?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"cap-theorem-in-distributed-databases\"><strong>CAP theorem in distributed databases<\/strong><\/h2>\n\n\n\n<p>Just a recap, before applying to the distributed databases.<\/p>\n\n\n\n<p><strong>Consistency <\/strong>means all the users can see the same data at same time.<\/p>\n\n\n\n<p><strong>Partition tolerance<\/strong> means the system continues to operate in spite of network failures.<\/p>\n\n\n\n<p><strong>Availability<\/strong> means the system continues to operate even in the presence of node failure.<\/p>\n\n\n\n<p>Now a question arrives which databases to use for the following scenarios <strong>CA, AP and CP.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"consistency-and-availability\"><strong>Consistency and Availability<\/strong>:<\/h2>\n\n\n\n<p>Relational databases are the best databases for this scenario. For better understanding, we can have below equation:<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>Same Data \/ Some Data &nbsp; &gt; Isolated Data<\/strong><\/p>\n\n\n\n<p>Example \u2013 <strong>IBM DB2, MYSQL, Microsoft SQL Server and Oracle<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"consistency-and-partition-tolerance\"><strong>Consistency and Partition tolerance<\/strong>:<\/h2>\n\n\n\n<p>Isolated data which are always consistent. For better understanding, we can have below equation:<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>Same Data \/ Isolated Data &gt; Some Data&nbsp;&nbsp;&nbsp;<\/strong><\/p>\n\n\n\n<p>Example \u2013 <strong>Mongodb, Redis, Couchbase and Apache HBASE<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"availability-and-partition-tolerance\"><strong>Availability and Partition tolerance<\/strong>:<\/h2>\n\n\n\n<p>Isolated data which are always available. For better understanding, we can have below equation:<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>Some Data \/ Isolated Data &gt; Same Data&nbsp;&nbsp;&nbsp;<\/strong><\/p>\n\n\n\n<p>Example \u2013 <strong>Cassandra, CouchDB &amp; Amazon DynamoDB<\/strong><\/p>\n\n\n\n<p>Just a reminder, though the database examples for each scenario are provided, we can also make the databases behave differently. For example, by setting up the database properties, we can also make Cassandra more consistent.<\/p>\n\n\n\n<p><strong>Extension to CAP theorem<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"pacelc-theorem\"><strong>PACELC Theorem:<\/strong><\/h2>\n\n\n\n<p>This was developed to give a complete description of the space of potential tradeoffs for a distributed system. For a high level of understanding, it adds an else \u2018E\u2019. While you need to choose between availability and consistency if communication between partitions has failed in a distributed system, even if things are running well and there are no network issues, there is still going to be a trade-off between consistency and latency (the \u2018LC\u2019).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"amazon-pie-theorem\"><strong>Amazon PIE Theorem:<\/strong><\/h2>\n\n\n\n<p>Similar to the CAP theorem, here you can choose two features out of three in a data system. Features involve pattern flexibility, efficiency and infinite scale.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"conclusion\"><strong>Conclusion<\/strong><\/h2>\n\n\n\n<p>The CAP theorem is useful for <strong>establishing priorities in database server infrastructure and configuration<\/strong>. In such a scenario, it is still possible to achieve both consistency and availability within acceptable parameters.<\/p>\n\n\n\n<p>I like to conclude with a quote from Napoleon Bonaparte.<\/p>\n\n\n\n<p><strong>\u201cNothing is more difficult, and therefore more precious than to be able to decide.\u201d<\/strong><\/p>\n\n\n\n<p>Hope you were able to gain knowledge from this blog post on the CAP Theorem. I hope you make the right decision with the distribution databases. Happy Learning! To learn more such concepts, enrol with <a href=\"https:\/\/www.mygreatlearning.com\/academy\" target=\"_blank\" rel=\"noreferrer noopener\">Great Learning Academy's free online courses<\/a>. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>CAP theorem is also called Brewer's theorem, named after the computer scientist, Eric Brewer. We will try to answer the following questions to better understand CAP theorem: Contributed by: Ramalingam What is the CAP theorem? Where can the CAP theorem be used as an example? How is CAP theorem used in the field of distributed [&hellip;]<\/p>\n","protected":false},"author":41,"featured_media":22120,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[9],"tags":[],"content_type":[],"class_list":["post-22109","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-science"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>What is CAP Theorem | Distributed Database Management Systems<\/title>\n<meta name=\"description\" content=\"What is CAP Theorem: CAP theorem is also called Brewer&#039;s theorem, named after the computer scientist, Eric Brewer. Learn more about it with the help of an example.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is CAP Theorem?\" \/>\n<meta property=\"og:description\" content=\"What is CAP Theorem: CAP theorem is also called Brewer&#039;s theorem, named after the computer scientist, Eric Brewer. Learn more about it with the help of an example.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/\" \/>\n<meta property=\"og:site_name\" content=\"Great Learning Blog: Free Resources what Matters to shape your Career!\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/GreatLearningOfficial\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-11-17T07:56:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-03T09:23:37+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1365\" \/>\n\t<meta property=\"og:image:height\" content=\"768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Great Learning Editorial Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/Great_Learning\" \/>\n<meta name=\"twitter:site\" content=\"@Great_Learning\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Great Learning Editorial Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/\"},\"author\":{\"name\":\"Great Learning Editorial Team\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/person\\\/6f993d1be4c584a335951e836f2656ad\"},\"headline\":\"What is CAP Theorem?\",\"datePublished\":\"2020-11-17T07:56:23+00:00\",\"dateModified\":\"2024-09-03T09:23:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/\"},\"wordCount\":1353,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/10\\\/iStock-1094241146.jpg\",\"articleSection\":[\"Data Science and Analytics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/\",\"name\":\"What is CAP Theorem | Distributed Database Management Systems\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/10\\\/iStock-1094241146.jpg\",\"datePublished\":\"2020-11-17T07:56:23+00:00\",\"dateModified\":\"2024-09-03T09:23:37+00:00\",\"description\":\"What is CAP Theorem: CAP theorem is also called Brewer's theorem, named after the computer scientist, Eric Brewer. Learn more about it with the help of an example.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/10\\\/iStock-1094241146.jpg\",\"contentUrl\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/10\\\/iStock-1094241146.jpg\",\"width\":1365,\"height\":768,\"caption\":\"cap theorem\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/understanding-cap-theorem\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Data Science and Analytics\",\"item\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/data-science\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"What is CAP Theorem?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/\",\"name\":\"Great Learning Blog\",\"description\":\"Learn, Upskill &amp; Career Development Guide and Resources\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#organization\"},\"alternateName\":\"Great Learning\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#organization\",\"name\":\"Great Learning\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/GL-Logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/GL-Logo.jpg\",\"width\":900,\"height\":900,\"caption\":\"Great Learning\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/GreatLearningOfficial\\\/\",\"https:\\\/\\\/x.com\\\/Great_Learning\",\"https:\\\/\\\/www.instagram.com\\\/greatlearningofficial\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/school\\\/great-learning\\\/\",\"https:\\\/\\\/in.pinterest.com\\\/greatlearning12\\\/\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/beaconelearning\\\/\"],\"description\":\"Great Learning is a leading global ed-tech company for professional training and higher education. It offers comprehensive, industry-relevant, hands-on learning programs across various business, technology, and interdisciplinary domains driving the digital economy. These programs are developed and offered in collaboration with the world's foremost academic institutions.\",\"email\":\"info@mygreatlearning.com\",\"legalName\":\"Great Learning Education Services Pvt. Ltd\",\"foundingDate\":\"2013-11-29\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1001\",\"maxValue\":\"5000\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/person\\\/6f993d1be4c584a335951e836f2656ad\",\"name\":\"Great Learning Editorial Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/02\\\/unnamed.webp\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/02\\\/unnamed.webp\",\"contentUrl\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/02\\\/unnamed.webp\",\"caption\":\"Great Learning Editorial Team\"},\"description\":\"The Great Learning Editorial Staff includes a dynamic team of subject matter experts, instructors, and education professionals who combine their deep industry knowledge with innovative teaching methods. Their mission is to provide learners with the skills and insights needed to excel in their careers, whether through upskilling, reskilling, or transitioning into new fields.\",\"sameAs\":[\"https:\\\/\\\/www.mygreatlearning.com\\\/\",\"https:\\\/\\\/in.linkedin.com\\\/school\\\/great-learning\\\/\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/Great_Learning\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCObs0kLIrDjX2LLSybqNaEA\"],\"award\":[\"Best EdTech Company of the Year 2024\",\"Education Economictimes Outstanding Education\\\/Edtech Solution Provider of the Year 2024\",\"Leading E-learning Platform 2024\"],\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/author\\\/greatlearning\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is CAP Theorem | Distributed Database Management Systems","description":"What is CAP Theorem: CAP theorem is also called Brewer's theorem, named after the computer scientist, Eric Brewer. Learn more about it with the help of an example.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/","og_locale":"en_US","og_type":"article","og_title":"What is CAP Theorem?","og_description":"What is CAP Theorem: CAP theorem is also called Brewer's theorem, named after the computer scientist, Eric Brewer. Learn more about it with the help of an example.","og_url":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/","og_site_name":"Great Learning Blog: Free Resources what Matters to shape your Career!","article_publisher":"https:\/\/www.facebook.com\/GreatLearningOfficial\/","article_published_time":"2020-11-17T07:56:23+00:00","article_modified_time":"2024-09-03T09:23:37+00:00","og_image":[{"width":1365,"height":768,"url":"http:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg","type":"image\/jpeg"}],"author":"Great Learning Editorial Team","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/Great_Learning","twitter_site":"@Great_Learning","twitter_misc":{"Written by":"Great Learning Editorial Team","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#article","isPartOf":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/"},"author":{"name":"Great Learning Editorial Team","@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/person\/6f993d1be4c584a335951e836f2656ad"},"headline":"What is CAP Theorem?","datePublished":"2020-11-17T07:56:23+00:00","dateModified":"2024-09-03T09:23:37+00:00","mainEntityOfPage":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/"},"wordCount":1353,"commentCount":0,"publisher":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg","articleSection":["Data Science and Analytics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/","url":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/","name":"What is CAP Theorem | Distributed Database Management Systems","isPartOf":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#primaryimage"},"image":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg","datePublished":"2020-11-17T07:56:23+00:00","dateModified":"2024-09-03T09:23:37+00:00","description":"What is CAP Theorem: CAP theorem is also called Brewer's theorem, named after the computer scientist, Eric Brewer. Learn more about it with the help of an example.","breadcrumb":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#primaryimage","url":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg","contentUrl":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg","width":1365,"height":768,"caption":"cap theorem"},{"@type":"BreadcrumbList","@id":"https:\/\/www.mygreatlearning.com\/blog\/understanding-cap-theorem\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog","item":"https:\/\/www.mygreatlearning.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Data Science and Analytics","item":"https:\/\/www.mygreatlearning.com\/blog\/data-science\/"},{"@type":"ListItem","position":3,"name":"What is CAP Theorem?"}]},{"@type":"WebSite","@id":"https:\/\/www.mygreatlearning.com\/blog\/#website","url":"https:\/\/www.mygreatlearning.com\/blog\/","name":"Great Learning Blog","description":"Learn, Upskill &amp; Career Development Guide and Resources","publisher":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#organization"},"alternateName":"Great Learning","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mygreatlearning.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.mygreatlearning.com\/blog\/#organization","name":"Great Learning","url":"https:\/\/www.mygreatlearning.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/06\/GL-Logo.jpg","contentUrl":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/06\/GL-Logo.jpg","width":900,"height":900,"caption":"Great Learning"},"image":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/GreatLearningOfficial\/","https:\/\/x.com\/Great_Learning","https:\/\/www.instagram.com\/greatlearningofficial\/","https:\/\/www.linkedin.com\/school\/great-learning\/","https:\/\/in.pinterest.com\/greatlearning12\/","https:\/\/www.youtube.com\/user\/beaconelearning\/"],"description":"Great Learning is a leading global ed-tech company for professional training and higher education. It offers comprehensive, industry-relevant, hands-on learning programs across various business, technology, and interdisciplinary domains driving the digital economy. These programs are developed and offered in collaboration with the world's foremost academic institutions.","email":"info@mygreatlearning.com","legalName":"Great Learning Education Services Pvt. Ltd","foundingDate":"2013-11-29","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1001","maxValue":"5000"}},{"@type":"Person","@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/person\/6f993d1be4c584a335951e836f2656ad","name":"Great Learning Editorial Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/02\/unnamed.webp","url":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/02\/unnamed.webp","contentUrl":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/02\/unnamed.webp","caption":"Great Learning Editorial Team"},"description":"The Great Learning Editorial Staff includes a dynamic team of subject matter experts, instructors, and education professionals who combine their deep industry knowledge with innovative teaching methods. Their mission is to provide learners with the skills and insights needed to excel in their careers, whether through upskilling, reskilling, or transitioning into new fields.","sameAs":["https:\/\/www.mygreatlearning.com\/","https:\/\/in.linkedin.com\/school\/great-learning\/","https:\/\/x.com\/https:\/\/twitter.com\/Great_Learning","https:\/\/www.youtube.com\/channel\/UCObs0kLIrDjX2LLSybqNaEA"],"award":["Best EdTech Company of the Year 2024","Education Economictimes Outstanding Education\/Edtech Solution Provider of the Year 2024","Leading E-learning Platform 2024"],"url":"https:\/\/www.mygreatlearning.com\/blog\/author\/greatlearning\/"}]}},"uagb_featured_image_src":{"full":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg",1365,768,false],"thumbnail":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146-150x150.jpg",150,150,true],"medium":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146-300x169.jpg",300,169,true],"medium_large":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146-768x432.jpg",768,432,true],"large":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146-1024x576.jpg",1024,576,true],"1536x1536":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg",1365,768,false],"2048x2048":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg",1365,768,false],"web-stories-poster-portrait":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg",640,360,false],"web-stories-publisher-logo":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg",96,54,false],"web-stories-thumbnail":["https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2020\/10\/iStock-1094241146.jpg",150,84,false]},"uagb_author_info":{"display_name":"Great Learning Editorial Team","author_link":"https:\/\/www.mygreatlearning.com\/blog\/author\/greatlearning\/"},"uagb_comment_info":0,"uagb_excerpt":"CAP theorem is also called Brewer's theorem, named after the computer scientist, Eric Brewer. We will try to answer the following questions to better understand CAP theorem: Contributed by: Ramalingam What is the CAP theorem? Where can the CAP theorem be used as an example? How is CAP theorem used in the field of distributed&hellip;","_links":{"self":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/posts\/22109","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/comments?post=22109"}],"version-history":[{"count":16,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/posts\/22109\/revisions"}],"predecessor-version":[{"id":104590,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/posts\/22109\/revisions\/104590"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/media\/22120"}],"wp:attachment":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/media?parent=22109"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/categories?post=22109"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/tags?post=22109"},{"taxonomy":"content_type","embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/content_type?post=22109"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}