MongoDB数据库应用与优化进阶.pptx

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

MongoDB应用与优化进阶

2700

2600

2500

2400

2017-01

2017-02

2017-03

2017-04

2017-05

2017-06

2017-07

2017-08

2017-09

2017-10

2017-11

2017-12

实例增长趋势图

实例数量 :2570+

日访问量 :263亿+

2300

2200

业务覆盖率:90%+

2100

2000

DBA人数 :1.5人

业务应用规模

数据库选型之争

无多文档事务及多表关联查询需求

业务快速迭代,需求频繁变动行业

单集群并发过大无法支撑业务增长

数据量增长预期TB及以上存储需求

期望要求99.999%数据库高可用场景

数据库选型之争

目录

特性介绍部署架构

最佳实践

高性能

高可用

分布式

文档化

强压缩

一致性

特性介绍

传说中的“数据丢失”

切换后的RollBack

特性介绍

传说中的“数据丢失”

切换后的RollBack

特性介绍

关于“写一致性”

关于写策略WriteConcern

{w:value,j:boole,wtimeout:n}

w

写入到指定个数或特定的实例

(0、n、majority或Tag)

j

写操作已确认写入journal日志

wtimeout

写入请求等待确认的超时时间

特性介绍

关于写策略WriteConcern

{w:2,j:true,wtimeout:5000}

区别不同版本主从差异

特性介绍

关于“写一致性”

关于写策略WriteConcern原理

特性介绍

目录

特性简介部署架构

最佳实践

副本集(ReplicaSet)

最小资源

自动选主

维护简单

其他扩展

部署架构

分布式集群(mongos)

运维复杂

读写扩展

弹性容量

自动均衡

数据切分

部署架构

关于mongos的chunk

部署架构

关于mongos的shardkey

-HASH分片

数据分布相对均匀(写分散)

高效等值查询场景

-片键考量

基数(Cardinality)

频率(Frequency)

部署架构

关于mongos的shardkey

-RANGE分片

适合于范围查询(读局部)

片键考量

基数(Cardinality)

频率(Frequency)

单调(Monotonically)

部署架构

关于mongos的shardkey

-ZONES分片

自定义区域分片

适合场景

基于硬件性能差异的数据切分存储

特定地理位置数据与应用服务最近

注意事项

区域覆盖的范围包含下界不含其上界

区域不可共享范围亦不能有交叉范围

部署架构

部署架构

mongos 使用限制

shardkey值不允许更新亦不可在线变更shardkey

单文档update、delete、remove条件必须带shardkey

count求分片集合总记录数不准可用aggreagte试试

不支持group操作可用aggregate替代

不支持使用geoSearch命令的地理位置查询操作

目录

特性简介

部署架构

最佳实践

常见认证问题

相关查询优化

其他使用事项

最佳实践

认证问题-合理配置连接

线程-连接网络模型

每个连接需分配1M的堆内存

大量连接创建与销毁开销大

连接资源控制

限制最大连接maxConns

配置连接池maxPoolSize

调整cursorTimeoutMillis

最佳实践

认证问题–必威体育精装版认证模式的坑

SCRAM-SHA-1的优势

更强的加密散列函数SHA-1

Client与Server端双向认证

引发问题

高并发短连接负载飙高

临时解决

client:

authMechanism=‘MONGODB-CR’server:

system.version-currentVersion:3

最佳实践

常见认证问题

相关查询优化

其他使用事项

最佳实践

查询优化-读优先级控制(readPreference)

readPreference

primary

primaryPreferred

secondary

secondaryPreferred

nearest

最佳实践

最佳实践

查询优化–索引类型及创建

最佳实践

查询优化–理解索引最左前缀原则

哪些查询可能走索引

1、2、3、4

查询包含最左索引字段

以索引创建顺序为准

与查询字段顺序无关

单个索引覆盖最多查询

最佳实践

查询优化–分页查询

普通分页查询

db.test.find({name:li}).skip(10000).limit(3)

优点:使用简单粗暴效率低

一种新的思路

db.test.find({_id:{$gt:3},name:li}

文档评论(0)

186****7928 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档