检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
集群实例负载不均衡问题排查 对于集群方式部署的实例,常见Shard间负载不均衡,一般有如下原因:没有做分片,片键选择不正确,不做chunk预置,shard间均衡速度低于数据插入速度等。 本章节主要介绍负载不均衡的常见处理方法。 排查方法 通过客户端连接数据库。 执行如下命令,查看分片信息。
如何管理均衡器Balancer 使用场景 因为Balancer在进行块迁移时会占用节点的系统资源,可能导致集群的读写性能出现一定程度的下降,因此如果您已开启数据分片并且对实例性能有较高要求或者业务流量有比较明显的高低峰差异时,为避免影响业务: 建议在业务低峰期时开启Balancer。
设置集群均衡开关 接口说明 设置DDS集群的数据均衡开关。 约束说明 冻结实例不支持该操作。 调试 您可以在API Explorer中调试该接口。 URI URI格式 PUT https://{Endpoint}/v3/{project_id}/instances/{instan
查询集群均衡设置 接口说明 查询DDS集群的数据均衡设置,包括均衡开关和均衡活动时间窗的设置。其中,均衡活动时间窗的信息仅在DDS 4.0及以上版本返回。 约束说明 冻结实例不支持该操作。 调试 您可以在API Explorer中调试该接口。 URI URI格式 GET http
start_time String 否 均衡时间窗的开始时间,设置格式为“HH:MM”。 如果设置了start_time,则必须设置stop_time。如果两者都不设置,表示取消均衡时间窗设置。 stop_time String 否 均衡时间窗的结束时间,设置格式为“HH:MM”。
g和shard均采用三副本架构,保证高可用。 图1 集群架构 dds mongos为单节点配置,用户可以通过多个dds mongos实现负载均衡及故障转移,单个集群实例可支持2~32个dds mongos节点。 shard节点是分片服务器,当前架构是三节点副本集。单个集群版实例可支持2~32个shard节点。
DDS是否支持$round函数 DDS支持$round函数。详情请参见聚合函数兼容性列表。 父主题: 数据库基本使用
添加副本集实例只读节点 只读节点用于增强主节点的读能力,减轻主节点负载。DDS副本集实例创建成功后,可根据业务需要创建只读节点。如何连接只读节点请参见通过Mongo Shell连接副本集实例只读节点。 限制条件 账户余额大于等于0元,才可添加节点。如需使用,请联系客服申请相应权限。
性能调优 参数调优 数据库读写性能提升 实例CPU使用率高问题排查 磁盘使用率高问题排查 内存使用率高问题排查 集群实例负载不均衡问题排查 慢请求定位方法 优化数据库语句方法 通过设置数据分片提升性能
chunk,并且chunk存储在分片中的数据会存储在config服务器中,dds mongos也会根据各分片上的chunk的数据自动执行负载均衡。 范围分片能够很好的满足范围查询的需求,例如,查询x的取值在[-60,20]中的文档,仅需dds mongos将请求路由到chunk2。
chunk,并且chunk存储在分片中的数据会存储在config服务器中,dds mongos也会根据各分片上的chunk的数据自动执行负载均衡。 范围分片能够很好的满足范围查询的需求,例如,查询x的取值在[-60,20]中的文档,仅需dds mongos将请求路由到chunk2。
添加集群实例只读节点 只读节点用于增强主节点的读能力,减轻主节点负载。DDS集群实例创建成功后,可根据业务需要创建只读节点。 限制条件 账户余额大于等于0元,才可添加节点。如需使用,请联系客服申请相应权限。 集群实例的版本需为3.4。 实例在备份过程中无法添加节点。 实例进行添加节点时,该实例不可被删除。
到以下因素的影响: 网络通信状况。 主节点的事务压力,即主机每秒执行的事务量。 主节点执行的事务大小,即一个事务要执行多久。 备节点的机器负载状况。 如果主节点在某个时间段压力非常大,每秒执行的事务量非常多,备机通常会出现延迟。 对于文档数据库服务而言,可以在云监控中查看副本集备
触发后台compact线程对同一数据的多版本进行归并聚合,从而释放多余的磁盘空间,因此建议等待系统自动回收。当磁盘空间使用率较高,接近只读状态阈值时,请联系华为工程师处理。 WiredTiger在删除数据,进行数据多版本归并聚合后,也会空余出磁盘空间碎片,但wiredTiger并
触发后台compact线程对同一数据的多版本进行归并聚合,从而释放多余的磁盘空间,因此建议等待系统自动回收。当磁盘空间使用率较高,接近只读状态阈值时,请联系华为工程师处理。 WiredTiger在删除数据,进行数据多版本归并聚合后,也会空余出磁盘空间碎片,但wiredTiger并
maxIncomingConnections”的值,该参数修改后实时生效),保证每次调整幅度在20%以内,调整后观察负载变化。如果发现上调连接数后负载较高,说明实例负载已经达到瓶颈,请及时进行规格扩容。
而减少网络和进程处理的负载。 同一个业务场景,能一次查询返回的必须一次查询 ,减少和数据库的交互次数。 单个实例中,数据库的总的个数不要超过200个,总的集合个数不要超过500个。 业务上线前,一定要对数据库进行性能压测,评估业务峰值场景下,对数据库的负载情况。 禁止同时执行大量并发事务,且长时间不提交。
需要使用支持4.2版本的驱动。 × √ √ √ √ √ √ 聚合 聚合能力提升,支持在聚合管道中更新数据。 新增$merge。 新增$accumulator和$function。 支持union All。 新增$unionWith。 更多聚合操作的支持情况请参见表2。 √ √ √ √ √ √
集群。 性能相关 规范 业务程序禁止执行全表扫描的查询。 执行查询时,只选择需要返回的字段,不需要的字段不要返回。从而减少网络和进程处理的负载,修改数据时,只修改变化需要修改的字段,不要整个对象直接存储全部修改。 避免使用$not。DDS并不会对缺失的数据进行索引,因此$not的
集群。 性能相关 规范 业务程序禁止执行全表扫描的查询。 执行查询时,只选择需要返回的字段,不需要的字段不要返回。从而减少网络和进程处理的负载,修改数据时,只修改变化需要修改的字段,不要整个对象直接存储全部修改。 避免使用$not。DDS并不会对缺失的数据进行索引,因此$not的