`

关于Nosql数据库的那些事

 
阅读更多

1..Nosql 概述:

       随着云计算和大数据时代的到来,互联网技术早已实现可以通过第三方平台访问和抓取数据。用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加。如果要对这些用户数据进行挖掘,那SQL关系型数据库已经无法满足这些业务的需求和发展 ,SQL关系型数据库已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的出现更好弥补和满足了更多的,复杂的和庞大的数据处理与分析。

 

      NoSQL,NoSQL = Not Only SQL ,意即“不仅仅是SQL”,这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。

 

2.Nosql 的特点:

  •  易扩展性突出
  • 大数据量高性能
  • 多样化以及灵活的数据模型
  • 传统SQL关系型数据的局限性促使NoSQL的发展

3.3V+H:

  • 大数据时代的3V
  1. 海量-Volume
  2. 多样-Variety
  3. 实时-Velocity
  • 互联网时代的3H
  1. 高并发
  2. 高可扩
  3. 高性能

4.NoSQL数据模型简介

  • 聚合模型:
  1. K-V键值存储模型:键值存储,即Key-Value存储,简称KV存储,NoSQL存储的一种方式。数据按照键值对的形式进行组织,索引和存储。KV存储非常适合不涉及过多数据关系业务关系的业务数据,同时能有效减少读写磁盘的次数,比SQL数据库存储拥有更好的读写性能。
  2. BSON存储模型:Binary Serialized Document Format, 是一种二进制形式的存储格式,采用了类似于 C 语言结构体的名称、对表示方法,支持内嵌的文档对象和数组对象,具有轻量性、可遍历性、高效性的特点,可以有效描述非结构化数据和结构化数据。
  3. 列族存储模型:Bigtable-Style Data Model,采用“大表格式数据模型”的数据库通常称为“列存储(Column Store)数据库”,理解列族模型的最好方式也许就是将其视为两级聚合结构(Two-Level Aggregate Structure)
  4. 图形存储模型:存储顶点和边的信息,有的支持添加注释,用于对事物建模,如社交图谱、真实世界的各种对象。IMDB(Internet Movie Database)站点的内容就组成了一幅复杂的图像,一般用于查找图形中断点的路径,或端点之间路径的属性。

5.NoSQL数据库分类:



 

 6.NoSQL数据CAP和BASE:

  • 传统SQL关系型数据的CAID:

     
  • NOSQL关系型数据库的CAP:

     CAP原理服从的原则:
  1. CA--> 传统Oracle数据库
  2. AP--> 大多数网站架构的选择
  3. CP--> Redis、Mongodb

PS:

  1.  分布式架构的时候必须做出取舍,只能在一致性和可用性之间进行权衡,没有NoSQL系统能同时保证这三点。
  2. 一致性和可用性之间取一个平衡。
  3. 多余大多数web应用,其实并不需要强一致性。
  4. 因此牺牲C换取P,这是目前分布式数据库产品的方向
  5. 一致性与可用性的决择:

    对于web2.0网站来说,关系数据库的很多主要特性却往往无用武之地:

  • 数据库事务一致性需求:很多web实时系统并不要求严格的数据库事务,对读一致性的要求很低, 有些场合对写一致性要求并不高。允许实现最终一致性。

  • 数据库的写实时性和读实时性需求:对关系数据库来说,插入一条数据之后立刻查询,是肯定可以读出来这条数据的,但是对于很多web应用来说,并不要求这么高的实时性,比方说发一条消息之 后,过几秒乃至十几秒之后,我的订阅者才看到这条动态是完全可以接受的。

  • 对复杂的SQL查询,特别是多表关联查询的需求:任何大数据量的web系统,都非常忌讳多个大表的关联查询,以及复杂的数据分析类型的报表查询,特别是SNS类型的网站,从需求以及产品设计角度,就避免了这种情况的产生。单表的主键查询,以及单表的简单条件分页查询,SQL的功能极大的弱化。

 

  • NOSQL的BASE原理:
  • BASE就是为了解决关系数据库强一致性引起的问题而引起的可用性降低而提出的解决方案。
  • BASE其实是三个术语的缩写:
  •     基本可用(Basically Available)
  •     软状态(Soft state)
  •     最终一致(Eventually consistent)
      它的思想是通过让系统放松对某一时刻数据一致性的要求来换取系统整体伸缩性和性能上改观。缘由就在于大型系统往往由于地域分布和极高性能的要求,不可能采用分布式事务来完成这些指标,要想获得这些指标,必须采用另外一种方式来实现。
  •   分布式系统与集群:
    分布式系统(Distributed System):由多台计算机和通信的软件组件通过计算机网络连接(本地网络或广域网)组成。分布式系统是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。
 因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。分布式系统可以应用在在不同的平台上如:Pc、工作站、局域网和广域网上等。
集群:是一种用于集团调度指挥通信,主要应用在专业移动通信领域。该系统具有的可用信道可为系统的全体用户共用,具有自动选择信道功能,它是共享资源、分担费用、共用信道设备及服务的多用途、高效能的无线调度通信系统。
  • 简单来讲:
  • 1分布式:不同的多台服务器上面部署不同的服务模块(工程),他们之间通过Rpc/Rmi之间通信和调用,对外提供服务和组内协作。
  • 2集群:不同的多台服务器上面部署相同的服务模块,通过分布式调度软件进行统一的调度,对外提供服务和访问。
 
  • 大小: 38.4 KB
  • 大小: 11.1 KB
  • 大小: 8.1 KB
分享到:
评论

相关推荐

    NoSQL数据库PPT.pptx

    NoSQL数据库 14信管一班2组23殷月园 NoSQL数据库PPT全文共20页,当前为第1页。 内容大纲 定义 产生 共同特征 分类 适用场景 发展现状 7 挑战 NoSQL数据库PPT全文共20页,当前为第2页。 一.什么是NoSQL数据库? NoSQL...

    NOsql数据库论文

    Nosql数据库论文 Nosql数据库论文的主要内容是介绍Nosql数据库的发展和应用,特别是分布式数据库的重要性和发展前景。文章首先介绍了传统关系型数据库的局限性,然后引入了Nosql数据库的概念和特点,接着介绍了...

    NoSQL数据库原理课件-侯宾.zip

    在当今大数据时代,传统的SQL关系型数据库已经无法满足海量数据的存储和处理需求,因此分布式数据库和NoSQL数据库应运而生。本课件将深入探讨分布式数据库的原理以及NoSQL数据库的核心概念,帮助读者理解和掌握这两...

    《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 HBase原理实现.pdf

    《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 HBase原理实现.pdf《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 HBase原理实现.pdf《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 ...

    NoSQL数据库技术与应用.pptx

    NoSQL数据库技术与应用 NoSQL数据库技术是一种非关系型数据库,适用于大规模、高并发、高灵活性的数据存储和管理。它具有分布式、可扩展、灵活性和高并发等优势。NoSQL数据库技术可以分为四大类:键值存储、图形...

    NoSQL数据库技NoSQL最新技术发展趋势.pdf

    NoSQL数据库技术发展趋势 NoSQL数据库技术发展趋势是当前数据库技术发展的热点。近年来,NoSQL数据库技术获得了高速发展,许多企业和机构都在投入巨资来开发和应用NoSQL数据库技术。阿里云作为中国软件行业的领导者...

    NoSQL数据库技术实战

    NoSQL数据库技术实战 数据库书籍!

    NOSQL数据库入门 . 佐佐木达也 .罗勇.扫描版.pdf

    综上所述,虽然提供的具体文件内容未能直接反映其内部的知识点,但通过以上对NoSQL数据库的详细介绍,我们已经能够了解到关于NoSQL数据库的一些基本概念、特点及应用场景,这对于初学者来说是一个很好的起点。

    NoSQL数据库入门 高清PDF

    根据提供的信息,我们可以推断出该文档主要围绕“NoSQL数据库入门”这一主题展开,并且它是一本高清PDF格式的学习指导书籍。尽管文档的部分内容似乎与Linux公社网站介绍有关,但我们的重点将放在提取与NoSQL数据库...

    NoSQL数据库入门思维导图

    【标题】:“NoSQL数据库入门思维导图” 【描述】提到这是一个使用特定软件MindManager打开的资源,包含两张关于数据库的思维导图。这暗示了我们将会探讨的是NoSQL数据库的基础概念以及常见的NoSQL数据库类型。 ...

    nosql数据库的发展和应用研究

    nosql数据库的发展和应用研究

    大数据-大数据挑战与NoSQL数据库技术

    《大数据挑战与NoSQL数据库技术》共分为三部分。理论篇重点介绍大数据时代下数据处理的基本理论及相关处理技术,并引入NoSQL数据库;系统篇主要介绍了各种类型NoSQL数据库的基本知识;应用篇对国内外几家知名公司在...

    NoSQL数据库之Redis数据库管理视频教程

    ### NoSQL数据库之Redis数据库管理视频教程 #### NoSQL数据库简介 NoSQL(Not Only SQL)数据库是指非关系型数据库,它们与传统的关系型数据库在数据存储方式上有显著区别。NoSQL数据库通常支持灵活的数据模式,...

    NoSQL数据库PPT

    ### NoSQL数据库概述 #### 一、什么是NoSQL数据库? NoSQL(Not Only SQL)数据库是一种非关系型数据库,它与传统的SQL(Structured Query Language)关系型数据库有所不同。NoSQL数据库的设计初衷是为了处理大...

    NoSQL数据库总结.pdf

    NoSQL数据库总结 NoSQL数据库是一种非关系型的数据库,旨在解决传统关系数据库在应付Web 2.0网站,特别是超大规模和高并发的SNS类型的Web 2.0网站中的问题。NoSQL数据库的优点是可以处理超大量的数据,可以运行在...

    第5章-NoSQL数据库.pdf

    NoSQL数据库是一种新型的非关系型数据库,随着大数据时代的到来,NoSQL数据库的应用变得越来越广泛。NoSQL一词最初代表“反SQL”,意在用新型的非关系数据库取代关系数据库,但随着时间的推移,其含义已演变为“不...

    大数据挑战与NoSQL数据库技术PDF

    大数据挑战与NoSQL数据库技术是当今信息技术领域中的热门话题,特别是在数据量呈指数级增长的背景下,传统的数据库管理系统已经无法满足高效存储和处理大规模数据的需求。NoSQL(Not Only SQL)数据库应运而生,成为...

Global site tag (gtag.js) - Google Analytics