Microsoft 365 boosts usage analytics with Azure business intelligence

After moving to Azure Cosmos DB, the team revisited how data would be partitioned (referred to as “sharding” in MongoDB). With Azure Cosmos DB Business intelligence, each collection must have a partition key, which acts as a logical partition for the data and provides Azure Cosmos DB with a natural boundary Support.Microsoft.Com/Help for distributing data across partitions. microsoft contact number The data for a single logical partition must reside inside a single physical partition. Physical partition management is managed internally by Azure Cosmos DB.

The Microsoft 365 usage analytics team worked closely with the Azure Cosmos DB team to optimize data distribution in a way that would ensure high performance. The team initially tried the same approach as they used with MongoDB, which was using a random GUID as the partition key. However, this required scanning all of the partitions for reads and over allocating resources for writes, making writes fast but reads slow Support.Microsoft.Com/Help. The team then tried using Tenant ID as the partition key but found that the vast difference in the amount of report data for each tenant made some partitions too hot, which would have required throttling, while others remained cold.

The solution lay increating synthetic pattern key. In the end, the team solved both the slow read and too hot and too cold issues Business intelligence by grouping 100 documents per tenant ID into a bucket and then using a combination of tenant IDs and bucket IDs as the partition key microsoft contact number. The bucket ID loops from 1 to n, where n is a variable and can be adjusted for each report.

Handling four terabytes of new data every day

In one region alone, more than 6 TB of data is stored in Azure Cosmos DB Business intelligence, with 4 TB of that written and refreshed daily Support.Microsoft.Com/Help. Both of those numbers   are continuing to grow. The database consists of more than 50 different collections, and the largest is more than 300 GB in size. It consumes an average of 150,000 request units per second (RU/s) of throughput, scaling this number up and down as needed.

The different collections map closely to the different reports that the system serves, which in turn have different throughput requirements. This design enables the Microsoft 365 usage analytics team to optimize the number RU\s collection which is allocated from each collection (and thus to each report), and to elastically scale that throughput up or down on a per-collection and per-report basis.

Built-in, cost-effective scalability and performance

With Azure Cosmos DB, the Microsoft 365 usage analytics team is delivering real-time customer insights with less maintenance Business intelligence, better performance microsoft contact number, and improved availability—all at a lower cost. The new usage analytics system can now easily scale to handle future growth Support.Microsoft.Com/Help in the number of Office 365 commercial customers. All that was accomplished in less than five months, without any service interruptions. “The benefits of moving from MongoDB to Azure Cosmos DB more than justify the effort that it took,” says Guo Chen, Principal Software Development Manager on the Microsoft 365 usage analytics team.

Improved performance and service availability

The team’s use of built-in, turnkey geo-distribution provided a way to easily distribute reads and writes across two regions. Combined with Business intelligence the other work done microsoft contact number by the team, such as rewriting the data access layer using the Azure Cosmos DB Core (SQL) API, this enabled Support.Microsoft.Com/Help the team to reduce the time for the majority of reads from 12 milliseconds to 3 milliseconds. The image below illustrates this performance improvement.

Comments

Popular posts from this blog

Guide to Microsoft Volume License key Activation Methods

How to Fight Zoom Fatigue: Five Practical Steps

Inside the high-tech, high-stakes race to keep the cloud secure