{"id":670,"date":"2020-05-06T00:00:00","date_gmt":"2020-05-06T00:00:00","guid":{"rendered":""},"modified":"2023-05-11T15:26:34","modified_gmt":"2023-05-11T22:26:34","slug":"minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution","status":"publish","type":"post","link":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/","title":{"rendered":"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution"},"content":{"rendered":"<p><i>This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them. In<strong> <\/strong><a href=\"https:\/\/azure.microsoft.com\/blog\/minecraft-earth-and-azure-cosmos-db-part-1-extending-minecraft-into-our-real-world\" target=\"_blank\" rel=\"noopener\">part 1<\/a>, we explored the challenges that led service developers for Minecraft Earth to choose Azure Cosmos DB and how they\u2019re using it to capture almost every action taken by every player around the globe\u2014with ultra-low latency. In part 2 we examine the solution\u2019s workload and how Minecraft Earth service developers have benefited from building it on Azure Cosmos DB.<\/i><\/p>\n<h2>Geographic distribution and multi-region writes<\/h2>\n<p>Minecraft Earth service developers used the turnkey geographic distribution feature in Azure Cosmos DB to achieve three goals: fault tolerance, disaster recovery, and minimal latency\u2014the latter achieved by also using the <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/cosmos-db\/how-to-multi-master\" target=\"_blank\" rel=\"noopener\">multi-master capabilities<\/a> of Azure Cosmos DB to enable multi-region writes. Each supported geography has at least two service instances. For example, in North America, the Minecraft Earth service runs in the West US and East US Azure regions, with other components of Azure used to determine which is closer to the user and route traffic accordingly.<\/p>\n<p>Nathan Sosnovske, a Senior Software Engineer on the Minecraft Earth services development team explains:<\/p>\n<p><em>\u201cWith Azure available in so many global regions, we were able to easily establish a worldwide footprint that ensures a low-latency gaming experience on a global scale. That said, people mostly travel within one geography, which is why we have multi-master writes setup between all of the service instances in each geography. That\u2019s not to say that a player who lives in San Francisco can\u2019t travel to Europe and still play Minecraft Earth\u2014it\u2019s just that we\u2019re using a different mechanism to minimize round-trip latency in such cases.\u201d<\/em><\/p>\n<h2>Request units per second (RU\/s) consumption<\/h2>\n<p>In Azure Cosmos DB, request units per second (RU\/s) is the \u201ccurrency\u201d used to reserve guaranteed database throughput. For Minecraft Earth, a typical write request consumers about 10 RU\/s, with an additional 2-3 RU\/s used for background processing of the append-only event log, which is driven by <a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/service-bus\" target=\"_blank\" rel=\"noopener\">Azure Service Bus<\/a>.<\/p>\n<p><em>\u201cWe\u2019ve found that our RU\/s usage scales quite linearly; we only need to increase capacity when we have a commensurate increase in write requests per second. At first, we thought we would need more throughput, but it turned out there was a lot of optimization to be done,\u201d says Sosnovske. \u201cOur original design handled request volumes and complexity relatively well, but it didn\u2019t handle the case where the system would shard\u2014that is, physically repartition itself internally\u2014because of overall data volumes.\u201d<\/em><\/p>\n<p>The reason for this was because allocated RU\/s are equally distributed across physical partitions, and the physical partition with the most current data was running a lot hotter than the rest.<\/p>\n<p><em>\u201cFortunately, because our system is modeled as an append only log that gets materialized into views for the client, we very rarely read old data directly from Azure Cosmos DB,\u201d explains Sosnovske. \u201cOur data model was flexible enough to allow us to archive events to cold storage after they were processed them into views, and then delete them from Azure Cosmos DB using its <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/cosmos-db\/time-to-live\" target=\"_blank\" rel=\"noopener\">Time to Live feature<\/a>.\u201d<\/em><\/p>\n<p>Today, with the service\u2019s current architecture, Sosnovske isn\u2019t worried about scalability at all.<\/p>\n<p><em>\u201cDuring development, we tested the scalability of Azure Cosmos DB up to one million RU\/s, and it delivered that throughput without a problem,\u201d Sosnovske says.<\/em><\/p>\n<h2>Initial launch of Minecraft Earth<\/h2>\n<p>Minecraft Earth was formally released in one geography in October 2019, with its global rollout across all other geographies completed over the following weeks. For Minecraft fans, Minecraft Earth provides a means of experiencing the game they know and love at an entirely new level, in the world of augmented reality.<\/p>\n<p>And for Sosnovske and all the other developers who helped bring Minecraft Earth to life, the opportunity to extend one of the most popular games of all time into the realm of augmented reality has been equally rewarding.<\/p>\n<p><em>\u201cA lot of us are gamers ourselves and jumped on the opportunity to be a part of it all,\u201d Sosnovske recalls. \u201cLooking back, everything went pretty well\u2014and we\u2019re all quite satisfied with the results.\u201d <\/em><\/p>\n<h2>Benefits of using Azure Cosmos DB<\/h2>\n<p>Although Azure Cosmos DB is just one of several Azure services that support Minecraft Earth, it plays a pivotal role.<\/p>\n<p><em>\u201cI can\u2019t think of another way we could have delivered what we did without building something incredibly complex completely from scratch,\u201d says Sosnovske. \u201cAzure Cosmos DB provided all the functionality we needed, including low latency, global distribution, multi-master writes, and more. All we had to do was properly put it to use.\u201d <\/em><\/p>\n<p>Specific benefits of using Azure Cosmos DB to build the Minecraft Earth service included the following:<\/p>\n<p><b>Easy adoption and implementation<\/b>. According to Sosnovske, Azure Cosmos DB was easy to adopt.<\/p>\n<p><em>\u201cGetting started with Azure Cosmos DB was incredibly easy, especially within the context of the .NET ecosystem,<\/em>\u201d<em>\u00a0 Sosnovske says. \u201cWe simply had to install the Nuget package and point it at the proper endpoint. Documentation for the service is very thorough; we haven\u2019t had any major issues due to misunderstanding how the SDK works.\u201d<\/em><\/p>\n<p><strong>Zero maintenance<\/strong>. As part of Microsoft Azure, Azure Cosmos DB is a fully managed service, which means that nobody on the Minecraft Earth services team needs to worry about patching servers, maintaining backups, data center failures, and so on.<\/p>\n<p><em>\u201cNot having to deal with day-to-day operations is a huge bonus,\u201d says Sosnovske. \u201cHowever, this is really a benefit of building on Azure in general.\u201d<\/em><\/p>\n<p><b>Guaranteed low latency.<\/b> A big reason developers chose Azure Cosmos DB was because it provides a <a href=\"https:\/\/azure.microsoft.com\/en-us\/support\/legal\/sla\/cosmos-db\/v1_3\/\" target=\"_blank\" rel=\"noopener\">guaranteed single-digit (<10ms) latency SLA<\/a> for reads and writes at the 99th percentile, at any scale, anywhere in the world. In comparison, Table storage latency would have been higher\u2014with no guaranteed upper bound.<\/p>\n<p><em>\u201cAzure Cosmos DB is delivering as promised, in that we\u2019re seeing an average latency of 7 milliseconds for reads,\u201d says Sosnovske.<\/em><\/p>\n<p><b>Elastic scalability. <\/b>Thanks to the elastic scalability provided by Azure Cosmos DB, the game enjoyed a frictionless launch.<\/p>\n<p><em>\u201cAt no point was Azure Cosmos DB the bottleneck in scaling our service,\u201d says Sosnovske. \u201cWe\u2019ve done a lot of work to optimize performance since initial release and knowing that we wouldn\u2019t hit any scalability limits as we did that work was a huge benefit. We may have paid a bit more for throughput then we had to at first, but that\u2019s a lot better than having a service that can\u2019t keep up with growth in user demand.\u201d<\/em><\/p>\n<p><b>Turnkey geographic distribution.<\/b> With Azure Cosmos DB, geographic distribution was a trivial task for Minecraft Earth service developers. Adjustments to provisioned throughput (in RU\/s) are just as easy because Azure Cosmos DB transparently performs the necessary internal operations across all the regions, continuing to provide a single system image.<\/p>\n<p><em>\u201cTurnkey geo-distribution was a huge benefit,\u201d says Sosnovske. \u201cWe did have to think a bit more carefully about how to model our system when turning on multi-master support, but it was orders of magnitude less work than solving the problem ourselves.\u201d <\/em><\/p>\n<p><b>Compliance.<\/b> Through their use of Time-to-Live within Azure Cosmos DB, developers can safely store location-based gameplay data for short periods of time without having to worry about violating compliance mandates like Europe\u2019s General Data Protection Regulation (GDPR).<\/p>\n<p><em>\u201cIt lets us drive workflows like \u2018This player should only be able to redeem this location once in a given period of time,\u2019 after which Azure Cosmos DB automatically cleans up the data within our set TTL,\u201d explains Sosnovske.<\/em><\/p>\n<p>In summarizing his experience with Azure Cosmos DB, Sosnovske says it was quite positive.<\/p>\n<blockquote>\n<p><em>\u201cAzure Cosmos DB is highly reliable, easy to use after you take the time to understand the basic concepts, and, best of all, it stays out of the way when you\u2019re writing code. When junior developers on my team are working on features, they don\u2019t need to think about the database or how data is stored; they can simply write code for a domain and have it just work.\u201d<\/em><\/p>\n<\/blockquote>\n<h2>Get started with Azure Cosmos DB<\/h2>\n<ul>\n<li>Visit <a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/cosmos-db\/\" target=\"_blank\" rel=\"noopener\">Azure Cosmos DB<\/a>.<\/li>\n<li>Learn more about <a href=\"https:\/\/azure.microsoft.com\/en-us\/solutions\/gaming\/\" target=\"_blank\" rel=\"noopener\">Azure for Gaming<\/a>.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"ms_queue_id":[],"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","_alt_title":"","footnotes":"","msx_community_cta_settings":[]},"categories":[1473,1498],"tags":[48],"audience":[3054,3057,3055,3056],"content-type":[1511],"product":[1538,1586],"tech-community":[],"topic":[],"coauthors":[177],"class_list":["post-670","post","type-post","status-publish","format-standard","hentry","category-databases","category-integration","tag-big-data","audience-business-decision-makers","audience-data-professionals","audience-developers","audience-it-implementors","content-type-best-practices","product-azure-cosmos-db","product-service-bus"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution | Microsoft Azure Blog<\/title>\n<meta name=\"description\" content=\"This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution | Microsoft Azure Blog\" \/>\n<meta property=\"og:description\" content=\"This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Azure Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/microsoftazure\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-06T00:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-11T22:26:34+00:00\" \/>\n<meta name=\"author\" content=\"Parul Matah\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@azure\" \/>\n<meta name=\"twitter:site\" content=\"@azure\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Parul Matah\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/\"},\"author\":[{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/parul-matah\/\",\"@type\":\"Person\",\"@name\":\"Parul Matah\"}],\"headline\":\"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution\",\"datePublished\":\"2020-05-06T00:00:00+00:00\",\"dateModified\":\"2023-05-11T22:26:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/\"},\"wordCount\":962,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\"},\"keywords\":[\"Big Data\"],\"articleSection\":[\"Databases\",\"Integration\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/\",\"name\":\"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution | Microsoft Azure Blog\",\"isPartOf\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#website\"},\"datePublished\":\"2020-05-06T00:00:00+00:00\",\"dateModified\":\"2023-05-11T22:26:34+00:00\",\"description\":\"This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them.\",\"breadcrumb\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog home\",\"item\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Databases\",\"item\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/category\/databases\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#website\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\",\"name\":\"Microsoft Azure Blog\",\"description\":\"Get the latest Azure news, updates, and announcements from the Azure blog. From product updates to hot topics, hear from the Azure experts.\",\"publisher\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\",\"name\":\"Microsoft Azure Blog\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp\",\"contentUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp\",\"width\":512,\"height\":512,\"caption\":\"Microsoft Azure Blog\"},\"image\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/microsoftazure\",\"https:\/\/x.com\/azure\",\"https:\/\/www.instagram.com\/microsoftdeveloper\/\",\"https:\/\/www.linkedin.com\/company\/16188386\",\"https:\/\/www.youtube.com\/user\/windowsazure\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/person\/c702e5edd662b328b49b7e1180cab117\",\"name\":\"shakir\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g7664e653ea371ce16eaf75e9fa8952c4\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g\",\"caption\":\"shakir\"},\"sameAs\":[\"https:\/\/azure.microsoft.com\"],\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/shakir\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution | Microsoft Azure Blog","description":"This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them.","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:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/","og_locale":"en_US","og_type":"article","og_title":"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution | Microsoft Azure Blog","og_description":"This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them.","og_url":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/","og_site_name":"Microsoft Azure Blog","article_publisher":"https:\/\/www.facebook.com\/microsoftazure","article_published_time":"2020-05-06T00:00:00+00:00","article_modified_time":"2023-05-11T22:26:34+00:00","author":"Parul Matah","twitter_card":"summary_large_image","twitter_creator":"@azure","twitter_site":"@azure","twitter_misc":{"Written by":"Parul Matah","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#article","isPartOf":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/"},"author":[{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/parul-matah\/","@type":"Person","@name":"Parul Matah"}],"headline":"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution","datePublished":"2020-05-06T00:00:00+00:00","dateModified":"2023-05-11T22:26:34+00:00","mainEntityOfPage":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/"},"wordCount":962,"commentCount":0,"publisher":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization"},"keywords":["Big Data"],"articleSection":["Databases","Integration"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/","name":"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution | Microsoft Azure Blog","isPartOf":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#website"},"datePublished":"2020-05-06T00:00:00+00:00","dateModified":"2023-05-11T22:26:34+00:00","description":"This post is part 2 of a two-part series about out how organizations are using Azure Cosmos DB to meet real world needs and the difference it\u2019s making to them.","breadcrumb":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/minecraft-earth-and-azure-cosmos-db-part-2-delivering-turnkey-geographic-distribution\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog home","item":"https:\/\/azure.microsoft.com\/en-us\/blog\/"},{"@type":"ListItem","position":2,"name":"Databases","item":"https:\/\/azure.microsoft.com\/en-us\/blog\/category\/databases\/"},{"@type":"ListItem","position":3,"name":"Minecraft Earth and Azure Cosmos DB part 2: Delivering turnkey geographic distribution"}]},{"@type":"WebSite","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#website","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/","name":"Microsoft Azure Blog","description":"Get the latest Azure news, updates, and announcements from the Azure blog. From product updates to hot topics, hear from the Azure experts.","publisher":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/azure.microsoft.com\/en-us\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization","name":"Microsoft Azure Blog","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp","contentUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp","width":512,"height":512,"caption":"Microsoft Azure Blog"},"image":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/microsoftazure","https:\/\/x.com\/azure","https:\/\/www.instagram.com\/microsoftdeveloper\/","https:\/\/www.linkedin.com\/company\/16188386","https:\/\/www.youtube.com\/user\/windowsazure"]},{"@type":"Person","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/person\/c702e5edd662b328b49b7e1180cab117","name":"shakir","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g7664e653ea371ce16eaf75e9fa8952c4","url":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g","caption":"shakir"},"sameAs":["https:\/\/azure.microsoft.com"],"url":"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/shakir\/"}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Azure Blog","distributor_original_site_url":"https:\/\/azure.microsoft.com\/en-us\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/comments?post=670"}],"version-history":[{"count":1,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions"}],"predecessor-version":[{"id":44406,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions\/44406"}],"wp:attachment":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/media?parent=670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/categories?post=670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/tags?post=670"},{"taxonomy":"audience","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/audience?post=670"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/content-type?post=670"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/product?post=670"},{"taxonomy":"tech-community","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/tech-community?post=670"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/topic?post=670"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/coauthors?post=670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}