CosmosDB is a globally distributed database which supports It is used for both stream and batch workloads. Initially, it was used as a tool internal to Microsoft to run big-data workloads using a SQL like a language called Scope.
- Developer
- Country of Origin
- US
- Start Year
- 2006
- Former Name
- DocumentDB
- Project Type
- Commercial
- Written in
- C++
- Supported Languages
- C#
- Operating System
- Windows
- License
- Proprietary
CosmosDB is a globally distributed database which supports It is used for both stream and batch workloads. Initially, it was used as a tool internal to Microsoft to run big-data workloads using a SQL like a language called Scope.
History
CosmosDB started as a successor to DocumentDB in 2006
Indexes
As soon as the data is ingested into the system, all of the data is synchronously indexed and made durable and highly available. The internal Meta-data service, which is part of Cosmos maintains file extent locations similar to HDFS name node. It indexes all of the meta-data by using Hekaton, an in-memory database. Updates to the meta-data state is done using SQL transactions on Hekaton with the help of lock-free indexes such as Bw-Trees. The updates are propogated to other nodes by using RSL-HK rings.
Citations
2 sources- Azure Cosmos DB | Microsoft Azure microsoft.com
- Azure Cosmos DB documentation - Azure Cosmos DB | Microsoft Learn microsoft.com