检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
网络安全 文档数据库服务有哪些安全保障措施 为什么在虚拟私有云中使用文档数据库 如何确保在虚拟私有云中运行的文档数据库的安全 DDS是否支持选择创建IPV6子网 将根证书导入Windows/Linux操作系统
安全 责任共担 身份认证与访问控制 数据保护技术 审计与日志 监控安全风险 故障恢复 认证证书
SQL自动查杀 使用场景 Kill掉所有执行时间已经超过n秒的请求。 Kill掉特定客户端IP的请求。 Kill掉所有全表扫描的请求。 使用须知 实例节点的CPU规格数量在4U及其以上。 支持3.4及以上版本的副本集实例和集群实例。 单个实例最多创建10条规则。 32 shard
漏洞修复策略 漏洞修复周期 高危漏洞: 社区发现漏洞并发布修复方案后,一般在1个月内进行修复,修复策略与社区保持一致。 其他漏洞: 按照版本正常升级流程解决。 修复声明 为了防止客户遭遇不当风险,除漏洞背景信息、漏洞详情、漏洞原理分析、影响范围/版本/场景、解决方案以及参考信息等内容外,不提供有关漏洞细节的其他信息。
漏洞公告 漏洞修复策略
创建和管理索引 DDS支持利用索引实现高效查询。如果没有索引,DDS必须执行集合扫描,即扫描集合中的每个文档,以选择那些与查询语句匹配的文档。如果一个查询存在适当的索引,DDS可以使用该索引来限制它必须检查的文档数量。 创建索引的规范及建议请参见索引设计规范。 写入/更新和删除命
这样会造成查询扫描的记录过多,建议先基于索引字段查询,过滤出较小的数据集后再使用模糊查询。 避免使用$not。MongoDB 并不会对缺失的数据进行索引,因此$not的查询条件将会要求在一个结果集中扫描所有记录。如果$not是唯一的查询条件,会对集合进行全表扫描。 用$and时
示的所有日志导出。 如果您需要根据某个字段排序查看慢日志,比如执行完成时间、SQL语句、客户端、用户、执行耗时、锁等待耗时、扫描文档数据、返回文档数、扫描索引数等,请参见数据管理服务(Data Admin Service,简称DAS)用户指南中的“慢SQL”章节。 慢日志内容可能
全部修改。 避免使用$not。DDS并不会对缺失的数据进行索引,因此$not的查询条件将会要求在一个结果集中扫描所有记录。如果$not是唯一的查询条件,会对集合执行全表扫描。 用$and时把匹配最少结果的条件放在最前面,用$or时把匹配最多结果的条件放在最前面。 单个实例中,数据
全部修改。 避免使用$not。DDS并不会对缺失的数据进行索引,因此$not的查询条件将会要求在一个结果集中扫描所有记录。如果$not是唯一的查询条件,会对集合执行全表扫描。 用$and时把匹配最少结果的条件放在最前面,用$or时把匹配最多结果的条件放在最前面。 单个实例中,数据
$nin:可能会匹配到大多数的索引,此时,查询优化器会退化为全表扫描。 $not:可能会导致查询优化器无法匹配到具体的索引,退化为全表扫描。 $ne:选择字段值不等于指定值的文档,如果多数为取相反值的文档,将会扫描整个索引。 $exists:对于松散的文档结构,查询必须遍历每一个文档。
数据库连接数 数据库连接数表示应用程序可以同时连接数据库的数量,与您应用程序或者网站能够支持的最大用户数没有关系。 对于集群实例,一般指客户端同dds mongos之间的连接数。 对于副本集实例,一般指客户端同Primary节点和Secondary节点之间的连接数。 对于单节点实例,一般指客户端同单节点之间的连接数。
$nin 可能会匹配到大多数的索引,此时,查询优化器会退化为全表扫描。 $not 可能会导致查询优化器无法匹配到具体的索引,退化为全表扫描。 $ne 选择字段值不等于指定值的文档,如果多数为取相反值的文档,将会扫描整个索引。 $exists 对于松散的文档结构,查询必须遍历每一个文档。
99999999% 自行保障,自行搭建主从复制,自建RAID等。 系统安全性 防DDoS攻击,及时自动修复各种数据库安全漏洞。 支持审计日志。 需要购买昂贵的硬件设备和软件服务,自行检测和修复安全漏洞等。 需要购买额外审计系统。 数据库备份 支持自动备份,根据业务运行周期设置自动备份策略。 支持随
profile.find().pretty() 分析慢请求日志,查找CPU使用率升高的原因。 下面是某个慢请求日志示例,可查看到该请求进行了全表扫描,扫描了1561632个文档,没有通过索引进行查询。 { "op" : "query", "ns" : "taiyiDatabase
排查DDS实例连接数耗尽的问题 数据库连接数表示应用程序可以同时连接数据库的数量,与您应用程序或者网站能够支持的最大用户数没有关系。 对于集群实例,一般指客户端同mongos之间的连接数。 对于副本集实例,一般指客户端同Primary节点和Secondary节点之间的连接数。 问题现象
除了降低连接数以外,还需要注意单次请求的内存开销,尽量避免查询语句出现全表扫描、内存排序等。 使用慢日志功能,查询当前实例产生的慢日志。 分析慢日志,查找内存升高的原因:下面是某个慢请求日志示例,可查看到该请求进行了全表扫描,扫描了1561632个文档,没有通过索引进行查询。 {
实例的连接数满导致实例连接失败,如何处理? 数据库连接数表示应用程序可以同时连接数据库的数量,与您应用程序或者网站能够支持的最大用户数没有关系。 对于集群实例,一般指客户端同dds mongos之间的连接数。 对于副本集实例,一般指客户端同Primary节点和Secondary节点之间的连接数。
profile.find().pretty() 分析慢请求日志,查找CPU使用率升高的原因。 下面是某个慢请求日志示例,可查看到该请求进行了全表扫描,扫描了1561632个文档,没有通过索引进行查询。 { "op" : "query", "ns" : "taiyiDatabase
Cursor使用完毕后要及时关闭,否则会产生内存堆积。 根据查询条件创建必要的索引,索引设计请参见索引设计规范。 避免COLLSCAN全表扫描。 查询条件和索引字段匹配有顺序性。 对于集群实例,根据业务对表进行合理地分片,分片设计请参见分片设计规范。 对于分片表,查询条件要基于s