【云计算与大数据技术】分布式数据库NoSQL中KV、列式、图、文档数据库的讲解(图文解释 超详细)

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介: 【云计算与大数据技术】分布式数据库NoSQL中KV、列式、图、文档数据库的讲解(图文解释 超详细)

一、NoSQL数据库概述

NoSQL泛指非关系型数据库,相对于传统关系型数据库,NoSQL有着更复杂的分类,包括KV数据库,文档数据库,列式数据库以及图数据库等等,这些类型的数据库能够更好的适应复杂类型的海量数据存储

一个NoSQL数据库提供了一种存储和检索数据的方法,该方法不同于传统的关系型数据库那种表格形式 目前NoSQL在大数据领域的应用非常广泛,应用于实时Web应用

促进NoSQL发展的因素如下

1:简单设计原则,可以更简单的水平扩展到多机器集群

2:更细粒度的控制有效性

一种NoSQL数据库的有效性取决于该类型NoSQL所能解决的问题,大多是NoSQL数据库系统都降低了系统的一致性,以利于有效性,分区容忍性和操作速度,当前制约NoSQL发展的很大部分原因是因为NoSQL的低级别查询语言、缺乏标准接口以及当前在关系型数据的投入

二、KV数据库

KV 数据库是最常见的 NoSQL 数据库形式

优势是处理速度非常快,缺点是只能通过键的完全一致查询来获取数据

Redis 是著名的内存K V数据库,在工业界得到了广泛的使用

Redis采用异步的主从复制方式

右图是Redis 的副本维护策略

三、列式数据库

列式数据库基于列式存储的文件存储格局,兼具NoSQL和传统数据库的一些优点,具有很强的水平扩展能力,极强的容错性以及极高的数据承载能力,同时也有接近于传统关系型数据库的数据模型,在数据表达能力上强于简单的KV数据库 下面以BigTable和HBase为例介绍列式数据库的功能和应用

BigTable 的数据模型本质上是一个 三维映射表,其最基础的存储单元由行主键、列主键、时间构成的三维主键唯一确定

HBase 是一个开源的非关系型分布式数据库 ,它参考了Google 的BigTable模型

HBase以表的形式存放数据。表由行和列组成,每个列属于某个列簇,由行和列确 定的存储单元称为元素

四、图数据库

在图的领域并没有一套被广泛接受的术语,存在着很多不同类型的图模型,但是有人致力于创建一种属性图形模型以期望统一大多数不同的图实现,按照该模型,属性图里信息的建模使用下面三种构造单元

属性图形模型(PropertyGraph Model)  

节点(即顶点)  

关系(即边),具有方向和类型(标记和标向)  

节点和关系上面的属性(即特性)

右图是一个被标记的小型属性图

五、文档数据库

文档数据库中的文档是一个数据记录,这个记录能够对包含的数据类型和内容进行“自我描述 ”,如XML文档 、HTML 文档和JSON 文档

文档数据库中的模型采用的是模型视图控制器(MVC)中的模型层,每个JSON 文档 的ID 就是它唯一的键

创作不易 觉得有帮助请点赞关注收藏~~~

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
9天前
|
存储 大数据 云计算
大数据与云计算
大数据与云计算
42 2
|
2天前
|
分布式计算 Hadoop 大数据
探索大数据技术:Hadoop与Spark的奥秘之旅
【5月更文挑战第28天】本文探讨了大数据技术中的Hadoop和Spark,Hadoop作为分布式系统基础架构,通过HDFS和MapReduce处理大规模数据,适用于搜索引擎等场景。Spark是快速数据处理引擎,采用内存计算和DAG模型,适用于实时推荐和机器学习。两者各有优势,未来将继续发展和完善,助力大数据时代的发展。
|
9天前
|
存储 算法 搜索推荐
【大数据分析与挖掘技术】Mahout推荐算法
【大数据分析与挖掘技术】Mahout推荐算法
16 0
|
9天前
|
机器学习/深度学习 算法 数据挖掘
【大数据分析与挖掘技术】概述
【大数据分析与挖掘技术】概述
12 1
|
10天前
|
Cloud Native 数据管理 关系型数据库
【阿里云云原生专栏】云原生数据管理:阿里云数据库服务的分布式实践
【5月更文挑战第21天】阿里云数据库服务在云原生时代展现优势,应对分布式数据管理挑战。PolarDB等服务保证高可用和弹性,通过多副本机制和分布式事务确保数据一致性和可靠性。示例代码展示了在阿里云数据库上进行分布式事务操作。此外,丰富的监控工具协助用户管理数据库性能,支持企业的数字化转型和业务增长。
183 1
|
10天前
|
存储 NoSQL 分布式数据库
大数据存储技术(4)—— NoSQL数据库
大数据存储技术(4)—— NoSQL数据库
77 1
|
10天前
|
存储 分布式计算 Java
大数据存储技术(3)—— HBase分布式数据库
大数据存储技术(3)—— HBase分布式数据库
170 0
|
10天前
|
存储 分布式计算 大数据
大数据技术概述
大数据技术概述
33 3
|
11天前
|
关系型数据库 分布式数据库 PolarDB
【PolarDB开源】PolarDB开源之旅:从零开始搭建分布式数据库集群
【5月更文挑战第20天】PolarDB,阿里云自研的云原生分布式数据库,因其高性能、高可用和易用性备受瞩目。本文指导如何搭建PolarDB集群:准备硬件和软件环境,从GitHub克隆源码,构建Docker镜像,部署控制节点和计算节点,最后验证集群状态。通过开源,PolarDB旨在推动数据库技术进步,邀请用户一同探索其潜力,共创未来。
55 4
|
15天前
|
算法 Go 分布式数据库
构建高可用的分布式数据库集群:使用Go语言与Raft共识算法
随着数据量的爆炸式增长,单一数据库服务器已难以满足高可用性和可扩展性的需求。在本文中,我们将探讨如何使用Go语言结合Raft共识算法来构建一个高可用的分布式数据库集群。我们不仅会介绍Raft算法的基本原理,还会详细阐述如何利用Go语言的并发特性和网络编程能力来实现这一目标。此外,我们还将分析构建过程中可能遇到的挑战和解决方案,为读者提供一个完整的实践指南。
http://www.vxiaotou.com