And the following shows the same after the move to SDK 2.x.

  • Use direct mode for greater performance The way the customer connects to Azure Cosmos DB has important performance implications, particularly with regard to observed client side latency. The group began using the default Gateway Mode connection coverage, but changed to a Immediate Mode connection policy since it provides better performance.
  • Learn to compose and handle stored procedures — With Azure Cosmos DB, transactions can only be executed using stored procedures–bits of application logic that are written in JavaScript which are enrolled and implemented against a collection as a single transaction. (In Azure Cosmos DB, JavaScript is hosted in precisely the same memory area as the database. Therefore, requests created within stored procedures execute in precisely the exact same extent of a database session, which enables Azure Cosmos DB to ensure ACID for many operations which are a part of one stored procedure.) Developers didn’t pay attention but soon discovered that RU prices were greater than desired. Like using point record reads maximizing the question selections per API and wherever possible, this resulted in an increased emphasis on optimizing query layout.
  • Utilize the Azure Cosmos DB SDK 2.x to Boost connection usage — Inside Azure Cosmos DB, the information stored in each area is dispersed across thousands of physical walls. To function reads and writes, the Azure Cosmos DB client SDK must establish a connection with the node. The team began by using the Azure Cosmos DB SDK 1.x, but found that its lack of support for link multiplexing led to excessive connection establishment and closing prices. Switching to the Azure Cosmos DB SDK 2.x, which affirms connection multiplexing, helped solve the problem –and also helped mitigate SNAT port fatigue issues.

Looking back at the job, Kaduk recalls ldquo & several ;lessons learned. ” Included in these are:
Notice: Comments in italics/parenthesis would be the writer 's.
When compared with the solution that is old, the new PCS service is providing reduced latency — consequently enabling the Skype team to meet of its SLAs and throughput. “Easy states Kaduk. “For instance, by enabling us to put data nearer to where its users are, in Europe, we’ve been able to significantly decrease the time necessary for the permission service which ’s used to set up a call–and meet our overall one-second SLA for this undertaking. ”
Although Kaduk&rsquo team wasn’t paying to keep the PCS databases, he also knows what that used to price –and states that the invoice for the new solution is considerably lower. “Our PCS data shop that is brand new is expensive than the older one ” he says. “We cover that cost ourselves today, however, given of the benefits, it’s worthwhile. ”
“One of the excellent things about our PCS service that is brand new is that the information shop is completely owned by us, rsquo & whereas we didn;s earlier,” states Kaduk. “Before, when Microsoft acquired Skype, we had. That user data is back under our control and we & rsquo; re not satisfied with daily maintenance — it & rsquo; s actually the best of both worlds today. ”

Lower costs

Greater accessibility

“We had no previous experience with Azure Cosmos DB, but it was simple to come up to speed,&rdquo. “we did it all in six months, which is impressive for a project of this scale, Even with a couple lessons learned. 1 reason for our success was that we didn’t have to think about deploying any physical infrastructure. Azure Cosmos DB gave a file database with SQL syntax and change feed streaming capabilities built-in to us, all under strict SLAs. This enabled us to meet with our requirements and greatly simplified our architecture. ”

The outcomes

Improved throughout, latency, scalability, and more

Skype replaced three monolithic, independently isolated data stores using a single, globally distributed user data service that provides better throughput, lower latencies, and accessibility. The PCS service can scale to manage to manage expansion, and provides ownership of its information to the Skype team without the load of maintaining its infrastructure — at less than half. Development of the solution was straightforward and quick as a result of the functionality that it’s a fully-hosted service.

Quick, uncomplicated implementation

“failover arrangement can be prioritized by us for our multiregion accounts and may manually trigger failover to check the availability of our app — all with guaranteed zero data-loss. ”
Chart showing connection when using SDK 1.x

Lessons heard

“The capability of Azure Cosmos DB to scale is clear,&rdquo. &ldquoWe planned for 100 terabytes of information and are already at 140 terabytes, with no issues handling that growth.
Together with Azure Cosmos DB, the Skype team can independently and elastically scale storage and throughput at any moment, across the globe. All physical partition direction required to scale is clear to the Skype team and is managed by Azure Cosmos DB. Azure Cosmos DB handles the distribution of data to the partition that is right across the routing of question requests along with logical and physical partitions without compromising latency, consistency, availability, or throughput. All this enables the team to pay for throughput and only the storage it needs now, and to prevent having to spend any time, energy, or money in spare capability ahead of it & rsquo ;s needed.

That really is a three-part blog post show about how organizations are utilizing Azure Cosmos DB to meet real world needs, and the difference it’s making to them. In part 1, we researched the challenges Skype faced that directed them to take action. In part 2, we examined how Skype employed Azure Cosmos DB to modernize its own backend infrastructure. In this informative article (part 3 )we cover the outcomes resulting from those efforts.
The PCS service is supporting its workload without quality-of-service degradation, deadlocks, or timeouts –having to wait or meaning users are no longer inconvenienced with data that is poor . And since the service runs on Azure Cosmos DB, where its PCS service operates the Skype team no longer have to worry about the underlying infrastructure’s availability. 

Full ownership of information with zero upkeep and administration

Better throughout and lower latencies

All in all, Kaduk feels that the migration to Azure Cosmos DB was ldquo;straightforward and fairly straightforward. ” the group began migrating all 4 billion Skype users into the solution, and by October 2017, all development was complete and Development started in May 2017. The team consisted of 1 program manager eight developers, and a single manager.
The following diagram shows link status and time_waits when using SDK 1.x.
Chart showing connection when using SDK 2.x

The Skype staff doesn & rsquo Since Azure Cosmos DB is a managed Microsoft Azure service;t need to worry about daily administration, deploy and configure applications, or deal with upgrades. Every database encrypted, and protected against failures that were regional, is backed up, so that you that the staff doesn’t need to worry about those things leaving more time to it to concentrate on delivering customer value that was new.