Azure CosmosDB (8) 性能指标Request Unit-RU
《Windows Azure Platform 系列文章目录》
本次将介绍Cosmos DB的性能指标RU (Request Unit)。
总的来说,我们设置的Azure CosmosDB RU数值越高,则表示该CosmosDB的读写的性能越好。但是每个小时的单价越贵。
Azure CosmosDB的价格=设置的RU+存储的容量,按照每小时进行收费的。
Azure Cosmos DB支持多种API,比如SQL, MongoDB, Cassandra, Gremlin和Table。每种API 具有自身的数据库操作集。 这些操作包括简单的点读取和写入,以及复杂的查询等等。 每个数据库操作根据其复杂性消耗系统资源。
所有数据库操作的成本,将由Azure CosmosDB的Request Unit (RU)来表示。 读取 1-KB 项的成本为 1 个请求单位 (RU)。 以类似方式为其他所有数据库操作分配 RU 成本。 不管使用哪个 API 来与 Azure Cosmos 容器和数据库操作交互,都始终以 RU 来计量成本。 无论数据库操作是写入、读取还是查询,都始终以 RU 来计量成本。
RU抽象化了执行 Azure Cosmos DB 支持的数据库操作所需的系统资源,例如 CPU、IOPS 和内存。 下图显示了不同数据库操作消耗的 RU 数:

请注意:Azure CosmosDB的RU是可以动态调整的,我们可以根据实际的业务需求,通过API或者图形界面的方式,动态的调整Azure CosmosDB的RU。
RU可以设置在Azure Cosmos DB的,或者设置在Azure Container级别
消耗的RU需要考虑:
1.数据量
随着CosmosDB中的数据量增加,读取或者写入CosmosDB需要消耗的RU数量也会增加
2.数据索引
默认情况下,保存在CosmosDB中的数据是自动创建索引的。如果我们不为CosmosDB中的某些项创建索引,则可以减少RU的使用量
3.索引属性
假设我们对CosmosDB的所有属性采用默认索引,则随着数据量的增加,写入需要消耗的RU值也会增加
4.数据一致性
在执行读取操作的时候,Strong强一致性和bounded stalenessy消耗的 RU 数,大约比其他一致性级别要多两倍
5.查询模式
查询的复杂性会影响实际消耗的RU数
- 查询结果数。
- 谓词数。
- 谓词性质。
- 用户定义的函数数目。
- 源数据的大小。
- 结果集的大小。
- 投影数。
Azure CosmosDB (8) 性能指标Request Unit-RU的更多相关文章
- Azure CosmosDB (4) 在一致性(Consistency)可用性(Availability)和性能(Performance)之间的权衡
<Windows Azure Platform 系列文章目录> 我个人感觉,这个概念和分布式系统中的CAP原则是类似的: CAP原则指的是在一个分布式系统中,Consistency(一致性 ...
- Azure CosmosDB (10) Azure Cosmos DB体系结构
<Windows Azure Platform 系列文章目录> Azure Cosmos DB的体系结构分为以下几个部分: 1.Database Accounts Database Acc ...
- Azure CosmosDB (9) Unique Key Constraints
<Windows Azure Platform 系列文章目录> 在Azure Cosmos DB中,还支持Unique Key Constraints(唯一键约束). 我们可以在Azure ...
- Azure CosmosDB (7) 分区键Partition Key
<Windows Azure Platform 系列文章目录> Azure Cosmos DB使用分区键(Partition Key),来对数据进行水平缩放(Horizon Scale), ...
- 落地Azure CosmosDb的一个项目分享
我们遇到了什么? 我们有这么一个业务场景,就是某供应商会去爬取某些数据,爬到后会发到一个FTP上,然后我们定时去获取这些数据 这个数据有大有小,小的30多M数据量百万级,大的数据量能到数百M上千万数据 ...
- Azure CosmosDB (6) 冲突类型和解决策略
<Windows Azure Platform 系列文章目录> 当我们为CosmosDB配置多个Azure Region写入,就需要考虑冲突类型和解决策略. 对于配置了多个写入区域的 Az ...
- Azure CosmosDB (3) 选择适当的一致性级别
<Windows Azure Platform 系列文章目录> 绝大部分的商业分布式数据库,要求开发人员选择两个极端的数据库一致性:强一致性(Strong Consistency)和最终一 ...
- Azure CosmosDB (2) CosmosDB中的数据一致性
<Windows Azure Platform 系列文章目录> 为了保证分布式数据库的高可用性和低延迟性,我们需要在可用性.延迟和吞吐量之间进行权衡. 绝大部分的商业分布式数据库,要求开发 ...
- Azure CosmosDB (1) 概述
<Windows Azure Platform 系列文章目录> Azure CosmosDB是一个全球分布式数据库服务(Global Distributed Database),提供低延迟 ...
随机推荐
- 基于ZYNQ的双核启动与通信问题解决
1 处理器间的通信 为AMP 设计创建应用之前,您需要考虑应用如何进行通信(如有需要).最简单的方法是使用片上存储器.Zynq SoC 配备256KB 的片上SRAM,可从以下四个源地址进行访问 ...
- top和nvidia-smi无法显示占用GPU的PID问题
通过nvidia-smi查看显卡使用情况,发现显卡在被占用,但是却没有提示占用显卡的进程id, 这时可以输入 fuser -v /dev/nvidia* 可以查看到, 再利用sudo kill -9 ...
- JPype1使用总结
目的:使用Locust+Python压测账号资料接口,使用JPype调用java代码,缩短压测脚本编写 前提条件:进行性能压测过程中,需要压测账号相关接口,由于账号相关接口设计到加密解密,用Pytho ...
- 实现在WebView中返回上一级
代码 import React, {Component} from 'react'; import {Platform, View, WebView, BackHandler,Dimensions,S ...
- JavaApi
#####indexof() package day07Test;/** * 统计字符在句子中出现的次数 * @author gengyantao * */public class Demo1 { p ...
- 微信公众号服务器配置url二次修改
最近微信公众号配置的服务器的域名和云服务到期,就想着更换到别的域名下的服务器:修改的时候出现token验证失败: 我同样的微信签名验证代码在以前服务器上是没问题的,但是修改到新的域名地址时候,总是提醒 ...
- linux安装postgresql
第一步在编译安装postgresql源码的时候,需要用到以下依赖,若本机没有的话,需要提前安装依赖环境,执行以下命令:yum install gcc gcc-c++yum install zlib-d ...
- 数组之slice,splice,Concact,Reverse,Sort方法
Slice(strart,end)用来从数组中提取元素.该方法不会改变元素数组,而是将截取到的元素封装到一个新数组中返回 参数start 截取开始的位置索引,包含开始索引 参数end 截取结束位置的索 ...
- 通过for 来获取数组里面的电话
//存放的是电话号码包含的数字 , , , , , }; //电话号码出现的下标 , , , , , , , , , , }; //方式1 ; i < index.length; i++) { ...
- SQL动态长度行列转置
一,案列问题描述: 某销售系统中,注册的用户会在随后的月份中购物下单,需要按月统计注册的用户中各个月下单的金额.源数据表如下: FM::注册月份,CM: 下单月份, AMT:下单金额 期望得到如下统计 ...