检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
单字段索引 除DDS定义的_id索引外,DDS还支持在文档的单个字段上创建用户定义的升序/降序索引。 对于单字段索引和排序操作,索引键的排序顺序(升序或降序)并不重要,因为DDS可以从任何方向遍历索引。 复合索引 DDS还支持多个字段上的用户定义索引,即复合索引。 复合索引中列出
优化数据库语句方法 文档数据库属于NoSQL数据库,提供了可扩展的高性能数据解决方案,与关系型数据库(例如MySQL、SQLServer、Oracle)一样,在数据库设计、语句优化、索引创建等方面都会影响数据库的使用性能。 下面从不同维度,给出提升DDS使用性能的建议。 数据库和集合的创建
如何通过SQL优化来提升DDS性能 文档数据库属于NoSQL数据库,提供了可扩展的高性能数据解决方案,与关系型数据库(例如MySQL、SQLServer、Oracle)一样,在数据库设计、语句优化、索引创建等方面都会影响数据库的使用性能。 下面从不同维度,给出提升DDS使用性能的建议: 数据库和集合的创建
文档数据库中创建失败的索引可以删除吗 使用语句db.<collection>.stats(),查询文档数据库中有哪些索引,然后对创建失败的索引进行删除。 collection请根据需要进行填写。 父主题: 数据库基本使用
DDS是否支持TTL索引清理过期数据 DDS支持TTL索引清理过期数据。详情请参考官方指南。 父主题: 数据库基本使用
命名规范 数据库对象(库名、表名、字段名、索引名)命名建议全部使用小写字母开头,后面跟字母或者数字,数据库对象(库名、表名、字段名、索引名)名字长度建议都不要大于32字节。 数据库名称不能使用特殊字符("",.,$,\,/,*,?,~,#,:,|")和空字符\0,数据库名称不能使
命名规范 数据库对象(库名、表名、字段名、索引名)命名建议全部使用小写字母开头,后面跟字母或者数字,数据库对象(库名、表名、字段名、索引名)名字长度建议都不要大于32字节。 数据库名称不能使用特殊字符("",.,$,\,/,*,?,~,#,:,|")和空字符\0,数据库名称不能使
闭,否则会产生内存堆积。 根据查询条件创建必要的索引,索引设计请参见索引设计规范。 避免COLLSCAN全表扫描。 查询条件和索引字段匹配有顺序性。 对于集群实例,根据业务对表进行合理地分片,分片设计请参见分片设计规范。 对于分片表,查询条件要基于shardKey进行,避免出现s
"OperationFailed" } : 解决方法 在索引操作之前处理游标: 确保在 hideIndex 或 dropIndex 之前使用完游标。 重新获取游标: 如果索引发生变化,重新执行查询以获取新的游标。 提前计划: 避免在长时间查询中执行索引操作。 示例代码: (function()
景可以进行相关记录,则避免使用upsert命令,建议直接使用update或insert。 update也需要匹配索引。 避免COLLSCAN全表扫描。 查询条件和索引字段匹配有顺序性。 insert/update命令中涉及的文档,最大不能超过16MB。 父主题: 基础命令规范
避免多个DDL操作同时执行,可能会引起阻塞导致执行失败。例如:创建索引和删除集合不要同时执行。 创建索引时,只创建必要的索引,避免创建多余索引导致存储空间浪费。例如:不要基于复合索引的前缀字段再创建索引。 创建索引时,需要创建后台索引,即:db.<collection_name>.createIndex({ <field_name>:
果排序无法通过索引实现,将在查询结果中进行排序。由于排序将占用大量内存资源,该场景下,需要通过对经常排序的字段建立索引进行优化。 当您发现SORT关键字时,可以考虑通过索引来优化排序。 索引不是越多越好,过多索引会影响写入和更新的性能。越建议参考ESR原则设计索引,以提高查询效率:
使用文档数据库服务时,如果您的CPU使用率达到80%,则认为CPU存在瓶颈。此时,会导致数据读写处理缓慢,从而影响业务正常运行。 本章节帮助您分析数据库正在执行的请求和数据库慢请求,经过分析优化后,使得数据库的查询相对合理,所有的请求都高效使用了索引,从而排查文档数据库服务CPU使用率高的问题。
排查DDS实例CPU使用率高的问题 使用文档数据库服务时,如果您的CPU使用率很高或接近100%,会导致数据读写处理缓慢,从而影响业务正常运行。 本章节帮助您分析数据库正在执行的请求和数据库慢请求,经过分析优化后,使得数据库的查询相对合理,所有的请求都高效使用了索引,从而排查文档数据库服务CPU使用率高的问题。
PROJECTION 使用索引计数 COUNT_SCAN 使用索引计数 优化方案 对于无索引覆盖的查询,则需要根据查询条件创建对应索引。 对于点查可以创建hash索引。 对于多字段查询,单字段重复度较高的场景,创建复合索引。 对于范围查找,结果集有序的查询,创建升序或者降序索引。 对于复合索引,由于
哪些数据会占用文档数据库实例空间 以下内容占用文档数据库实例空间: 您申请的磁盘空间会有必要的文件系统开销,这些开销包括索引节点和保留块,以及数据库运行必需的空间。 除备份数据以外的用户正常的数据。 文档数据库实例正常运行所需的数据,比如系统数据库、数据库回滚日志、索引等。 文档数据库服务产
CA根证书。 分片数据库 根据源库实际的集群分片个数,填写对应的分片数据库信息。 目标库信息配置 图7 目标库信息 表6 目标库信息 参数 描述 数据库实例名称 默认为创建迁移任务时选择的数据库实例,不可进行修改。 数据库用户名 目标数据库对应的数据库用户名。 数据库密码 目标数据库的登录密码。
务,实现迁移过程中源业务和数据库继续对外提供访问。 支持的源和目标数据库 表1 支持的数据库 源数据库 目标数据库 本地自建Mongo数据库(3.2、3.4、4.0版本) ECS自建Mongo数据库(3.2、3.4、4.0版本) 其他云上Mongo数据库(3.2、3.4、4.0版本,不支持腾讯云3
$graphLookup支持分片表。 表2 文档数据库服务DDS4.4版本说明 版本 日期 说明 4.4 2024年9月 支持重启时跳过索引重建,并在副本集索引不一致时自动修复。 oldestTsWindow支持最大值设置到100秒。 频繁创表删表场景下小概率OOM问题修复。 2024年8月
性能相关 规范 业务程序禁止执行全表扫描的查询。 执行查询时,只选择需要返回的字段,不需要的字段不要返回。从而减少网络和进程处理的负载,修改数据时,只修改变化需要修改的字段,不要整个对象直接存储全部修改。 避免使用$not。DDS并不会对缺失的数据进行索引,因此$not的查询条件将会要