大数据技术原理与应用【第五讲】NoSQL数据库:5.3 NoSQL的四大类型

5.3 NoSQL的四大类型

 

5.3.1 键值数据库和列族数据库

可以分为四大类产品:键值数据库,列族数据库,文档数据库,图数据库

(代表)

1.键值数据库:

用的多:redis
云数据库:SimpleDB
典型应用:要求的数据模型非常简单,不涉及到存储结构化信息;要求非常好的写性能;涉及非常频繁的读写操作。内容缓存,如:会话,配置文件,参数,购物车等存储配置,用户数据信息等移动应用。

优点:

(扩展性好)数据规模扩大时,往里面增加结点,理论上有无上限的扩展空间;

(灵活性好)任何类型的数据都可以写成键值对;

(大量写操作性能高)因为数据模型很简单,就是key value;为什么适合用来做内容缓存的原因;

缺点:

无法存储结构化信息,因为数据模型太简单key value,值与值之间也无法反映关联关系;

条件查询效率非常低,键值数据库不允许对它的值进行索引(值是透明的,只有一个一个把key找到,才能去访问它的值),无法实现非常复杂的条件查询;

不适用:

(键值数据没有通过值来查询的途径)通过键而是通过值来查找;

(不反映数据之间的关联关系)想要存储数据之间的关系;

(很多产品不支持事务)需要事务支持;

应用:
理想的缓冲层解决方案,在底层的数据库之上构建缓存层,提高响应web速度;Redis用的比较多(比Memcached性能高);


2.列族数据库:

有所区别
HBase:采用master slave架构,一个管家管很多从节点。
Cssandra:对等结构,p2p结构,整个服务器中所有节点对等。

典型应用:

(分布式数据存储与管理)尤其是海量数据分布式的存储与管理,因为它的水平可扩展性非常好(可以通过列族进行垂直切分,进而进行水平分区,分成很多region,放在不同节点上去存储);

(拥有动态字段的应用程序)因为传统的关系数据库无法随便修改它的数据库模式,很难动态增加减少字段;

优点:
(复杂性低)因为底层是通过系统自动去实现的,不需要人工干预。
不适用:需要事务强一致性的支持的时候,有些列族数据库就不能用了,例如:Cassandra

5.3.2 文档数据库、图数据库 以及不同数据库比较分析

1.文档数据库

本质也是键值数据库,只不过它的key对应的value是一个文档;

关系数据库中的每一行记录,在文档数据库中就是一个文档;

1)特性:可以进行自我描述

文档数据库读完后就可以获得相关数据的名称、值等信息

2)文档数据库的数据结构:JSON数据格式

(数据不规则)每一条记录都对应了关系数据库中一行;嵌套对于关系数据库是多表连接的结构;不包含外部引入,读完一行就把所有信息读完了(好处:进行记录移植时,只要把一个文档迁移到其他机器上面,不用考虑别的表。而关系数据库需要锁定其他表,迁移时要把其他关联的表也迁移走)。

3)

典型应用:

比如:后台有大量读写操作的网站,用JSON数据结构的一些应用,使用嵌套结构等非规范化数据的应用结构

优点:

(高并发)所有信息在一个文档里面;

(灵活性高)可以在一个文档里写入不同类型的数据;

2.图数据库:

相关产品:Neo4j(面向Java开发的)
数据模型:图结构(不是只存放图,是图结构)

用图的顶点和边存储信息;

缺点:
只适用以上情况,有些信息不适用于用图结构存储,就不能用图数据库

3.不同数据库之间的比较分析

原文地址:https://www.cnblogs.com/musecho/p/10992963.html

时间: 2024-08-21 15:56:53

大数据技术原理与应用【第五讲】NoSQL数据库:5.3 NoSQL的四大类型的相关文章

大数据技术原理与应用——大数据处理架构Hadoop

Hadoop简介 Hadoop是Apache软件基金会旗下的一个开源分布式计算平台,为用户提供了系统底层细节透明的分布式基础架构. Hadoop是基于Java语言开发的,具有很好的跨平台特性,并且可以部署在廉价的计算机集群中. Hadoop的核心是分布式文件系统(Hadoop Distributed File System,HDFS)和MapReduce. Hadoop被公认为行业大数据标准开源软件,在分布式环境下提供了海量数据的处理能力. Hadoop的特性 Hadoop是一个能够对大量数据进

大数据技术原理与应用笔记

1.支持大数据的技术: 存储设备容量不断增加(1PB=1024TB) 计算,CPU处理能力不断提升 网络带宽不断增加 2.大数据特性:4V (1)大量化(volume) 大数据摩尔定律:数据一直一每年50%的速度增长 1ZB=1024EB,1EB=1024PB,1PB=1024TB 结构化数据/非结构化数据 (2)快速化(velocity) (3)多样化(variety) (4)价值(value) 价值密度低 3.大数据影响: 全样而非抽样 效率而非精确 相关而非因果 4.大数据应用: 谷歌预测

大数据技术原理与应用【第五讲】NoSQL数据库:5.6 文档数据库MongoDB

文档数据库介于关系数据库和NoSql之间: 是最像关系数据库的一款产品,也是当前最热门的一款产品. 1.MongoDB简介: 1) 2)文档类型BSON(Binary JSON),结构类似JSON 3)特点:操作比较简单容易可以针对任何属性的索引实现更快的排序水平可扩展性丰富的查询表达式,替换已完成文档指定的字段批量处理,聚合 4)术语: 每一行记录对应一个文档文档集合对应就是表 (实例:两行记录对应两个文档) 5) 关系数据库需要多表连接查询:文档数据库散布在多个表的数据用一个文档即可锁定,并

大数据技术原理与应用:【第五讲】NoSQL数据库

5.1 NoSQL概论 5.2 NoSQL与关系数据库的比较 5.3 NoSQL的四大类型 5.4 NoSQL的三大基石 5.5 从NoSQL到NewSQL数据库‘ 5.6 文档数据库MongoDB 原文地址:https://www.cnblogs.com/musecho/p/10991272.html

大数据技术原理与应用——分布式文件系统HDFS

分布式文件系统HDFS 分布式文件系统 分布式文件系统把文件分布存储到多个计算机节点上,成千上万的计算机节点构成计算机集群. 分布式文件系统在物理结构上是由计算机集群中的多个节点构成的,一类叫主节点(Master Node)或被称为名称节点(NameNode) 另一类叫从节点(Slave Node)或被称为数据节点(DataNode) HDFS简介 HDFS要实现以下目标: 兼容廉价的硬件设备 流数据读写 支持大数据集 简单的文件模式 强大的跨平台兼容性 HDFS的局限性 不适合低延迟数据访问(

大数据技术原理与应用:【第二讲】大数据处理架构Hadoop

2.1 Hadoop概论 创始人:Doug Cutting 1.简介: 开源免费; 操作简单,极大降低使用的复杂性; Hadoop是Java开发的; 在Hadoop上开发应用支持多种编程语言.不限于Java: Hadoop两大核心:HDFS+MapReduce HDFS:海量数据存储 MapReduce:海量数据的处理 2.起源: 原本是文本搜索库,模仿谷歌的搜索引擎: 融入了谷歌相关技术:分布式文件系统GFS:分布式并行编程框架MapReduce: 3.成名史:数据排序 的傲人成绩 4.特性:

《大数据技术原理与应用》学习

http://study.163.com/course/courseMain.htm?courseId=1002887002 先看了11章Spark 逻辑回归,需要迭代多,所以尤其适用Spark,100多倍 企业的应用: 1. 批量数据处理(数分钟与数小时,ETL),比如MapReduce 2. 基于历史数据的交互查询,比如Impala,Hive还不是 3. 实时数据流处理,比如Storm.比如返利的实时数据,以前通过数据库备库方式来处理,扩展性差. 而Spark提供了一站式解决. 一句话概括R

大数据技术 vs 数据库一体机[转]

http://blog.sina.com.cn/s/blog_7ca5799101013dtb.html 目前,虽然大数据与数据库一体机都很火热,但相当一部分人却无法对深入了解这两者的本质区别.这里便对大数据技术(如Hadoop等,主要指MapReduce与NoSQL)与数据库一体机(新一代的主流关系数据库)技术对比如下: 硬件架构 从本质上来讲,两者的硬件架构基本相同,都是采用x86服务器集群的分布式并行模式来应对大规模的数据与计算.但是,数据库一体机的商家大都会对硬件体系进行面向产品化的.系

大数据行业人士必知10大数据思维原理

大数据思维原理是什么?简单概括为10项原理,当样本数量足够大时,你会发现其实每个人都是一模一样的. 一.数据核心原理 从"流程"核心转变为"数据"核心 大数据时代,计算模式也发生了转变,从"流程"核心转变为"数据"核心.Hadoop体系的分布式计算框架已经是"数据"为核心的范式.非结构化数据及分析需求,将改变IT系统的升级方式:从简单增量到架构变化.大数据下的新思维--计算模式的转变. 例如:IBM将使用以