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

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

3天内不再提示

NoSQL 数据库如何选型

虹科网络可视化技术 2023-11-26 08:05 次阅读

什么是 NoSQL 数据库?

通常,“NoSQL 数据库”是指非关系型数据库。不管它是“non SQL”的缩写,还是“not only SQL”的缩写,大多数人都同意,NoSQL 数据库是以关系表之外的格式存储数据的。

NoSQL 数据库之所以如此大受欢迎,是因为它们为用户提供了灵活的数据存储模式。

为什么要使用 NoSQL 数据库?

NoSQL 数据库性能优异、可扩展,而且很灵活,非常适合移动、Web 和游戏应用程序。

可扩展性:NoSQL 数据库通常使用分布式硬件集群进行横向扩展,而不是通过增加昂贵、健壮的服务器进行纵向扩展。在全托管服务中,有些云提供商在后台帮用户完成了所有这些操作。

灵活性:NoSQL 数据库通常都提供了灵活的模式,支持快速迭代开发。NoSQL 数据库有灵活的数据模型,非常适合半结构和非结构化数据。

高性能:与关系型数据库相比,NoSQL 数据库针对特定的数据模型和访问模式做了优化,进一步提升了性能。

以下是一些知名的 NoSQL 数据库类

键值数据库

键值数据库成对存储数据,每个记录包含一个唯一 id 和一个值。这类数据库提供了灵活的存储结构,因为值中可以存储任意数量的非结构化数据。

应用场景

会话管理、用户偏好设置和产品推荐

典型产品

Amazon DynamoDB、Azure Cosmos DB、Riak。

内存键值数据库

不同于基于磁盘的数据库,这类数据库的数据主要保存在内存中。通过减少磁盘访问实现最小响应时间。由于所有数据都存储在内存中,在进程或服务器出现故障时,内存数据库有丢失数据的风险。内存数据库可以通过在日志中记录每个操作或生成数据快照的方式将数据持久化到磁盘上。

典型产品

Redis、Memcached、Amazon Elasticache。

文档数据库

文档数据的结构和键值数据库类似,只是键和值的形式是用标记语言(如 JSON、XML 或 YAML)编写的文档。

应用场景

用户资料、产品目录和内容管理。

典型产品

MongoDB、Amazon DocumentDB、CouchDB。

列式数据库

列式数据库基于表存储,但没有严格的列格式。列式数据库不要求每一列都有值,而且可以组合包含不同数据格式的行段和列段。

应用场景

遥测数据、分析数据、消息传递和时序数据。

典型产品

Cassandra、Accumulo、Azure Table Storage、HBase。

图数据库

图数据库使用节点和边来映射数据之间的关系。节点是单个的数据值,边是这些值之间的关系

应用场景

社交图谱、推荐引擎和欺诈检测

典型产品

Neo4j、Amazon Neptune、Azure Cosmos DB Gremlin。

时序数据库

这类数据库存储有时间顺序的流式数据。数据不是按值或 id 排序,而是按收集、摄入时间或元数据中包含的其他时间戳排序。

应用场景

工业遥测数据、DevOps 和物联网IOT)应用程序。

典型产品

Graphite、Prometheus、Amazon Timestream。

分类账数据库

分类账数据库以日志为基础,日志中记录了与数据值相关的事件。这类数据库存储用于验证数据完整性的数据更改操作。

应用场景

银行系统、注册、供应链、记录系统(systems of record)。

典型产品

Amazon Quantum Ledger Database(QLDB)。

小 结

为了选出最合适自己的 NoSQL 数据库,你应该了解各种 NoSQL 数据库之间的差异。

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

    关注

    8

    文章

    2767

    浏览量

    72765
  • 数据库
    +关注

    关注

    7

    文章

    3591

    浏览量

    63371
  • nosql
    +关注

    关注

    0

    文章

    38

    浏览量

    9923
收藏 人收藏

    评论

    相关推荐

    华为云原生多模数据库 GeminiDB 架构与应用实践

    近日,2023 全球分布式云大会·深圳站顺利召开,华为云 NoSQL 数据库研发总监余汶龙在会上发表了题为《华为云原生多模数据库 GeminiDB 架构与应用实践》的精彩演讲。 余汶龙提出在智能
    的头像 发表于 04-08 18:23 775次阅读
    华为云原生多模<b class='flag-5'>数据库</b> GeminiDB 架构与应用实践

    通过Modbus读写数据库中的数据

    本文是将数据库数据转为Modbus服务端/从站,实现数据库内的数据也可以走Modbus协议通过网口或串口读写的案例,下图是通过智能网关的参数软件(在附件中)配置的参数: 上图中的配置
    发表于 03-14 13:44

    使用关系数据库中的半结构化数据

    NoSQL革命已经进入了关系世界。您可能正在使用关系数据库,但仍必须查询和理解隐藏在文本列、JSON或 XML文档中的半结构化数据
    的头像 发表于 12-20 10:46 270次阅读
    使用关系<b class='flag-5'>数据库</b>中的半结构化<b class='flag-5'>数据</b>

    关于JSON数据库

    如何理解JSON数据库?作为NoSQL数据库的一种类型,JSON数据库有哪些优势呢?JSON数据库如何运作,它为应用程序开发者带来了哪些价值
    的头像 发表于 12-06 13:46 426次阅读
    关于JSON<b class='flag-5'>数据库</b>

    什么是JSON数据库

    如何理解JSON数据库?作为NoSQL数据库的一种类型,JSON数据库有哪些优势呢?JSON数据库如何运作,它为应用程序开发者带来了哪些价值
    的头像 发表于 12-02 08:04 373次阅读
    什么是JSON<b class='flag-5'>数据库</b>

    元件数据库

    软件可以识别设备的元件数据库就好了,我们公司的机器数据都是用物料编码建立的
    发表于 11-16 14:39

    什么是NoSQLNoSQL数据库的使用场景和架构介绍

    NoSQL,全称为Not Only SQL,指的是非关系型的数据库NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库
    的头像 发表于 11-09 11:01 989次阅读
    什么是<b class='flag-5'>NoSQL</b>?<b class='flag-5'>NoSQL</b><b class='flag-5'>数据库</b>的使用场景和架构介绍

    如何在HarmonyOS对数据库进行备份,恢复与加密

    数据库备份与恢复 场景介绍 当应用在处理一项重要的操作,显然是不能被打断的。例如:写入多个表关联的事务。此时,每个表的写入都是单独的,但是表与表之间的事务关联性不能被分割。 如果操作的过程中
    发表于 11-07 08:57

    关于PLC设备对接ORACLE数据库上传查询数据

    智能网关IGT-DSER方便实现PLC与数据库之间的数据通讯,既可以读取PLC的数据上报到数据库,也可以从数据库查询
    发表于 10-12 15:34

    数据库设计-数据库的基本概念(2)#数据库

    数据库
    未来加油dz
    发布于 :2023年07月18日 17:56:21

    数据库数据模型设计(2)#数据库

    数据库
    未来加油dz
    发布于 :2023年07月18日 17:54:39

    数据库使用介绍(2)#数据库

    数据库
    学习硬声知识
    发布于 :2023年07月13日 20:29:10

    数据库使用介绍(1)#数据库

    数据库
    学习硬声知识
    发布于 :2023年07月13日 20:28:44

    从新手游上线看游戏数据库选型

    从新手游上线看游戏数据库选型 最近我们深入游戏场景,参与支撑一个全新的手游项目上线,交流中发现经验丰富的游戏架构师都比较认可一个观点:游戏业务设计离不开一款靠谱的 KV 数据库。 这款游戏项目定位
    的头像 发表于 06-27 23:07 211次阅读
    从新手游上线看游戏<b class='flag-5'>数据库</b><b class='flag-5'>选型</b>

    ESP8266 AP &amp; STA如何在数据库中标记日期和时间?

    你好 !我想连接服务器以获取时间和日期,并在数据库上标记我的 ESP8266 的每次使用我需要你的帮助来获得一个脚本,让我连接到 wifi 服务器,在连接到 NOSQL 之后给出正确的时间和日期数据库并标记时间和日期以及我的 E
    发表于 05-08 07:13