nosql数据库(nosql数据库包含哪几个数据库?)
nosql数据库包含哪几个数据库?
常见的nosql数据库如下:1。Redis通过复制支持多种数据结构、持久化操作和数据复制;2.Memcache可以利用多核的优势,单实例吞吐量极高;3.MongoDB处理大规模单表。
常见的nosql数据库有:
优势:
1.支持多种数据结构,如string(字符串)、list(双向链表)、dict(哈希表)、set(集合)、zset(有序集)和hyperloglog(基数估计)
2.支持持久化操作,可以将aof和rdb数据持久化到磁盘,以便进行数据备份或数据恢复,是防止数据丢失的好手段。
3.支持数据复制。通过主从机制,可以实时同步复制数据,支持多级复制和增量复制。主从机制是Redis进行HA的重要手段。
4.单线程请求,所有命令串行执行,在并发的情况下不需要考虑数据一致性。
5.支持pub/sub消息订阅机制,可用于消息订阅和通知。
6.支持简单交易需求,但行业内使用场景少且不成熟。
缺点:
只能使用单线程,性能受限于CPU性能,所以最高单实例CPU可以达到每秒5-6wQPS(取决于数据结构、数据大小和服务器硬件性能,日常环境下QPS峰值约为1-2w)。
2.支持简单的交易需求,但行业内使用场景少且不成熟,有利也有弊。
字符串类型会消耗更多内存,可以用dict(哈希表)压缩存储来减少内存。
消费。
优势:
可以利用多核的优势,单实例吞吐量极高,达到几十万QPS(取决于key和值的字节大小和服务器硬件的性能,日常环境下QPS峰值在4-6w左右)。适合最大承载能力。
2.支持直接配置为会话句柄。
缺点:
1只支持简单的键/值数据结构,不像Redis可以支持丰富的数据类型。
2.不能持久化,数据不能备份,只能用于缓存,重启后数据全部丢失。
3.无法同步数据并将MC中的数据迁移到其他MC实例。
内存分配使用Slab分配机制来管理内存。当值大小分布不同时,内存利用率会降低,利用率低时仍然会出现踢出等问题。用户需要重视价值设计。
优势:
1.更高的写负载,MongoDB有更高的插入速度。
2.处理大规模的单表,当数据表太大时,可以轻松拆分表。
3.高可用性,设置M-S不仅方便而且快捷,MongoDB可以快速、安全、自动的实现节点。
(数据中心)的故障转移。
4.快速查询,MongoDB支持二维空间索引,比如管道,所以可以快速准确的从指定位置开始搜索。
获取数据。MongoDB会在启动后通过文件映射将数据库中的数据加载到内存中。若内
如果资源相当充裕,这将大大提高数据库的查询速度。
5.非结构化数据的激增,在某些情况下添加列可能会锁定整个数据库,或者增加负载,因此
导致性能下降。由于MongoDB的弱数据结构模式,添加新字段不会对旧表产生任何影响,
整个过程会很快。
缺点:
1.不支持交易。
占用太多空间。
没有成熟的维护工具。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。