一,引言

  今天是国庆、中秋双节房价的第三天,今天抽时间分享一篇关于使用Azure 提供的一项NoSql 服务-----Azure Cosmos DB。就有人问了,我听说过 MongoDB、Redis 等Nosql 类型的非关系数据库,你讲到的 Azure Cosmos DB 和它两有什么区别没?

   Azure Cosmos DB 是微软针对操作和分析工作负荷提供的多区域分布式多模型数据库服务。 它通过自动缩放吞吐量、计算和存储来提供多主数据库功能。过以下常用 API 利用个位数毫秒级的快速数据访问:SQL、MongoDB、Cassandra、表或 Gremlin。 Cosmos DB 为吞吐量、延迟、可用性和一致性保证提供综合服务级别协议 (SLA),这是其他数据库服务无法提供的。简单来说,Azure Cosmos DB 就是多区域式分布多模型数据库服务。

--------------------我是分割线--------------------

(一)Azure Cosmos DB (一) 入门介绍

二,正文

1,使用 Azure Cosmos DB 的优势

  (1)多区域分布:利用 Cosmos DB,可在全球范围内生成具有高响应能力和可用性的应用程序。 无论用户身处何处,Cosmos DB 均可以透明方式复制数据,因此用户可以与离他们最近的数据副本进行交互。Cosmos DB 允许随时在 Cosmos 帐户中添加或删除任何 Azure 区域,只需单击一个按钮即可。 Cosmos DB 将无缝地将数据复制到与 Cosmos 帐户相关联的所有区域,同时,得益于该服务的多导功能,应用程序将继续保持高可用性 。

  (2)吞吐量和存储可弹性缩放:Cosmos DB 采用透明水平分区和多主数据库复制设计,为全球范围内的读写操作提供前所未有的弹性缩放能力。 在任何区域,只需发出一次 API 调用,即可将每秒数千个请求弹性扩展到数百万个请求,而你只需为实际使用的吞吐量(和存储)付费。

  (3)多个一致性选项:在 Cosmos DB 中构建多区域分布式应用程序时,不再需要在一致性、可用性、延迟和吞吐量之间进行极端的权衡。 Cosmos DB 的多主数据库复制协议经过精心设计,提供五个妥善定义的一致性选项 - 非常一致性、有限过期一致性、会话一致性、一致前缀一致性和最终一致性 - 可为多区域分布式应用程序提供直观的编程模型以及低延迟和高可用性。

  (4)无需架构或者索引管理:对于多区域分布式应用而言,使数据库架构和索引与应用程序的架构保持同步非常棘手。 借助 Cosmos DB,则无需处理架构或索引管理。 数据库引擎完全与架构无关。 由于不需要架构和索引管理,因此迁移架构时也不必担心应用程序停用时间。 Cosmos DB 自动为所有数据编制索引,并可快速提供查询服务。

  (5)全面的SLA保证可用性:由于 Cosmos DB 是一项完全托管服务,因此不再需要管理和操作复杂的多数据中心部署和数据库软件的升级,也不再需要为支持、许可或操作付费,也不必为峰值工作负载预配数据库。

2,支持多种数据库模型

通过以下常用 API 利用个位数毫秒级的快速数据访问:SQL、MongoDB、Cassandra、表或 Gremlin。

3,使用场景

  受益于 Azure Cosmos DB 的解决方案,任何 Web、移动、游戏和 IoT 应用程序,只要其需要处理大量数据和多区域规模的读写操作,各种数据的响应时间接近实时,就可以充分利用 Cosmos DB 所保证的高可用性、高吞吐量、低延迟以及可调的一致性。 了解如何将 Azure Cosmos DB 用于生成 IoT 和 远程信息处理、零售和营销、游戏以及 Web 和移动应用程序。

ok,今天我们先了解这么多,只是先对Azure Cosmos DB 有个大概的认识,以及使用用它来做什么,下一篇我们正式开始在项目中如何正确的使用多种不同类型的数据模型进行开发。

以上介绍来自:微软官方 Azure Cosmos DB 文档

三,结尾

作者:Allen

版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。

Azure Cosmos DB (一) 入门介绍的更多相关文章

  1. Azure Cosmos DB (二) SQL API 操作

    一,引言 还记得国庆期间,我们学习了一下关于Azure Cosmos DB 的一些基础知识以及Azure Cosmos DB 的几种支持数据库类型.今天就开始分享一些实战操作,如何通过Azure Po ...

  2. Azure Cosmos DB (三) EF Core 操作CURD

    一,引言 接着上一篇使用 EF Core 操作 Azure CosmosDB 生成种子数据,今天我们完成通过 EF Core 实现CRUD一系列功能.EF Core 3.0 提供了CosmosDB 数 ...

  3. Azure Cosmos DB (四) 使用EF的SQL API 异地冗余

    一,引言 上一篇文章中,我们介绍到使用了EF Core 与Cosmos DB SQL API 进行结合开发.同时,大家在开发过程中一定要记得EF Core 不支持Cosmos DB 的迁移.今天我们启 ...

  4. Azure Cosmos DB (五) .Net Core 控制台应用

    一,引言 之前在讲Azure CosmosDB Core(SQL)核心的时候,使用了EF Core 的方式,引用了 "Microsoft.EntityFrameworkCore.Cosmos ...

  5. Azure Cosmos DB介绍及演示

    Azure Cosmos DB 是 Microsoft 提供的全球分布式多模型数据库服务.Cosmos DB是一种NoSql数据库,但是它兼容多种API.它支持SQL, MongoDB.Cassand ...

  6. Azure Cosmos DB 使用费用参考

    之前在学习Cosmos DB 中SQL API(DocumentDB) 的时候,也就是之前做的一些笔记,看到有使用费用的一些介绍,就有兴趣的去了解了下,做了一下简单的总结. 想了解更多或是购买使用的还 ...

  7. Azure CosmosDB (10) Azure Cosmos DB体系结构

    <Windows Azure Platform 系列文章目录> Azure Cosmos DB的体系结构分为以下几个部分: 1.Database Accounts Database Acc ...

  8. NCF 的Azure Cosmos DB 演示案例

    简介 NCF想必看过我之前发的NCF的文章的同学们都已经很熟悉了 今天我们要来聊一聊的是NCF遇到Azure Cosmos DB后会碰撞出什么样的火花,让我们一起往下看 我们先来说说什么是Azure ...

  9. azure cosmos db (mongo DB)

    使用.net mongo的操作类操作azure(微软云)cosmosdb时,发现在做delete的操作的时候可以传一个文档对象,但是最后这个文档会解析成具体的sql语句,而当文档特别大时这样就出先了转 ...

随机推荐

  1. 【Go语言入门系列】(七)如何使用Go的方法?

    [Go语言入门系列]前面的文章: [Go语言入门系列](四)之map的使用 [Go语言入门系列](五)之指针和结构体的使用 [Go语言入门系列](六)之再探函数 本文介绍Go语言的方法的使用. 1. ...

  2. source insight4工具栏还原

    source insight4工具栏不小心动了一下,位置全变了,强迫症犯了. 还原步骤. 1.关闭SI4 2.备份 C:\Users\用户名\Documents\Source Insight 4.0\ ...

  3. Vue开源项目使用探索

    前言 本文记录一次使用Vue开源项目的过程. 寻找Vue开源项目 要使用Vue开源项目就必须先找到一个,我们去Github上搜索[后台],然后使用Vue分类进行检索,找到排名第一的开源框架进行下载—v ...

  4. android开发之gridView的一些属性。(项目经验总结)

    1.android:numColumns="auto_fit"   //GridView的列数设置为自动 2.android:columnWidth="90dp &quo ...

  5. Unity游戏资源反解工具

    https://github.com/ata4/disunity http://devxdevelopment.com/UnityUnpacker 链接:https://pan.baidu.com/s ...

  6. Linux:用户账号、密码、群组、群组密码文件查看

    使用者账号密码存放文件:/etc/passwd, /etc/shadow 虽然我们登入 Linux 主机的时候,输入的是我们的账号,但是,其实 Linux 主机并不会直接认识你的『账 号名称』的,他仅 ...

  7. 《神经网络的梯度推导与代码验证》之CNN前向和反向传播过程的代码验证

    在<神经网络的梯度推导与代码验证>之CNN的前向传播和反向梯度推导 中,我们学习了CNN的前向传播和反向梯度求导,但知识仍停留在纸面.本篇章将基于深度学习框架tensorflow验证我们所 ...

  8. pyqt 设置QTabWidget标签页不可选

    pyqt 设置QTabWidget标签页不可选 for i in range(1,7): self.tabWidget.setTabEnabled(i,False)i-对应标签页的位数

  9. Agumater 爬虫进度带上了百分比,消除了.0

  10. Count(*) 与 count(field) 一样吗?

    有这么个表: 执行 select count(*) from hy_test select count(deptno) from hy_test 都得到 5 但执行 select count(name ...