精华内容
下载资源
问答
  • nosql数据库特点与区别?常见的

    万次阅读 2018-08-10 15:57:21
    什么是NoSQL? ...NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库数据库管理系统的统称。 NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿...

    原文链接:https://blog.csdn.net/wyz0516071128/article/details/80877984 写的蛮详细的

    什么是NoSQL?

    NoSQL,指的是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。

    NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。

    为什么使用NoSQL ?

    今天我们可以通过第三方平台(如:Google,Facebook等)可以很容易的访问和抓取数据。用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加。我们如果要对这些用户数据进行挖掘,那SQL数据库已经不适合这些应用了, NoSQL数据库的发展也却能很好的处理这些大的数据。

    常见的nosql 
    这里写图片描述 
    二、Redis,Memcache,MongoDb的特点 
    1.Redis 
    优点:

    1.支持多种数据结构,如 string(字符串)、 list(双向链表)、dict(hash表)、set(集合)、zset(排序set)、hyperloglog(基数估算)
    2.支持持久化操作,可以进行aof及rdb数据持久化到磁盘,从而进行数据备份或数据恢复等操作,较好的防止数据丢失  的手段。
    3.支持通过Replication进行数据复制,通过master-slave机制,可以实时进行数据的同步复制,支持多级复制和增量复制,master-slave机制是Redis进行HA的重要手段。
    4.单线程请求,所有命令串行执行,并发情况下不需要考虑数据一致性问题。
    5.支持pub/sub消息订阅机制,可以用来进行消息订阅与通知。
    6.支持简单的事务需求,但业界使用场景很少,并不成熟。

    缺点:

    1.Redis只能使用单线程,性能受限于CPU性能,故单实例CPU最高才可能达到5-6wQPS每秒(取决于数据结构,数据大小以及服务器硬件性能,日常环境中QPS高峰大约在1-2w左右)。
    2.支持简单的事务需求,但业界使用场景很少,并不成熟,既是优点也是缺点。
    3.Redis在string类型上会消耗较多内存,可以使用dict(hash表)压缩存储以降低内存
    耗用。

    2.Memcache 
    优点:

    1.Memcached可以利用多核优势,单实例吞吐量极高,可以达到几十万QPS(取决于key、value的字节大小以及服务器硬件性能,日常环境中QPS高峰大约在4-6w左右)。适用于最大程度扛量。
    2.支持直接配置为session handle。
    •  
    1只支持简单的key/value数据结构,不像Redis可以支持丰富的数据类型。
    2.无法进行持久化,数据不能备份,只能用于缓存使用,且重启后数据全部丢失。
    3.无法进行数据同步,不能将MC中的数据迁移到其他MC实例中。
    4.Memcached内存分配采用Slab Allocation机制管理内存,value大小分布差异较大时会造成内存利用率降低,并引发低利用率时依然出现踢出等问题。需要用户注重value设计。

    3.MongoDB 
    优点:

    1.更高的写负载,MongoDB拥有更高的插入速度。
    2.处理很大的规模的单表,当数据表太大的时候可以很容易的分割表。
    3.高可用性,设置M-S不仅方便而且很快,MongoDB还可以快速、安全及自动化的实现节点
    (数据中心)故障转移。
    4.快速的查询,MongoDB支持二维空间索引,比如管道,因此可以快速及精确的从指定位置
    获取数据。MongoDB在启动后会将数据库中的数据以文件映射的方式加载到内存中。如果内
    存资源相当丰富的话,这将极大地提高数据库的查询速度。
    5.非结构化数据的爆发增长,增加列在有些情况下可能锁定整个数据库,或者增加负载从而
    导致性能下降,由于MongoDB的弱数据结构模式,添加1个新字段不会对旧表格有任何影响,
    整个过程会非常快速。

    缺点:

    1.不支持事务。
    2.MongoDB占用空间过大 。
    3.MongoDB没有成熟的维护工具。

    三、Redis、Memcache和MongoDB的区别 
    1.性能

    三者的性能都比较高,总的来讲:Memcache和Redis差不多,要高于MongoDB。

    2.便利性

    memcache数据结构单一。
    redis丰富一些,数据操作方面,redis更好一些,较少的网络IO次数。
    mongodb支持丰富的数据表达,索引,最类似关系型数据库,支持的查询语言非常丰富。

    3,存储空间

    redis在2.0版本后增加了自己的VM特性,突破物理内存的限制;可以对key value设置过
    期时间(类似memcache)。
    memcache可以修改最大可用内存,采用LRU算法。
    mongoDB适合大数据量的存储,依赖操作系统VM做内存管理,吃内存也比较厉害,服务不要
    和别的服务在一起。

    4.可用性

    redis,依赖客户端来实现分布式读写;主从复制时,每次从节点重新连接主节点都要依赖整
    个快照,无增量复制,因性能和效率问题,所以单点问题比较复杂;不支持自动sharding,需
    要依赖程序设定一致hash 机制。一种替代方案是,不用redis本身的复制机制,采用自己做
    主动复制(多份存储),或者改成增量复制的方式(需要自己实现),一致性问题和性能的权
    衡。
    Memcache本身没有数据冗余机制,也没必要;对于故障预防,采用依赖成熟的hash或者环状的算法,解决单点故障引起的抖动问题。
    mongoDB支持master-slave,replicaset(内部采用paxos选举算法,自动故障恢
    复),auto sharding机制,对客户端屏蔽了故障转移和切分机制。
    

    5.可靠性

    redis支持(快照、AOF):依赖快照进行持久化,aof增强了可靠性的同时,对性能有所影
    响。
    memcache不支持,通常用在做缓存,提升性能。
    MongoDB从1.8版本开始采用binlog方式支持持久化的可靠性。
    

    6.一致性

    Memcache 在并发场景下,用cas保证一致性。
    redis事务支持比较弱,只能保证事务中的每个操作连续执行。
    mongoDB不支持事务。

    7.数据分析

    mongoDB内置了数据分析的功能(mapreduce),其他两者不支持。
    •  

    8.应用场景

    redis:数据量较小的更性能操作和运算上。
    memcache:用于在动态系统中减少数据库负载,提升性能;做缓存,提高性能(适合读多写
    少,对于数据量比较大,可以采用sharding)。
    MongoDB:主要解决海量数据的访问效率问题。
    展开全文
  • Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载...

    Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。
    Redis 与其他 key - value 缓存产品有以下三个特点:

    Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
    Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
    Redis支持数据的备份,即master-slave模式的数据备份。

    Redis 优势

    性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。 丰富的数据类型 – Redis支持二进制案例的
    Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。 原子 –
    Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
    丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

    MongoDB主要特点

    MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易。 你可以在MongoDB记录中设置任何属性的索引
    (如:FirstName=“Sameer”,Address=“8 Gandhi Road”)来实现更快的排序。
    你可以通过本地或者网络创建数据镜像,这使得MongoDB有更强的扩展性。 如果负载的增加(需要更多的存储空间和更强的处理能力)
    ,它可以分布在计算机网络中的其他节点上这就是所谓的分片。
    Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。 MongoDb
    使用update()命令可以实现替换完成的文档(数据)或者一些指定的数据字段 。
    Mongodb中的Map/reduce主要是用来对数据进行批量处理和聚合操作。
    Map和Reduce。Map函数调用emit(key,value)遍历集合中所有的记录,将key与value传给Reduce函数进行处理。
    Map函数和Reduce函数是使用Javascript编写的,并可以通过db.runCommand或mapreduce命令来执行MapReduce操作。
    GridFS是MongoDB中的一个内置功能,可以用于存放大量小文件。
    MongoDB允许在服务端执行脚本,可以用Javascript编写某个函数,直接在服务端执行,也可以把函数的定义存储在服务端,下次直接调用即可。
    MongoDB支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。 MongoDB安装简单。

    MongoDB 应用案例

    Craiglist上使用MongoDB的存档数十亿条记录。 FourSquare,基于位置的社交网站,在Amazon
    EC2的服务器上使用MongoDB分享数据。
    Shutterfly,以互联网为基础的社会和个人出版服务,使用MongoDB的各种持久性数据存储的要求。 bit.ly,
    一个基于Web的网址缩短服务,使用MongoDB的存储自己的数据。 spike.com,一个MTV网络的联营公司,
    spike.com使用MongoDB的。
    Intuit公司,一个为小企业和个人的软件和服务提供商,为小型企业使用MongoDB的跟踪用户的数据。
    sourceforge.net,资源网站查找,创建和发布开源软件免费,使用MongoDB的后端存储。 etsy.com
    ,一个购买和出售手工制作物品网站,使用MongoDB。 纽约时报,领先的在线新闻门户网站之一,使用MongoDB。
    CERN,著名的粒子物理研究所,欧洲核子研究中心大型强子对撞机的数据使用MongoDB。

    特征
    memcached作为高速运行的分布式缓存服务器,具有以下的特点。

    协议简单

    基于libevent的事件处理

    内置内存存储方式

    memcached不互相通信的分布式

    展开全文
  • 课程类别必修 适用专业大数据技术类相关专业 总学时64学时 总学分4.0学分 课程的性质 本课程是为大数据技术类相关专业学生开设的课程 NoSQL数据库大多具有横向扩展能力强数据模型灵活等特点在互联网电力电信金融以及...
  • 名 称 NoSQL数据库原 授 课 学 时 48 主讲责任教师 参与教学教师 授课班级/人数 专业教研室 填 表 时 间 专业 教研室主任 教务处编印 年 月 一课程教学目的 NoSQL数据库大多具有横向扩展能力强数据模型灵活等特点在...
  • 什么是NoSQL数据库

    2014-07-21 23:24:20
    但实际上NoSQL数据库还有各种各样的特点,如果能够恰当地利用这些特点将会是非常有帮助。具体的例子将会在第2章和第3章进行介绍,这些用途将会让你感受到利用NoSQL的好处。 希望顺畅地对数据进行缓存(Cache)处理...
  • NOSQL数据库特点

    2020-07-24 16:52:54
    https://www.jianshu.com/p/8b21bdc2f5db
    展开全文
  • NoSQL数据库原理与应用 含实验 教 学 大 纲 2018 版 2018 年 10 月 前 言 一大纲编写依据 NoSQL泛指非关系型的数据库随着互联网 web2.0 网站的兴起传统的关系数据库在 应付 web2.0 网站特别是超大规模和高并发的 SNS...
  • 大数据技术原理与应用 /course/XMU-1002335004 中国大学MOOC 2018年春季学期 第5讲NoSQL数据库 5.1 NoSQL简介 概念...彼此都无法互相取代 通常NoSQL数据库具有以下几个特点 1灵活的可扩展性 2 灵活的数据模型 3与云计算
  • nosql特点

    2021-01-10 17:50:10
    2.大数据量高性能(redis 一秒写8万次,读取11万次,Nosql的缓存记录级,是一种细粒度的缓存,性能会比较高) 3.数据类型是多样型的。(不需要事先设计数据库,随取随用。如果是数据量十分大的表,很多人就无法设计了...

    解耦

    1.方便你扩展(数据之间没有关系,很好扩展)

    2.大数据量高性能(redis 一秒写8万次,读取11万次,Nosql的缓存记录级,是一种细粒度的缓存,性能会比较高)

    3.数据类型是多样型的。(不需要事先设计数据库,随取随用。如果是数据量十分大的表,很多人就无法设计了)

    nosql的四种分类:

    kv键值对

    文档型数据库:mongodb(bson格式存储 和json一样)

    是一个基于分布式文件存储的数据库。c++编写,主要用来处理大量的文档

    是一个介于关系型数据库和非关系型数据库之间的产品。是非关系型数据库中最接近于关系型数据库的。

    列存储数据库

    hbase

    分布式文件系统

    图关系型数据库

     

     

     

    展开全文
  • NOSql数据库的优缺点分析

    万次阅读 2019-06-19 11:02:45
    Nosql指的是非关系型数据库,而我们常用的都是关系型数据库。就像我们常用的mysql,oralce、sqlserver等一样,这些数据库一般用来存储重要信息,应对普通的业务是没有问题的。但是,随着互联网的高速发展,传统的...
  • 常用NoSQL数据库特点

    千次阅读 2019-06-03 23:33:25
    特点 列存储 Hbase,Cassandra,Hypertable 按列存储,适用于数据压缩,对一个或几个字段进行查询的效率高 文档存储 MongoDB,CouchDB,riak 保证海量数据存储的同时,具有良好的查询性能。用类...
  • 第5讲 NoSQL数据库 5.1 NoSQL概述 5.2 NoSQL与关系数据库的比较 5.3 NoSQL的四大类型 5.4 NoSQL的三大基石 5.5 从NoSQL到NewSQL数据库 5.6 文档数据库MongoDB 第6讲 云数据库 6.1 云数据库概述 6.2 云数据库产品 6.3...
  • 什么是NoSQL数据库?...NoSQL数据库特点: 1.它不遵循SQL标准 2.它不支持ACID 3.它在某个领域远超于SQL的性能(我们不能绝对的说NoSQL数据库的性能远超于SQL数据库的性能,一定是在某个特定的场合) NoSQ
  • NoSQL数据库

    千次阅读 2019-01-19 14:49:19
    通常NoSQL数据库具有以下几个特点: (1)灵活的扩展性。 (2)灵活的数据模型。 (3)与云计算紧密结合。 2. NoSQL兴起的原因 关系型数据库已经无法满足web2.0的需求。主要表现在以下几个方面: 关系型数据库已经无法...
  • NoSQL数据库笔谈

    2018-08-03 15:22:54
    NoSQL数据库笔谈 Key Column Super column Sorting 存储 API Google之BigT able Yahoo之PNUTS 特点 PNUTS实现 Record-level mastering 记录级别主节点 PNUTS的结构 Tablets寻址与切分 Write调用示意图 PNUTS感悟 ...
  • NoSQLNoSQL = Not Only SQL),即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型数据库。 为什么需要NoSQL 随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库...
  • NoSQL数据库简介

    2021-06-21 11:23:15
    目录标题NoSQL数据库1. NoSQL数据库概述2. NoSQL特点3. NoSQL适用场景4. NoSQL不适用场景5. 常见的NoSQL四大分类5.1 Key-Value数据库5.1.2 Memcache5.1.2 Redis5.2 文档型数据库5.1.1 MongoDB5.3 列存储数据库5.3.1 ...
  • NoSQL数据库教程

    2021-03-02 20:40:34
    “每天收获小进步,积累起来就是大进步;每天收获小幸福,积攒起来便成大幸福。" 你好,我是梦阳辰!...NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,特别是大数据应用难题。 NoSQL.
  • NoSQL数据库原理与应用 1. 绪论 1.1 数据库系统 数据库技术是研究数据库的结构、存储、设计、管理和使用的一门科学。 数据库系统的组成: 数据库根据不同逻辑模型(一种数据模型)可分为:层次型(一对多)、...
  • 常用的NoSQL数据库

    2021-01-11 15:05:58
    文章目录前言一、缓存/键值数据库(Memcached、redis)MemcachedRedis二、文档型数据库(mongoDB)特点三、列族数据库(HBase、Cassandra)四、图关系数据库(Neo4j)五、数据库排名 前言 关系型数据库产品很多,如...
  • NoSQL数据库的四大分类及四大特点

    千次阅读 2019-07-23 12:12:19
    键值对存储,特点:查询数据块 内容缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统等等。 2.Colunmn列式存储 HBase 将同一列的数据放在一起,查询非常快 3.document文档存储 MongoDB 经典用于web项目...
  • Nosql数据库简介

    2020-03-22 10:54:46
    一、为什么要使用NoSQL数据库 NoSQL数据库在我的理解是一类数据库的统称(如键值存储型,文档型,列存储型等等)。 NoSQL出现的意义是啥呢? 适用关系型数据库的时候就使用关系型数据库(目前大部分我们所使用的...
  • 文章目录对比关系型数据库NoSQL 数据库特性良好的扩展性,容易通过集群部署读写性能高,支持大数据量不限制表结构,灵活的数据模型NoSQL 数据库应用Key-Value 数据库文档型数据库列存储数据库图形数据库 对比关系型...
  • NOSQL数据库习题

    千次阅读 多人点赞 2021-11-14 17:42:24
    第一章、初识NoSQL 一、填空题 1.大数据时代对数据存储的挑战包括高并发读写需求、__高效率存储和访问需求_______、高扩展性。...5.NoSQL数据库主要有四大类型,_键值对存储数据库__、文档存储数据库、__列式存储
  • 常见的 NoSQL 数据库包括键值数据库、列族数据库、文档数据库和图形数据库
  • NoSQL数据库优缺点

    千次阅读 2019-05-25 10:58:37
    易扩展 NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样 就非常容易扩展。也无形之间,在架构的层面上带来了可扩展的能力。 大数据量,高性能,快速读写 NoSQL...
  • NoSQL数据库,NoSQLNot Only SQL,意即“不仅仅是数据库”,是一项全新的数据库理念,其为解决海量数据的存储、并发访问以及拓展而产生,具有**数据模型灵活、并发访问度高、易于扩展和伸缩、开发效率高以及开发成本...
  • NoSQL数据库详解

    2019-10-29 15:32:10
    1.NoSQL简介 NoSQL(NoSQL = Not Only ...易扩展 NoSQL 数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。无形之间,在架构的层面上带来了可扩展的能力。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 45,626
精华内容 18,250
关键字:

nosql数据库的特点

友情链接: 数学建模.rar