您当前的位置:首页 > 电脑百科 > 数据库 > MYSQL

NoSQL数据库有多少种类型?

时间:2023-03-06 13:40:54  来源:今日头条  作者:黑马程序员
键值对存储数据库是NoSQL数据库中的一种类型,也是最简单的NoSQL数据库。键对值对存储数据库中的数据是以键值对的形式来存储的。

1.键值对存储数据库

键值对存储数据库是NoSQL数据库中的一种类型,也是最简单的NoSQL数据库。键对值对存储数据库中的数据是以键值对的形式来存储的。常见的键值对存储数据库有redis、Tokyo Cab.NET/Tyrant、Voldemort以及Oracle BDB等数据库。键值对存储数据库的结构示意图如下。

键值对存储数据库的结构实际上是一个映射,即Key是查找每条数据的唯一标识符,Value是该数据实际存储的内容。键值对存储数据库结构是采用哈希函数来实现键到值的映射,当查询数据时,基于Key的哈希值会直接定位到数据所在的位置,实现快速查询,并支持海量数据的高并发查询。

应用场景1:会话储存场景

会话存储指的是一个面向会话的应用程序(如Web应用程序)在用户登录时启动会话,并保持活动状态直到用户注销或会话超时,在此期间,应用程序将所有与会话相关的数据存储在内存或键值对存储数据库中。会话数据包括用户资料信息、消息、个性化数据和主题、建议、有针对性的促销和折扣。每个用户会话具有唯一的标识符,除了主键之外,任何其他键都无法查询会话数据,因此键值对存储数据库更适合于存储会话数据。

应用场景2:购物车

购物车指的是电子商务网站中的购物车功能。在假日购物季,电子商务网站可能会在几秒钟内收到数十亿的订单,键值对存储数据库可以处理海量数据的扩展和极高的状态变化,同时通过分布式处理和存储为数百万并发用户提供服务。此外,键值对存储数据库还具有内置冗余的功能,可以处理丢失的存储节点。

2.文档存储数据库

文档存储数据库不是文档管理系统。文档存储数据库是用于存储和管理文档,其中文档是结构化的数据(如JSON格式)。常见的文档存储数据库有MongoDB、CouchDB以及RavenDB等数据库。文档存储数据库的结构示意图如下。

文档存储数据库存储的文档可以是不同结构的,即JSON、XML以及BSON等格式。

应用场景1:内容管理应用程序

内容管理应用程序存储数据,首选的就是文档存储数据库,例如博客和视频平台主要使用的数据库就是文档存储数据库。通过文档存储数据库,内容管理应用程序所跟踪的每个实体都可存储为单个文档。随着需求的发展,对于开发人员来说,可以使用文档存储数据库更直观地更新应用程序。此外,如果需要更改数据模型,则只需要更新受影响的文档即可,而不需要更新架构,也不需要等到数据库停机时进行更改。

应用场景2:电子商务应用程序

在电子商务应用程序中,文档存储数据库可以高效且有效的存储商品的信息。例如,在电子商务应用程序中,不同的产品具有不同数量的属性。若是在关系型数据库中管理数干个属性,则效率比较低,并且阅读的性能会受到影响;若是使用文档存储数据库的话,可以在单个文档中描述每个产品的属性,既可以方便管理,又可以加快阅读产品的速度,并且更改一个产品的属性不会影响其他的产品。

3.列式存储数据库

列式存储数据库是以列为单位存储数据,然后将列值顺序地存入数据库中,这种数据存储法不同于基于行式存储的传统关系型数据库。列式存储数据库可以高效地存储数据,也可以快速地处理批量数据实时查询数据。常见的列式存储数据库有HBase、Cassandra、Riak以及HyperTable等数据库。列式存储数据库的结构示意图如下。

在列式存储数据库中,如果列值不存在,则不需要存储(阴影部分为列值不存在),这样的话,遇到Nul值,就不需要存储,可以减少I/O操作和避免内存空间的浪费。

应用场景1:事件记录

在事件记录中,使用列式存储数据库来存储应用程序的状态以及应用程序遇到错误等事件信息。由于列式存储数据库具有高扩展性,因此可高效地存储应用程序源源不断产生的事件记录。

应用场景2:博客网站

在博客网站中,列式存储数据库可以将博客的“标签”、“类别”“连接”及“引用通告”等内容存放在不同的列中,便于进行数据分析。

4.图形存储数据库

图形存储数据库不是网络数据库,它是NoSQL数据库的一种类型,其主要是应用图形理论来存储实体之间的关系信息,其中,实体被视为图形的“节点”,关系被视为图形的“边”,“边”按照关系将“节点”按进行连接。常见的图形存储数据库有Neo4j、FlockDB、AllegroGrap以及GraphDB等数据库。图形存储数据库的结构示意图如下。

利用图形存储数据库存储的数据,可以很清晰知道两个实体之间的关系,即A和D是朋友,C是A朋友的朋友。

应用场景1:欺诈检测

在欺诈检测中,图形存储数据库能够有效地防范复杂的欺诈行为。在现代欺诈及各种类型的金融犯罪中,例如银行欺诈、信用卡欺诈、电子商务欺诈以及保险欺诈等,欺诈者通过使用改变自己身份等的手段逃避风控规则,从而达到欺诈目的。尽管欺诈者是可以改变所有涉及网络的关联关系,也可以在所有涉及网络的群体中同步执行相同操作来躲避风控,但我们可以通过图形存储数据库建立跟踪全局用户的跟踪视角,实时利用图形存储数据库来分析具有欺诈行为的离散数据,从而识别欺诈环节,这样的话,最大程度上快速有效地防范和解决欺诈行为。

应用场景2:推荐应用

在推荐应用中,我们可以借助图形存储数据库存储购物网站中客户的购买记录、客户兴趣等信息,然后根据客户当前浏览的商品结合已存储的购物信息,从而推荐相关的商品。



Tags:NoSQL   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
如何正确选择NoSQL数据库
译者 | 陈峻审校 | 重楼Allied Market Research最近发布的一份报告指出,业界对于NoSQL数据库的需求正在持续上升。2022年,全球NoSQL市场的销售额已达73亿美元,预计到2032年将达...【详细内容】
2024-03-28  Search: NoSQL  点击:(14)  评论:(0)  加入收藏
NoSQL数据库:Redis高级实用技巧
配置Redis可通过命令行的方式进行数据库配置,也可以通过配置文件的方式进行数据库配置。由于数据库的配置选项较多,使用命令行的方式并不简便,因此数据库开发和管理人员大多采...【详细内容】
2023-11-30  Search: NoSQL  点击:(164)  评论:(0)  加入收藏
由NoSQL数据建模错误导致的性能问题
译者 | 陈峻审校 | 重楼您也许没有注意到,数据建模错误往往是导致系统性能出现问题的根本原因之一。人们往往简单地认为,只需根据应用的访问模式,对NoSQL数据建模即可。然而,事...【详细内容】
2023-11-09  Search: NoSQL  点击:(171)  评论:(0)  加入收藏
SQL还是NoSQL?架构师必备选型技能
做一个新业务,我该选择SQL还是NoSQL?很多时候我们都会有这样的疑问。如果这时候直接去看MySQL、Mongo、HBase、Redis等数据库的用法、特点、区别,其实有点太着急了。这时候,最...【详细内容】
2023-09-27  Search: NoSQL  点击:(318)  评论:(0)  加入收藏
SQL vs NoSQL:为满足您的业务需求选择正确的数据库模型
通过本文,我们将了解数据库如何扩展和不扩展。我们将研究传统SQL数据库存在的一些问题以及NoSQL数据库的引入如何解决这些问题。关于基本SQL的快速回顾SQL(Structured Query L...【详细内容】
2023-09-11  Search: NoSQL  点击:(247)  评论:(0)  加入收藏
MongoDB NoSQL之美:为什么选择非关系型数据库?
非关系型数据库(NoSQL)在过去几年中变得越来越受欢迎。传统的关系型数据库(RDBMS)在许多应用场景下存在一些限制,而非关系型数据库提供了一种新的数据存储和查询方式,具有许多优点...【详细内容】
2023-09-05  Search: NoSQL  点击:(266)  评论:(0)  加入收藏
SQL与NoSQL数据库选型及实际业务场景探讨
在企业系统架构设计中,选择合适的数据库类型是一项关键决策。本文将对比SQL和NoSQL数据库的特点,分析它们在数据模型、可扩展性、一致性与事务、查询复杂性与频率,以及性能与延...【详细内容】
2023-07-23  Search: NoSQL  点击:(232)  评论:(0)  加入收藏
NoSQL数据库有多少种类型?
键值对存储数据库是NoSQL数据库中的一种类型,也是最简单的NoSQL数据库。键对值对存储数据库中的数据是以键值对的形式来存储的。1.键值对存储数据库键值对存储数据库是NoSQL...【详细内容】
2023-03-06  Search: NoSQL  点击:(172)  评论:(0)  加入收藏
mongodb,redis,hbase,三者都是nosql数据库,他们的最大区别和不同定位是什么?
一、NoSQL的简介NoSQL比关系型数据库性能高数倍。NoSQL凭借 “易扩展、大数据、高可用、高性能、灵活性”特点强势引领全场。CP型分布式数据库,能够保证数据的强一致性和分区...【详细内容】
2021-02-25  Search: NoSQL  点击:(889)  评论:(0)  加入收藏
在物联网应用使用关系数据库还是NoSQL?
物联网数据很复杂,需要多个用户访问,所以不要犯创建数据孤岛的错误。几乎在每个行业,都有一个由物联网数据驱动的数字化转型正在进行中。重要的是要认识到物联网不是关于事物...【详细内容】
2020-11-27  Search: NoSQL  点击:(351)  评论:(0)  加入收藏
▌简易百科推荐
MySQL 核心模块揭秘
server 层会创建一个 SAVEPOINT 对象,用于存放 savepoint 信息。binlog 会把 binlog offset 写入 server 层为它分配的一块 8 字节的内存里。 InnoDB 会维护自己的 savepoint...【详细内容】
2024-04-03  爱可生开源社区    Tags:MySQL   点击:(6)  评论:(0)  加入收藏
MySQL 核心模块揭秘,你看明白了吗?
为了提升分配 undo 段的效率,事务提交过程中,InnoDB 会缓存一些 undo 段。只要同时满足两个条件,insert undo 段或 update undo 段就能被缓存。1. 关于缓存 undo 段为了提升分...【详细内容】
2024-03-27  爱可生开源社区  微信公众号  Tags:MySQL   点击:(11)  评论:(0)  加入收藏
MySQL:BUG导致DDL语句无谓的索引重建
对于5.7.23之前的版本在评估类似DDL操作的时候需要谨慎,可能评估为瞬间操作,但是实际上线的时候跑了很久,这个就容易导致超过维护窗口,甚至更大的故障。一、问题模拟使用5.7.22...【详细内容】
2024-03-26  MySQL学习  微信公众号  Tags:MySQL   点击:(10)  评论:(0)  加入收藏
从 MySQL 到 ByteHouse,抖音精准推荐存储架构重构解读
ByteHouse是一款OLAP引擎,具备查询效率高的特点,在硬件需求上相对较低,且具有良好的水平扩展性,如果数据量进一步增长,可以通过增加服务器数量来提升处理能力。本文将从兴趣圈层...【详细内容】
2024-03-22  字节跳动技术团队    Tags:ByteHouse   点击:(24)  评论:(0)  加入收藏
MySQL自增主键一定是连续的吗?
测试环境:MySQL版本:8.0数据库表:T (主键id,唯一索引c,普通字段d)如果你的业务设计依赖于自增主键的连续性,这个设计假设自增主键是连续的。但实际上,这样的假设是错的,因为自增主键不...【详细内容】
2024-03-10    dbaplus社群  Tags:MySQL   点击:(6)  评论:(0)  加入收藏
准线上事故之MySQL优化器索引选错
1 背景最近组里来了许多新的小伙伴,大家在一起聊聊技术,有小兄弟提到了MySQL的优化器的内部策略,想起了之前在公司出现的一个线上问题,今天借着这个机会,在这里分享下过程和结论...【详细内容】
2024-03-07  转转技术  微信公众号  Tags:MySQL   点击:(28)  评论:(0)  加入收藏
MySQL数据恢复,你会吗?
今天分享一下binlog2sql,它是一款比较常用的数据恢复工具,可以通过它从MySQL binlog解析出你要的SQL,并根据不同选项,可以得到原始SQL、回滚SQL、去除主键的INSERT SQL等。主要...【详细内容】
2024-02-22  数据库干货铺  微信公众号  Tags:MySQL   点击:(47)  评论:(0)  加入收藏
如何在MySQL中实现数据的版本管理和回滚操作?
实现数据的版本管理和回滚操作在MySQL中可以通过以下几种方式实现,包括使用事务、备份恢复、日志和版本控制工具等。下面将详细介绍这些方法。1.使用事务:MySQL支持事务操作,可...【详细内容】
2024-02-20  编程技术汇    Tags:MySQL   点击:(53)  评论:(0)  加入收藏
MySQL数据库如何生成分组排序的序号
经常进行数据分析的小伙伴经常会需要生成序号或进行数据分组排序并生成序号。在MySQL8.0中可以使用窗口函数来实现,可以参考历史文章有了这些函数,统计分析事半功倍进行了解。...【详细内容】
2024-01-30  数据库干货铺  微信公众号  Tags:MySQL   点击:(54)  评论:(0)  加入收藏
mysql索引失效的场景
MySQL中索引失效是指数据库查询时无法有效利用索引,这可能导致查询性能显著下降。以下是一些常见的MySQL索引失效的场景:1.使用非前导列进行查询: 假设有一个复合索引 (A, B)。...【详细内容】
2024-01-15  小王爱编程  今日头条  Tags:mysql索引   点击:(85)  评论:(0)  加入收藏
站内最新
站内热门
站内头条