What is Azure Cosmos DB? – Azure Cosmos DB Tutorial

What is Azure Cosmos DB?

Microsoft Azure is a cloud computing platform that has witnessed important development not too long ago with increasingly more organizations adopting it. Azure provides numerous companies in a mess of domains together with Database Administration, Content material Supply, Networking, and many others. There’s a important improve within the quantity of people that seek for Azure Cosmos DB tutorials, how does Cosmos DB work, introduction to Cosmos DB, Fundamentals of Cosmos DB, and many others. Cosmos DB in Azure is a proprietary, globally distributed, multi-model database service that takes benefit of Azure’s instruments and applied sciences to supply excessive throughput, excessive availability, and low latency.

Earlier than going forward with ‘What’s Azure Cosmos DB’ it might be worthwhile to refresh your Azure ideas. For detailed info, please check with this weblog: What’s Azure and the way does it work? 

This text offers an summary of Cosmos DB fundamentals. Matters that can be coated listed below are:

Try this youtube tutorial video on Cosmo DB Tutorial for Freshmen:

Earlier than going deep to study Azure Cosmos DB, we have to perceive what a database is.

What’s a Database?

A database is a set of information that’s organized in order that it may be simply retrieved and managed. A database is often saved in a pc system, in order that the functions related to it may entry it. It is usually related to a database administration system which can be utilized to create, edit or replace them. The time period database is most frequently used to signify each the database and the database administration system. 

There are various kinds of databases relying on the best way we intend to make use of it. They’re: 

  • Relational databases
  • Object-oriented databases
  • Distributed databases
  • Knowledge warehouses
  • NoSQL databases
  • Graph databases
  • OLTP databases. 
  • Open supply databases
  • Cloud databases
  • Multi Mannequin database
  • Doc/JSON database
  • Self-driving databases

To study extra about databases, take a look at this weblog: What’s a Database?

For our understanding of Cosmos DB, we have to know what relational, NoSQL, distributed, and Multi-model databases are. 

If you wish to study Azure ideas, please check with our weblog on Azure Tutorial!

Become a Cyber Security Expert

Relational Database

A relational database is used to retailer information that’s associated to 1 one other. In a relational mannequin, information is saved within the type of tables as rows and columns. The columns are used to retailer a sure type of info of various objects and the rows signify totally different particulars of 1 object. The rows may be uniquely recognized utilizing major keys and totally different tables may be related to 1 one other utilizing overseas keys.

NoSQL Database

NoSQL databases are used for information modeled in methods that aren’t like relational databases. The information constructions like key-value pair, huge column, graph, or doc usually are not like these utilized in relational databases and are supported in NoSQL. This makes them extra versatile and might make operations on them quicker. 

Variations between Relational and NoSQL Database

Relational Database NoSQL Database
Knowledge is saved in tables Knowledge may be saved as paperwork, graphs, key-value pairs, and many others.
Vertically scalable Horizontally scalable
Predefined schema No predefined schema, therefore simpler to replace
Helps highly effective question language Helps easy question language
Can deal with information in average volumes Can deal with information in very excessive volumes
Has a centralised construction Has a decentralised construction
Knowledge may be written from one or just a few areas Knowledge may be written from many areas

Study extra concerning the variations between SQL and NoSQL from right here: NoSQL vs. SQL – What’s Higher?

Distributed Database

When information in a database is saved in several bodily areas it’s referred to as a distributed database. The information may be saved at a number of computer systems in a single bodily location or both at totally different interconnected areas. 

There are two methods through which information is saved in several areas:

  1. Replication: Redundant copies of the database are saved in each location. Therefore each replace made in a single location must be made in each different location additionally. 
  2. Fragmentation: The database is break up into fragments and every of them is saved in several areas.

Multi Mannequin Database

A database mannequin that may assist each the relational information fashions in addition to the NoSQL fashions is known as Multi-Mannequin Databases. 

Multi-Model Database

Azure Cosmos DB

Cosmos Database (DB) is a globally distributed, low latency, multi-model database for managing information at massive scales. It’s a cloud-based NoSQL database provided as a PaaS (Platform as a Service) from Microsoft Azure. It’s a extremely accessible, excessive throughput, dependable database and is commonly referred to as a serverless database. Cosmos database incorporates the Azure Doc DB and is on the market in all places.

Key Advantages of Azure Cosmos DB

The important thing options of Cosmos DB are:

  1. Globally Distributed: With Azure areas unfold out globally, the information may be replicated globally. 
  2. Scalability: Cosmos DB is horizontally scalable to assist a whole lot of thousands and thousands of reads and writes per second. 
  3. Schema-Agnostic Indexing: This permits the automated indexing of information with out schema and index administration.
  4. Multi-Mannequin: It will probably retailer information in Key-value Pairs, Doc-based, Graph-based, Column Household-based databases. International distribution, horizontal partitioning, and automated indexing capabilities are the identical regardless of the information mannequin. 
  5. Excessive Availability: It has 99.99 % availability for reads and writes for each multi area and single area Azure Cosmos DB accounts. 
  6. Low Latency: The worldwide availability of Azure areas permits for the worldwide distribution of information, which additional makes it accessible nearest to the shoppers. This reduces the latency in retrieving information. 

Get licensed in Microsoft Azure with this course on Azure Knowledge Manufacturing unit Coaching!

How does Azure Cosmos DB work?

If a web site utilized by folks everywhere in the world writes its information right into a major database in a single location (non-multi-master mode), the folks close to to the placement will have the ability to retrieve the information quicker than the remainder of the world on account of community latency points. However Cosmos DB has multi-master assist the place the information may be concurrently written into totally different databases unfold out globally. On this means, the information is replicated onto the person’s nearest area in order that it may be accessed quicker. However there can nonetheless be a distinction of milliseconds between the information being replicated and this impacts the consistency. Consistency signifies whether or not the information are in sync and are on the similar state at any given cut-off date. Cosmos DB provides a number of ranges of consistency with various performances and availability. 

Ethical Hacking Course

The assorted consistency ranges provided are: 

  1. Eventual: Right here the information is written on the first node and is propagated finally to read-only secondary nodes. It would take a while for the customers to get up to date information.
  2. Constant Prefix: Shoppers can learn information in the identical order as it’s written. 
  3. Session: Customers who simply dedicated the information will have the ability to see it however it should take a while for the others to get that information model. 
  4. Bounded Staleness: Right here a staleness interval may be set, for which the information gained’t be replicated into the secondary nodes.
  5. Sturdy: This provides the most recent copy of information for all of the customers however offers a comparatively low efficiency. 

Cosmos DB permits us to set a default consistency whereas creating it and which may be modified from the applying whereas retrieving information. 

Knowledge Provisioning

With an Azure Cosmos DB account, we will handle the information by creating a number of databases, containers and objects. 

  1. Cosmos Database: The wealthy API assist of Azure Cosmos DB structure permits us to create and handle databases utilizing SQL API, Cassandra API, Azure Cosmos DB API for MongoDB, and many others. These can be utilized to enumerate, learn, create and replace the databases.
  2. Cosmos Containers: They’re horizontally partitioned and replicated throughout a number of areas for scalability and throughput. They’re schema-agnostic and are listed robotically. Containers can be created, up to date, and edited utilizing the Cosmos DB APIs
  3. Cosmos Gadgets: Relying on the API in use, an merchandise is usually a row in a desk, a doc, or part of a graph. Insert, delete, replace, learn, exchange, and many others may be finished on these things utilizing the APIs

Making ready for an Azure interview? Try our weblog on Azure Interview Questions with Solutions.

Backup and Restore

Computerized backups of the information are taken at common intervals with out interference to the efficiency or availability of the databases.  The backups are saved in separate companies and may be useful in situations of unintentional delete or replace of the database.

There are two sorts of backup:

  1. Periodic Backup Mode: That is the default mode through which backups are taken periodically and we will set the time interval and retention interval. 
  2. Steady Backup Mode: On this mode, the information is backed up repeatedly and may be restored to any cut-off date inside the final 30 days.

Widespread Use Instances

Cosmos DB Use Cases

Cosmos DB permits the throughput to be elevated significantly and likewise the storage of information globally. Among the frequent Cosmos DB use circumstances are:

  1. IoT: The use circumstances in IoT must cope with massive chunks of information from totally different areas of the world. This information must be written, analyzed, and retrieved shortly. Cosmos DB may be leveraged right here for a similar. 
  2. Retail and Advertising: Cosmos DB could make the sleek addition, updating, and retrieval of giant volumes of information associated to product catalogs, logistics, stock, and many others.
  3. Gaming: Well-liked video games like The Strolling Useless: No Man’s Land by Subsequent Video games, and Halo 5: Guardians, use Azure Cosmos DB to supply low latency in-game stats, scoreboards, social media integration, and many others. 
  4. Internet and cellular functions: It may be utilized in net and cellular functions for modeling social interactions, integrating with third-party companies, and constructing wealthy personalised experiences.

Learn new Technologies

Conclusion of Azure Cosmos DB tutorial

With the assistance of Cosmos DB, information may be globally saved, which may make it potential for databases to be close to clients which is able to scale back latency.  The assorted options offered by Cosmos DB additionally makes it simpler to index, scale and make excessive availability potential. 

For those who discovered this Azure Cosmos DB tutorial helpful, do tell us within the feedback beneath.

In case you have any queries concerning databases, attain out to us at our Database Group