0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NoSQL数据库的四种类型

深圳市恒讯科技有限公司 来源:深圳市恒讯科技有限公司 作者:深圳市恒讯科技有 2023-04-25 17:21 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在本文中,我们将简要介绍NoSQL数据库的四种类型。

什么是NoSQL数据库?一般而言,以不同于关系数据库的格式存储数据的数据库被称为NoSQL数据库。NoSQL代表“不仅是 SQL”,它涉及这样一个事实,即数据库可以完全使用“无SQL”来存储和管理数据,或者它可以结合使用新方法(NoSQL)的灵活性和传统关系系统(SQL)的强大功能。

NoSQL数据存储有哪些不同类型?NoSQL数据库可以分为四种类型:

一、键值(KV)商店

这是最简单的NoSQL数据库类型。在这种类型下,数据以键/值对的形式存储。对于每个键,都有一个分配给它的值。每个Key都是唯一的,只接受字符串,而对应于特定Key的值可以接受String、JSON、XML等。由于这种行为,它能够处理海量数据。

键值存储将数据维护为由索引键和值组成的对。KV使用索引Key存储查询值。数据库中的每个项目都存储在键(索引)和值对中。KV存储类似于关系数据库,但每个表只有两列。

一些KV存储甚至可能允许基本连接来帮助我们扫描,如果有复合连接,它们可能不是合适的选择。有多个KV Stores可用,每个KV Stores的主要区别在于它们对CAP定理的适应以及它们的内存v/s存储使用配置。KV存储具有快速查询性能,最适合需要内容缓存的应用程序,例如不断更新前 10 名得分和玩家的游戏网站。

1、特点:一致性;交易;查询特征;数据结构和缩放。

2、优点:简单数据模型;可扩展;值可以包括JSON、XML、灵活的模式;;由于它的简单性,速度极快;最适合数据不高度相关的情况。

3、缺点:没有关系,创建自己的外键;不适合复杂数据;缺乏扫描功能;不适合操作而不是CRUD(创建、读取、更新、删除)

二、文档存储

文档存储是键值存储简单性的扩展,其中值存储在结构化文档(如 XML或JSON)中。文档存储使得在面向对象软件中映射对象变得容易。

文档数据库是无模式的,我们不必事先定义模式并遵守它。它允许我们以文档格式(JSON、XML等)存储复杂数据。文档数据库不支持关系。文档存储中的每个文档都是独立的,没有关系完整性。

文档存储可以用于KV存储数据库的所有用例,但它还有额外的优点,比如没有仅通过键查询的限制,甚至可以查询文档中的属性,而且每个文档中的数据可以在不同的格式。例如,一个产品评论网站,零个或多个用户可以评论每个产品,每个评论都可以被其他用户评论,零个到多个用户可以喜欢或不喜欢。

例如,一个产品评论网站,零个或多个用户可以对每个产品进行评论,每个评论都可以被其他用户评论,并且可以被零个或多个用户喜欢或不喜欢。

1、特点:更快的查询;由于其结构,可以轻松处理大量数据;灵活的索引。

2、优点:简单而强大的数据模型;可扩展;开放格式;没有外键。

3、缺点:不适用于关系数据;查询仅限于键和索引;Map Reduce 用于更重要的查询

三、列族数据存储或宽列数据存储

宽列数据存储采用混合方法,将关系数据库的声明性特征游戏与基于键值对且完全可变的键值存储模式相结合。宽列数据库将数据表存储为数据列的部分而不是数据行。列族数据库将列族中的数据存储为具有许多与行键关联的列的行。列族是一组经常一起访问的相关数据。

1、特点:多维密钥存储;本质上是持久的;分散式;高灵活性。

2、优点:支持半结构化数据;自然索引;可扩展。

3、缺点:不适用于关系数据。

四、图数据库

图数据库的特定用途是存储面向图的数据结构。图数据库是任何提供无索引邻接的存储系统。这意味着每个节点都包含一个指向其相邻元素的直接指针,并且不需要进行索引查找。随着节点数量的增加,一跳的成本保持不变。

图数据库针对遍历连接数据进行了优化,例如遍历社交网络上的联系人列表以找出连接程度。图数据库通常带有灵活的数据模型,这意味着不需要定义边和顶点的类型。

1、特点:灵活性;敏捷;提高性能,即使有大量数据。

2、优点:极其强大;连接的数据在本地索引;可以提供酸;实时结果;敏捷结构。

3、缺点:难以横向扩展,但可以纵向扩展。

总结:NoSQL数据库的四种类型分别为键值 (KV) 存储、文档存储、列族数据存储和图形数据库。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SQL
    SQL
    +关注

    关注

    1

    文章

    789

    浏览量

    46350
  • 数据库
    +关注

    关注

    7

    文章

    3993

    浏览量

    67713
  • nosql
    +关注

    关注

    0

    文章

    39

    浏览量

    10575
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SC、LC、FC和ST四种类型中哪类价格最贵

    在SC、LC、FC和ST四种类型的光纤跳线中,FC类型的光纤跳线通常价格相对较高,具体分析如下: FC类型的光纤跳线: 特点:采用金属螺纹套筒连接,具有较高的稳定性和抗拉强度,适用于高振动环境或需要
    的头像 发表于 07-25 10:16 751次阅读

    数据库数据恢复—服务器异常断电导致Oracle数据库故障的数据恢复案例

    Oracle数据库故障: 某公司一台服务器上部署Oracle数据库。服务器意外断电导致数据库报错,报错内容为“system01.dbf需要更多的恢复来保持一致性”。该Oracle数据库
    的头像 发表于 07-24 11:12 433次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—服务器异常断电导致Oracle<b class='flag-5'>数据库</b>故障的<b class='flag-5'>数据</b>恢复案例

    数据库数据恢复—MongoDB数据库文件丢失的数据恢复案例

    MongoDB数据库数据恢复环境: 一台操作系统为Windows Server的虚拟机上部署MongoDB数据库。 MongoDB数据库故障: 工作人员在MongoDB服务仍
    的头像 发表于 07-01 11:13 453次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—MongoDB<b class='flag-5'>数据库</b>文件丢失的<b class='flag-5'>数据</b>恢复案例

    数据库数据恢复—SQL Server数据库被加密如何恢复数据

    SQL Server数据库故障: SQL Server数据库被加密,无法使用。 数据库MDF、LDF、log日志文件名字被篡改。
    的头像 发表于 06-25 13:54 496次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—SQL Server<b class='flag-5'>数据库</b>被加密如何恢复<b class='flag-5'>数据</b>?

    oracle数据恢复—oracle数据库误执行错误truncate命令如何恢复数据

    oracle数据库误执行truncate命令导致数据丢失是一常见情况。通常情况下,oracle数据库误操作删除数据只需要通过备份恢复
    的头像 发表于 06-05 16:01 598次阅读
    oracle<b class='flag-5'>数据</b>恢复—oracle<b class='flag-5'>数据库</b>误执行错误truncate命令如何恢复<b class='flag-5'>数据</b>?

    MySQL数据库是什么

    MySQL数据库是一 开源的关系型数据库管理系统(RDBMS) ,由瑞典MySQL AB公司开发,后被Oracle公司收购。它通过结构化查询语言(SQL)进行数据存储、管理和操作,广
    的头像 发表于 05-23 09:18 908次阅读

    数据库数据恢复——MongoDB数据库文件拷贝后服务无法启动的数据恢复

    MongoDB数据库数据恢复环境: 一台Windows Server操作系统虚拟机上部署MongoDB数据库。 MongoDB数据库故障: 管理员在未关闭MongoDB服务的
    的头像 发表于 04-09 11:34 648次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复——MongoDB<b class='flag-5'>数据库</b>文件拷贝后服务无法启动的<b class='flag-5'>数据</b>恢复

    数据库数据恢复—SQL Server附加数据库提示“错误 823”的数据恢复案例

    SQL Server数据库附加数据库过程中比较常见的报错是“错误 823”,附加数据库失败。 如果数据库有备份则只需还原备份即可。但是如果没有备份,备份时间太久,或者其他原因导致备份
    的头像 发表于 02-28 11:38 816次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—SQL Server附加<b class='flag-5'>数据库</b>提示“错误 823”的<b class='flag-5'>数据</b>恢复案例

    分布式云化数据库有哪些类型

    分布式云化数据库有哪些类型?分布式云化数据库主要类型包括:关系型分布式数据库、非关系型分布式数据库
    的头像 发表于 01-15 09:43 863次阅读

    MySQL数据库的安装

    MySQL数据库的安装 【一】各种数据库的端口 MySQL :3306 Redis :6379 MongoDB :27017 Django :8000 flask :5000 【二】MySQL 介绍
    的头像 发表于 01-14 11:25 856次阅读
    MySQL<b class='flag-5'>数据库</b>的安装

    数据库是哪种数据库类型

    数据库是一部署在虚拟计算环境中的数据库,它融合了云计算的弹性和可扩展性,为用户提供高效、灵活的数据库服务。云数据库主要分为两大类:关系型
    的头像 发表于 01-07 10:22 789次阅读

    数据库加密办法

    ,当我们聊到数据加密的时候,可以从这些角度入手来提高数据的安全性。 TDE手段 TDE也就是透明数据加密,是一数据库级别进行加密的技术。
    的头像 发表于 12-24 09:47 1000次阅读

    数据库数据恢复—Mysql数据库表记录丢失的数据恢复流程

    Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、Mysql数据库表中无任何数据或只有部分
    的头像 发表于 12-16 11:05 996次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—Mysql<b class='flag-5'>数据库</b>表记录丢失的<b class='flag-5'>数据</b>恢复流程

    数据库事件触发的设置和应用

    数据库无论对于生产管理还是很多的实际应用都非常重要。小编这次聊一下数据库事件触发的应用。示例使用了postgresql和Python。
    的头像 发表于 12-13 15:14 1015次阅读

    数据库数据恢复—MYSQL数据库ibdata1文件损坏的数据恢复案例

    mysql数据库故障: mysql数据库文件ibdata1、MYI、MYD损坏。 故障表现:1、数据库无法进行查询等操作;2、使用mysqlcheck和myisamchk无法修复数据库
    的头像 发表于 12-09 11:05 1045次阅读