合集-MongoDB知识点

摘要:(1)MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易; (2)可以在MongoDB记录中设置任何属性的索引; (3)可以通过本地或者网络创建数据镜像,这使得MongoDB有更强的扩展性: (4)如果负载的增加(需要更多的存储空间和更强的处理能力),它可以分布在计算机网络中的其他节 阅读全文
posted @ 2024-12-15 12:36 似梦亦非梦 阅读(29) 评论(0) 推荐(0) 编辑
摘要:MySQL和MongoDB两者都是免费开源的数据库。MySQL和MongoDB有许多基本差别包括数据的表示查询、关系、事务、schema的设计和定义、标准化、速度和性能。通过比较MySQL和MongoDB,实际上我们是在比较 关系型和非关系型数据库,即数据存储结构不同。 阅读全文
posted @ 2024-12-15 12:37 似梦亦非梦 阅读(18) 评论(0) 推荐(0) 编辑
摘要:分片是将数据水平切分到不同的物理节点,当应用数据越来越大的时候,数据量也会越来越大。当数据量增长时,单台机器有可能无法存储数据或可接受的读取写入吞吐量,利用分片技术可以添加更多的机器来应对数据量增加以及读写操作的要求。 阅读全文
posted @ 2024-12-15 12:37 似梦亦非梦 阅读(8) 评论(0) 推荐(0) 编辑
摘要:mongodb存储bson对象在丛集(collection)中,数据库名字和丛集名字以句点连结起来叫做名字空间,一个集合命名空间又有多个数据域(extent),集合命名空间里存储着集合的元数据,比如集合名称,集合的第一个数据域和最后一个数据域的位置等等。而一个数据域由若干条文档(document)组 阅读全文
posted @ 2024-12-15 12:37 似梦亦非梦 阅读(6) 评论(0) 推荐(0) 编辑
摘要:索引用于高效的执行查询,没有索引的MongoDB将扫描整个集合中的所有文档,这种扫描效率很低,需要处理大量的数据,索引是一种特殊的数据结构,将一小块数据集合保存为容易遍历的形式。索引能够存储某种特殊字段或字段集的值,并按照索引指定的方式将字段值进行排序。 阅读全文
posted @ 2024-12-15 12:37 似梦亦非梦 阅读(8) 评论(0) 推荐(0) 编辑
摘要:以下特点使得MongoDB成为最好的NoSQL数据库:面向文件的;高性能;高可用性;易扩展性;丰富的查询语言。 阅读全文
posted @ 2024-12-15 12:38 似梦亦非梦 阅读(6) 评论(0) 推荐(0) 编辑
摘要:为了存储和检索大文件,例如图像,视频文件和音频文件,使用GridFS。默认情况下,它使用两个文件fs.files和fs.chunks来存储文件的元数据和块。 阅读全文
posted @ 2024-12-15 12:38 似梦亦非梦 阅读(7) 评论(0) 推荐(0) 编辑
摘要:MongoDB中包括了一个可以显示数据库中每个操作性能特点的数据库分析器。通过这个分析器你可以找到比预期慢的查询(或写操作);利用这一信息,比如,可以确定是否需要添加索引。 阅读全文
posted @ 2024-12-15 12:38 似梦亦非梦 阅读(9) 评论(0) 推荐(0) 编辑
摘要:不会,磁盘写操作默认是延迟执行的。写操作可能在两三秒(默认在 60 秒内)后到达磁盘。例如,如果一秒内数据库收到一千个对一个对象递增的操作,仅刷新磁盘一次。(注意,尽管 fsync 选项在命令行和经过getLastError_old 是有效的) 阅读全文
posted @ 2024-12-15 12:38 似梦亦非梦 阅读(6) 评论(0) 推荐(0) 编辑
摘要:1.复制集初始化。 2.主节点挂掉。 3.主节点脱离副本集(可能是网络原因)。 4.参与选举的节点数量必须大于副本集总节点数量的一半,如果已经小于一半了所有节点保持只读状态。 阅读全文
posted @ 2024-12-15 12:38 似梦亦非梦 阅读(10) 评论(0) 推荐(0) 编辑
摘要:1、副本集中的主节点选举必须满足“大多数”的原则,所谓“大多数”是指副本中一半以上的成员。副本集中成员只有在得到大多数成员投票支持时,才能成为主节点。例如:有N个副本集成员节点,必须有N/2+1个成员投票支持某个节点,此节点才能成为主节点。注意:副本集中若有成员节点处于不可用状态,并不会影响副本集中 阅读全文
posted @ 2024-12-15 12:39 似梦亦非梦 阅读(28) 评论(0) 推荐(0) 编辑
摘要:Sharding cluster是一种可以水平扩展的模式,在数据量很大时特给力,实际大规模应用一般会采用这种架构去构建。sharding分片很好的解决了单台服务器磁盘空间、内存、cpu等硬件资源的限制问题,把数据水平拆分出去,降低单节点的访问压力。每个分片都是一个独立的数据库,所有的分片组合起来构成 阅读全文
posted @ 2024-12-15 12:39 似梦亦非梦 阅读(14) 评论(0) 推荐(0) 编辑
摘要:1)减少单机请求数,将单机负载,提高总负载 2)减少单机的存储空间,提高总存空间 阅读全文
posted @ 2024-12-15 12:39 似梦亦非梦 阅读(4) 评论(0) 推荐(0) 编辑
摘要:1、一个好的片键对分片至关重要。 片键必须是一个索引 ,通 过 sh.shardCollection 加会自动创建索引。一个自增的片键对写入和数据均匀分布就不是很好, 因为自增的片键总会在一个分片上写入,后续达到某个阀值可能会写到别的分片。但是按照片键查询会非常高效。随机片键对数据的均匀分布效果很好 阅读全文
posted @ 2024-12-15 12:39 似梦亦非梦 阅读(11) 评论(0) 推荐(0) 编辑
摘要:1)机器的磁盘不够用了。使用分片解决磁盘空间的问题。 2)单个mongod已经不能满足写数据的性能要求。通过分片让写压力分散到各个分片上面,使用分片服务器自身的资源。 3)想把大量数据放到内存里提高性能。和上面一样,通过分片使用分片服务器自身的资源。 阅读全文
posted @ 2024-12-15 12:39 似梦亦非梦 阅读(6) 评论(0) 推荐(0) 编辑
摘要:1)分片服务器(Shard Server) mongod 实例,用于存储实际的数据块,实际生产环境中一个 shard server 角色可由几台机器组个一个 relica set 承担,防止主机单点故障 这是一个独立普通的mongod进程,保存数据信息。可以是一个副本集也可以是单独的一台服务器。 2 阅读全文
posted @ 2024-12-15 12:40 似梦亦非梦 阅读(6) 评论(0) 推荐(0) 编辑
摘要:MongoDB没有使用传统的锁或者复杂的带回滚的事务,因为它设计的宗旨是轻量,快速以及可预计的高性能。可以把它类比成MySQL MylSAM的自动提交模式。通过精简对事务的支持,性能得到了提升,特别是在一个可能会穿过多个服务器的系统里。 阅读全文
posted @ 2024-12-15 12:40 似梦亦非梦 阅读(5) 评论(0) 推荐(0) 编辑
摘要:主节点(Primary) 接收所有的写请求,然后把修改同步到所有Secondary。一个Replica Set只能有一个Primary节点,当Primary挂掉后,其他Secondary或者Arbiter节点会重新选举出来一个主节点。默认读请求也是发到Primary节点处理的,可以通过修改客户端连接 阅读全文
posted @ 2024-12-15 12:40 似梦亦非梦 阅读(6) 评论(0) 推荐(0) 编辑
摘要:1、 Key-Value 存储 Eg:Amazon S3 2、图表 Eg:Neo4J 3、文档存储 Eg:MongoDB 4、基于列存储 Eg:Cassandra 阅读全文
posted @ 2024-12-15 12:40 似梦亦非梦 阅读(11) 评论(0) 推荐(0) 编辑
摘要:MongoDB 分片是基于区域(range)的。所以一个集合(collection)中的所有的对象都被存放到一个块(chunk)中。只有当存在多余一个块的时候,才会有多个分片获取数据的选项。现在,每个默认块的大小是64Mb,所以你需要至少 64 Mb 空间才可以实施一个迁移。 阅读全文
posted @ 2024-12-15 12:41 似梦亦非梦 阅读(5) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示