非关系型数据库讲解
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图形(Graph)数据库
不易集群
数据库类型
特征
1、关系型数据库的最大 特点就是事务的一致性; 2、简单来说,关系模型 指的就是二维表格模型
优点
缺点Βιβλιοθήκη Baidu
关系型数据库
1、容易理解:二维表结 1、为了维护一致性所付 构是非常容易理解; 出的巨大代价就是其读 2、使用方便:支持SQL, 写性能比较差; 可用于复杂的查询; 2、固定的表结构; 3、易于维护:丰富的完 3、高并发读写需求; 4、海量数据的高效率读 整性大大减低了数据冗 余和数据不一致的概率; 写;
• 1、数据模型比较简单 • 2、灵活性更强的IT系统
• 3、对数据库性能要求较高
• 4、不需要高度的数据一致性
• redis是将数据存放到内存中,由于内容存取速度快所以redis被广 泛应用在互联网项目中,redis优点:存取速度快,官方称读取速度 会达到30万次每秒,写速度在10万次每秒,具体限制于硬件。 • 数据类型:string,hash,list(列表),set(集合) • 缺点:对持久化支持不够良好。
• 海量数据处理:需要处理pb级别的数据量 • 大规模集群管理:更加简单的分布式部署
• 极速的读写响应:提高用户的使用体验
• 低成本的建设和运营:大量部署时,大幅降低软件授权费用
• 什么是NoSql数据库? • NoSql即Not Only SQL • 是与传统关系型数据库对应的,也可理解为 • no relational,即非关系型数据库
NoSql
非关系型数据库
1 CONTENTS 2 3
传统数据库的瓶颈
云计算和大数据对数据库的要求
NoSql数据库
4
Redis基础
• 传统的关系型数据库在应付web2.0网站,特别是超大规模和高并 发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很 多难以克服的问题。
01
大规模SNS网站数据库并发负载非常高,往往要达 到每秒上万次读写请求。关系数据库应付上万次 SQL查询还勉强顶得住,但是应付上万次SQL写数 据请求,硬盘IO就已经无法承受了。
• 所以redis一般不作为数据的主数据库存储,一般配合传统的关系 型数据库使用.
• 缓存(数据查询、短连接、新闻内容、商品内容等等)。(最多使用) • 分布式集群架构中的session分离。 • 聊天室的在线好友列表。 • 任务队列。(秒杀、抢购、12306等等) 缓冲削峰
THANK YOU .
优点
快速查询
缺点
存储的数据缺少结 构化 功能相对局限
应用场景
内容缓存,处理高 负载。也可充当消 息队列 分布式文件系统
列存储数据库
查找速度快,可扩 展性强,更容易进 行分布式扩展 数据结构要求不严 格 利用图结构相关算 法
文档型数据库
查询性能不高
与key-value类似, 不过数据库能知道 value内容 专注于构建关系图 谱
02
对于关系数据库来说,数百万记录的表里查询尚可 接受。在一张上亿条记录的表里面进行SQL查询, 效率是极其低下乃至不可忍受的
03
传统数据库却没有办法像web server那样简单的通 过添加更多的服务器来扩展性能和负载能力。 对于很多需要提供24小时不间断服务的网站来说, 对数据库系统进行升级和扩展往往需要停机维护
• NoSql数据库的特征 • 1、不需要预定义模式:即不需要先设计表结构。他的数据格式 是松散的,数据库中的每条记录都可能有不同的属性和格式。 • 2、弹性可扩展:可以在不停机的情况下添加或删除节点 • 3、不支持标准SQL
类型
键值数据库
常见数据库
Redis MemcacheDB Dynamo HBase BigTable MongoDB CouchDB Neo4J
非关系型数据库
1、使用键值对存储数据; 1、无需经过sql层的解析,1、不提供sql支持,学习 2、分布式; 读写性能很高; 和使用成本较高; 3、非关系型数据库严格 2、基于键值对,数据没 2、无事务处理,附加功 有耦合性,容易扩展; 能bi和报表等支持也不好; 上不是一种数据库,应 该是一种数据结构化存 储方法的集合。