7.1-NoSQL数据库概述-2.pptx

上传人:可****阿 文档编号:77588839 上传时间:2023-03-15 格式:PPTX 页数:18 大小:454.56KB
返回 下载 相关 举报
7.1-NoSQL数据库概述-2.pptx_第1页
第1页 / 共18页
7.1-NoSQL数据库概述-2.pptx_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《7.1-NoSQL数据库概述-2.pptx》由会员分享,可在线阅读,更多相关《7.1-NoSQL数据库概述-2.pptx(18页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、7.1 NoSQL数据库概述1 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发CAP理论BASE最终一致性的相关理论NoSQL的基础【本节学习目标】2 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发一、CAP理论分布式事务分布式数据库的不一致-原因分布式环境的3个核心需求CAP理论的核心1.分布式事务分布式数据库系统中的事务是一个分布式操作序列,被操作的数据分布在不同的结点上。分布式事务ACID特征,原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation,又称独立性)、持久性(Durability)。网络、服务器、软件故障-不一致?3 数

2、据库原理及应用电子科技大学-张凤荔数据库系统原理与开发2、分布式数据库的不一致-原因在分布式DBMS环境中,事务在下列情况会导致不一致性:1)数据项的多个副本-如何保证多个副本的数据一致性?2)单点网络故障-如何通知所有的节点?事务是否继续?3)通信网络的故障-数据通讯?4)分布式提交等-两阶段、三阶段提交过程中的问题?4 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发2、分布式环境的3个核心需求在分布式的环境下设计和部署系统时,有3个核心的需求:CAP对应一致性(Consistency),可用性(Availability)和分区容忍性(Partition Tolerance)Con

3、sistencyAvailabilityPartition Tolerance5 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发4 CAP理论的核心:一个分布式系统不可能同时很好的满足一致性、可用性和分区容错性这三个需求,最多只能同时较好的满足两个。CA-单点集群,满足一致性,可用性的系统,CP-满足一致性,分区容忍性的系统,AP-满足可用性,分区容忍性的系统,6 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发.一个例子CAP的基本思想网络两个节点共享数据V,初始值为V0算法A在节点1,算法B在节点2,要求算法A 写入V新值V1,算法B 读取 V1。正常情况有3个步骤来完成

4、:1)算法A 写入新V1。2)节点1 发送信息V1给节点2。3)算法 B 读取的V1并对其进行操作。网络断开时,第3步的V1?。7 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发例子分析-节点1和节点2数据不一致的原因:1.网络断开,节点1和节点2 就会包含不一致的 V 值。2 网络协议是异步消息-延迟,3 网络协议是同步消息,导致同样的等待问题CAP思想,让 A 和 B 是高可用的(最小的延迟提供服务)并且让所有的 节点冗余网络的分区(丢失信息,无法传递信息,硬件无法提供服务,处理失败),那么就得面临这样的情况:V的值就会不一致。8 数据库原理及应用电子科技大学-张凤荔数据库系统原

5、理与开发例子分析-节点1和节点2数据不一致的原因:1.网络断开,节点1和节点2 就会包含不一致的 V 值。2 网络协议是异步消息-延迟,3 网络协议是同步消息,导致同样的等待问题CAP思想,让 A 和 B 是高可用的(最小的延迟提供服务)并且让所有的 节点冗余网络的分区(丢失信息,无法传递信息,硬件无法提供服务,处理失败),那么就得面临这样的情况:V的值就会不一致。9 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发目的:CAP是为了探索不同应用的一致性C与可用性A之间的平衡,在网络或其他原因,通过牺牲一定的一致性C来获得更好的性能与扩展性在有分隔发生,选择可用性A,集中关注分隔的恢复

6、,需要分隔前、中、后期的处理策略,及合适的补偿处理机制。选择什么样的方式:放弃?放弃?放弃?BASE10 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发二.BASEBasically Available-基本可用;系统能够基本运行,一直提供服务。Soft-state-软状态/柔性事务。Soft state 可以理解为无连接的,而 Hard state 是面向连接的;系统不要求一直保持强一致状态。Eventual Consistency-最终一致性 系统在某个时刻达到最终一致性。BASE定义为CAP中AP的衍生,在分布式环境下,BASE是数据的属性,BASE强调基本的可用性,按照功能划

7、分数据库.11 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发1.BASE特点ACID是事物的特征,A(原子性)C(一致性)I(隔离性)D(持久性),ACID的特点是强一致性、隔离性、采用悲观保守方法、难以变化;BASE的特点是弱一致性、可用性优先、采用乐观方法、适应变化并且简单快捷。对数据不断增长的系统,大数据环境下系统的可用性及分隔容忍性的要求要高于强一致性,很难满足事务要求的ACID特性。12 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发2.最终一致性一致性模型 强一致性:要求无论更新操作实在哪一个副本执行,之后所有的读操作都要能获得最新的数据。弱一致性:用户读到某

8、一操作对系统特定数据的更新需要一段时间,称这段时间为“不一致性窗口”。最终一致性:弱一致性的一种特例,保证用户最终能够读取到某操作对系统特定数据的更新。13 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发3.最终一致性两个角度一致性可以从客户端和服务器端两个角度来看 客户端关注的是多并发访问的更新过的数据如何获取的问题,对多进程并发进行访问时,更新的数据在不同进程如何获得不同策略,决定了不同的一致性。服务器关注的是更新如何复制分布到整个系统,以保证最终的一致性。一致性因为有并发读写才出现问题,一定要结合并发读写的场地应用要求。如何要求一段时间后能够访问更新后的数据,即为最终一致性。1

9、4 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发4.最终一致性模型1)因果一致性:无因果关系的数据的读写不保证一致性。2)读已之所写一致性:用户自己总能够读到更新后的数据。3)会话一致性:把读取存储系统的进程限制在一个会话范围内。4)单调读一致性:后续的操作都不会返回到给数据之前的值。5)单调写一致性:来自同一个进程的更新操作按照时间顺序执行,也叫时间轴一致性。15 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发5.最终一致性-一致性与可用性的决择很多web实时系统对读一致性的要求很低,有些场合对写一致性要求并不高。允许实现最终一致性。很多web应用来说,并不要求这么高的实时性,SNS类型的网站,从需求以及产品设计角 度,就避免了复杂多表的关联查询。往往更多的只是单表的主键查询,以及单表的简单条件分页查询,SQL的功能被极大的弱化了。海量大数据的存储和管理,需要对关系数据库进行补充 16 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发总结 NOSQL的基础遵守CAP定理,高性能,高可用性和可伸缩性。高可扩展性、分布式计算、低成本、架构的灵活性,半结构化数据、没有复杂的关系。没有标准化、有限的查询功能(到目前为止)、最终一致不直观等。17 数据库原理及应用电子科技大学-张凤荔数据库系统原理与开发本节学习结束!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com