![microsoft minecraft earth minecraft junewarren theverge microsoft minecraft earth minecraft junewarren theverge](https://cdn.arstechnica.net/wp-content/uploads/2019/07/minecraft-earth-logo.png)
- #Microsoft minecraft earth minecraft junewarren theverge software#
- #Microsoft minecraft earth minecraft junewarren theverge series#
"We originally considered using Azure Table storage to store our append-only event log, but its lack of any SLAs for read and write latencies made that unfeasible," says Sosnovske. To satisfy their technical requirements, Minecraft Earth service developers implemented an event sourcing pattern based on Azure Cosmos DB. To deliver all this, we need to replicate the service-and its data-in multiple, geographically distributed datacenters within each geography." The solution: An event sourcing pattern based on Azure Cosmos DB At the same time, the game is called Minecraft Earth-meaning we need to enable players in San Francisco and New York to share the same in-game experience. "If a player in New York had to rely on a service running in San Francisco, or vice versa, the in-game lag would be unacceptable. "Typical network latency between the east and west coasts of the US is 70 to 80 milliseconds," says Sosnovske. This required running copies of the service in multiple locations within each geography where Minecraft Earth would be offered, along with built-in intelligence to route the Minecraft Earth client to the nearest location where the service is deployed. To complicate the challenge, Minecraft Earth service developers needed to ensure low-latency writes regardless of a player's location. Medium-latency reads are acceptable because we can use client-side simulation until the backing model behind the service can be updated for reading." "Writes need to be fast because the client requires confirmation on each one, such as might be needed for the client to render-for example, when a player taps on a resource to see what's in it, we don't want the visuals to hang while the corresponding REST request is processed. "From a services perspective, Minecraft Earth requires low-latency writes and medium-latency reads," explains Sosnovske. Each write is a REST POST that must be immediately accepted and acknowledged to avoid any noticeable in-game lag. Within the Minecraft Earth client, which runs on iOS-based and Android-based AR-capable devices, almost every action a player takes results in a write to the core Minecraft Earth service. The technical challenge: Avoiding in-game lag In this case study, we'll look at some of the challenges that Minecraft Earth service developers faced in delivering what was required of them-and how they used Azure Cosmos DB to meet those needs. Minecraft Earth is based on a centralized, authoritative service-the first 'heavy' service we've ever had to build for the Minecraft franchise." "With vanilla Minecraft, while you could host your own server, there was no centralized service authority.
#Microsoft minecraft earth minecraft junewarren theverge software#
Nathan Sosnovske, a Senior Software Engineer on the Minecraft Earth services development team explains: For developers on the Minecraft team at Microsoft, however, the delivery of Minecraft Earth-especially the authoritative backend services required to support the game-would require building something entirely new. Unlike preceding games in the Minecraft franchise, Minecraft Earth takes things to an entirely new level by enabling players to experience the world of Minecraft within our real world through the power of augmented reality (AR).įor Minecraft Earth players, the experience is immediately familiar-albeit deeply integrated with the world around them. In May 2019, Microsoft announced the upcoming release of Minecraft Earth, which began its worldwide rollout in December 2019. Today, Minecraft has more than 112 million monthly players, who can discover and collect raw materials, craft tools, and build structures or earthworks in the game's immersive, procedurally generated 3D world. Depending on game mode, players can also fight computer-controlled foes and cooperate with-or compete against-other players. It's the best-selling video game of all time, having sold more than 176 million copies since 2011.
![microsoft minecraft earth minecraft junewarren theverge microsoft minecraft earth minecraft junewarren theverge](https://s3.ap-southeast-1.amazonaws.com/images.deccanchronicle.com/dc-Cover-l8uufh59rr68jaaqhgvht9ld34-20190519113211.Medi.jpeg)
You've probably heard of the game Minecraft, even if you haven't played it yourself. Extending the world of Minecraft into our real world In part 2, we examine the solution's workload and how Minecraft Earth service developers have benefited from building it on Azure Cosmos DB. In part 1, we explore the challenges that led service developers for Minecraft Earth to choose Azure Cosmos DB and how they're using it to capture almost every action taken by every player around the globe-with ultra-low latency.
#Microsoft minecraft earth minecraft junewarren theverge series#
This post is part 1 of a two-part series about how organizations use Azure Cosmos DB to meet real world needs and the difference it's making to them.