NoSQL基础知识小结

不管现实多么惨不忍睹,都要持之以恒地相信,这只是黎明前短暂的黑暗而已。不要惶恐眼前的难关迈不过去,不要担心此刻的付出没有回报,别再花时间等待天降好运。真诚做人,努力做事!你想要的,岁月都会给你。NoSQL基础知识小结,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

NoSQL 基础知识

什么是 NoSQL?

NoSQL(Not Only SQL 的缩写)泛指非关系型的数据库,主要针对的是键值、文档以及图形类型数据存储。

NoSQL 数据库天生支持分布式,数据冗余和数据分片等特性,旨在提供可扩展的高可用高性能数据存储解决方案。

NoSQL 数据库代表:HBase、Cassandra、MongoDB、Redis

MySQL 和 NoSQL 的区别

MySQL NoSQL
数据模型 使用关系型数据模型(表格结构) 使用非关系型数据模型(键值对、文档、列族等)
数据存储 存储在预定义的表中 存储在集合、文档、列族等中
数据查询 使用结构化查询语言 (SQL) 使用特定的查询语言或 API
数据灵活性 需要预先定义表结构 无需预先定义结构,可以灵活添加字段
数据一致性 支持 ACID 事务,保证数据一致性 大多数 NoSQL 数据库是 BASE 模型,注重可用性和分区容错性,牺牲一致性
可扩展性 垂直扩展或水平分片 水平扩展,可以通过添加节点来扩展
扩展性能 通常在高负载时性能下降 可以在大规模数据时保持高性能
关系处理 支持复杂的关系查询和连接操作 通常不支持复杂的关系查询
数据模式 使用固定模式,需定义表结构 动态模式,无需事先定义
主要用途 适用于结构化数据和复杂查询 适用于半结构化或非结构化数据,高可扩展性和大规模数据存储
事务支持 支持原子性、一致性、隔离性和持久性 (ACID) 事务 通常不支持 ACID 事务,为了可扩展、高性能进行了权衡,少部分支持比如 MongoDB 。不过,MongoDB 对 ACID 事务 的支持和 MySQL 还是有所区别的。
示例 Oracle、MySQL、Microsoft SQL Server、PostgreSQL 文档:MongoDB、CouchDB,键值:Redis、DynamoDB,宽列:Cassandra、 HBase,图表:Neo4j、 Amazon Neptune、Giraph

NoSQL 数据库有什么优势?

  1. **架构灵活:**NoSQL 数据库通常提供灵活的架构,以实现更快速、更多的迭代开发。灵活的数据模型使 NoSQL 数据库成为半结构化和非结构化数据的理想之选。
  2. **可扩展性好:**NoSQL 数据库通常被设计为通过使用分布式硬件集群来横向扩展,而不是通过添加昂贵和强大的服务器来纵向扩展。
  3. **高性能:**NoSQL 数据库针对特定的数据模型和访问模式进行了优化,这与尝试使用关系数据库完成类似功能相比可实现更高的性能。
  4. **拥有强大的功能:**NoSQL 数据库提供功能强大的 API 和数据类型,专门针对其各自的数据模型而构建。

NoSQL 数据库有哪些类型?

主要可以分为下面四种类型:

  • 键值:键值数据库是一种较简单的数据库,其中每个项目都包含键和值。这是极为灵活的 NoSQL 数据库类型,因为应用可以完全控制 value 字段中存储的内容,没有任何限制。Redis 和 DynanoDB 是两款非常流行的键值数据库。
  • 文档:文档数据库中的数据被存储在类似于 JSON(JavaScript 对象表示法)对象的文档中,非常清晰直观。每个文档包含成对的字段和值。这些值通常可以是各种类型,包括字符串、数字、布尔值、数组或对象等,并且它们的结构通常与开发者在代码中使用的对象保持一致。MongoDB 就是一款非常流行的文档数据库。
  • 图形:图形数据库旨在轻松构建和运行与高度连接的数据集一起使用的应用程序。图形数据库的典型使用案例包括社交网络、推荐引擎、欺诈检测和知识图形。Neo4j 和 Giraph 是两款非常流行的图形数据库。
  • 宽列:宽列存储数据库非常适合需要存储大量的数据。Cassandra 和 HBase 是两款非常流行的宽列存储数据库。

image

学习参考

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/189735.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!