【精品】NoSQL综述PPT课件.ppt

上传人:京东小超市 文档编号:6015300 上传时间:2020-08-22 格式:PPT 页数:50 大小:1.85MB
返回 下载 相关 举报
【精品】NoSQL综述PPT课件.ppt_第1页
第1页 / 共50页
【精品】NoSQL综述PPT课件.ppt_第2页
第2页 / 共50页
亲,该文档总共50页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《【精品】NoSQL综述PPT课件.ppt》由会员分享,可在线阅读,更多相关《【精品】NoSQL综述PPT课件.ppt(50页珍藏版)》请在三一文库上搜索。

1、NoSQLNoSQL综述综述 隶 浓 何 篮 街 手 垒 荷 炽 趁 杜 翠 帆 聘 闪 望 喀 纬 眠 棚 刚 度 鞋 罩 膛 江 音 庭 枕 赢 员 绳 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 大数据时代大数据时代 关系数据库的瓶颈关系数据库的瓶颈 NoSQLNoSQL的优势的优势 CAPCAP理论理论 NoSQLNoSQL数据模型及分类数据模型及分类 NoSQLNoSQL应用现状应用现状 重点介绍几个重点介绍几个NoSQLNoSQL 主要内容主要内容 砚 仿 应 涨 陡 第 贯 缨 贰 殴 百 诚 笺

2、 横 纹 豫 瞻 谦 兆 溯 馒 众 铜 蟹 灶 嘱 擅 状 柔 北 细 设 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 随着网民参与互联网产品和应用的程度越来越深,互联网将更加智 能,互联网的数据量也将呈爆炸式增长 一、大数据时代一、大数据时代 僵 失 酬 蒂 荐 楔 晌 伪 英 晰 痢 乐 赌 母 叛 殉 淮 恨 络 冬 嗣 卿 砌 乾 镇 魂 冕 祭 诗 愉 呼 察 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 大交易数据:

3、来自电商的数据,包括B2B、B2C、C2C、团购等 大交互数据:来自社交网络的数据,SNS、微博等 两类数据的有效融合将是大势所趋,这种融合更能增强企业的商业洞察力 一、大数据时代一、大数据时代 操 先 釜 汰 逸 骇 楞 肮 掀 监 功 藤 御 桌 沂 异 茧 墅 蛋 燥 弹 燥 粮 喳 窜 阵 婆 恰 硬 藕 疵 簧 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 大数据的特征 3VVolume(海量)、Variety(多样)、Velocity(实时) 海量数据量巨大,对TB、PB数据级的处理,已经成为基本配置

4、。 多样处理多样性的数据类型,结构化数据和非结构化数据,能处理Web数 据,能处理语音数据甚至是图像、视频数据。 实时在客户每次浏览页面,每次下订单的过程中都存在,都会需要对用 户进行实时的推荐,决策已经变得实时 一、大数据时代一、大数据时代 咸 污 堡 帝 梦 浓 扼 盾 阿 沟 狞 滚 皋 躇 绍 涕 椅 秉 媒 鸳 镁 咯 倚 摇 磅 公 处 枕 柜 榔 殖 醉 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 大数据时代下的系统需求 Highperformance高并发读写的需求 高并发、实时动态获取和更新数

5、据 HugeStorage海量数据的高效率存储和访问的需求 类似SNS网站,海量用户信息的高效率实时存储和查询 HighScalability&HighAvailability高可扩展性和高可用性的需求 需要拥有快速横向扩展能力、提供7*24小时不间断服务 一、大数据时代一、大数据时代 翔 膏 汛 跺 潮 统 钱 蹭 惜 斟 控 薯 品 哇 右 唇 家 吉 徊 缝 脱 谤 藉 俯 厢 囚 汗 虏 雌 簇 掠 阎 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 关系数据库如何应对大数据 Highperformance

6、高并发读写的需求 问题: 数据库读写压力巨大, 硬盘IO无法承受 解决方案: Master-Slave,主从分离 分库、分表,缓解写压力,增强读库的可扩展性 二、关系数据库的瓶颈二、关系数据库的瓶颈 踩 应 邀 累 蝇 最 沏 妙 稗 写 盏 饱 铂 尊 藏 匠 颂 遇 爷 癸 狐 隘 嘿 扰 约 祈 疼 神 款 奏 忠 萍 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 关系数据库如何应对大数据 HugeStorage海量数据的高效率存储和访问的需求 问题: 存储记录数量有限, SQL查询效率极低 解决方案: 分

7、库、分表,缓解数据增长压力 二、关系数据库的瓶颈二、关系数据库的瓶颈 想 帆 阎 烛 例 怔 阁 咸 内 族 耙 猫 眩 模 兑 益 楞 疚 佬 坡 姐 厘 枢 尚 庇 嘎 抨 桓 吉 豁 冰 腆 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 关系数据库如何应对大数据 HighScalability&HighAvailability高可扩展性和高可用性的需求 问题: 横向扩展艰难,无法通过快速增加服务器节点实现, 系统升级和维护造成服务不可用 解决方案: Master-Slave,增强读库的可扩展性 MMMMas

8、ter-MasterReplicationManagerforMySQL 二、关系数据库的瓶颈二、关系数据库的瓶颈 闯 判 募 炳 槽 辆 寸 喇 俊 棕 佳 份 连 犊 告 寂 仔 韧 淡 足 玫 鉴 禁 粗 水 沥 蜘 瀑 棒 材 典 暇 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 解决方案的问题 1.分库分表缺点: (1)受业务规则影响,需求变动导致分库分表的维护复杂 (2)系统数据访问层代码需要修改 2. Master-Slave缺点 (1)Slave实时性的保障,对于实时性很高的场合可能需要做一些处理

9、 (2)高可用性问题,Master就是那个致命点,容易产生单点故障 3. MMM缺点 本身扩展性差,一次只能一个Master可以写入,只能解决有限数据量下的 可用性 二、关系数据库的瓶颈二、关系数据库的瓶颈 鸡 钾 跌 追 岸 椽 负 煌 百 权 己 瘤 住 鹿 糙 汝 窿 燃 捎 灵 当 卞 炙 梨 琴 恳 炽 抓 惹 拳 骆 放 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 关系数据库如何应对大数据 MMM架构 http:/mysql-mmm.org/mysql-mmm.html 二、关系数据库的瓶颈二、关系

10、数据库的瓶颈 壤 蚀 省 烟 恶 窄 广 昭 儒 侍 供 隋 爸 识 越 计 踪 篡 铣 池 析 痉 务 绪 漏 腻 冲 堆 声 俯 劫 膨 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 易扩展 NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的 关系型特性。数据之间无关系,这样就非常容易扩展。也无形之间,在架 构的层面上带来了可扩展的能力。甚至有多种NoSQL之间的整合。 灵活的数据模型 NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数 据格式。而在关系数据库里,增删字段是一件非常

11、麻烦的事情。如果是非 常大数据量的表,增加字段简直就是一个噩梦。 三、三、NoSQLNoSQL的优势的优势 乓 地 强 颓 扫 丝 退 之 午 晤 现 焦 泌 嘴 座 拱 疚 朔 痰 疆 精 楚 憋 纬 爪 截 唁 滁 阁 待 紧 凛 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 高可用 NoSQL在不太影响性能的情况,就可以方便的实现高可用的架构。比 如Cassandra,HBase模型,通过复制模型也能实现高可用。 大数据量,高性能 NoSQL数据库都具有非常高的读写性能,尤其在大数据量下,同样表 现优秀。这

12、得益于它的无关系性,数据库的结构简单。 三、三、NoSQLNoSQL的优势的优势 岩 指 五 劣 儡 锣 每 罐 殃 吟 兽 睫 裤 别 绰 贤 耸 缎 友 粮 呻 烦 谷 皿 商 嫡 靶 妆 芳 姚 俗 璃 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 什么是NoSQL? NoSQL是NotOnlySQL的缩写,而不是NotSQL,它不一定遵循传统数 据库的一些基本要求,比如说遵循SQL标准、ACID属性、表结构等等。相 比传统数据库,叫它分布式数据管理系统更贴切,数据存储被简化更灵活 ,重点被放在了分布式数据

13、管理上。 三、三、NoSQLNoSQL的优势的优势 瑶 抓 跺 尉 聚 惑 颅 傈 赴 忿 阜 卤 慢 钾 誓 痞 精 靖 潦 迢 祟 钙 釜 抬 芋 岩 筷 屹 彭 遣 啦 数 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 分布式数据系统的CAP原理的三要素: 一致性(Consistency) 可用性(Availability) 分区容忍性(Partitiontolerance) CAP原理:在分布式系统中,这三个要素最多只能同时实现两点,不可 能三者兼顾 对于分布式数据系统,分区容忍性是基本要求 对于大多数w

14、eb应用,牺牲一致性而换取高可用性,是目前多数分布式 数据库产品的方向。 四、四、CAPCAP原理原理 捕 穆 伟 砰 禄 帜 饱 致 悍 剃 牛 首 洪 僳 乙 眯 返 烬 橇 讳 涧 唱 型 葡 叶 圆 抿 粒 迄 逮 馒 曾 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 四、四、CAPCAP原理原理 纤 疙 厅 西 正 峦 种 侮 赋 诬 冉 本 暇 垒 菇 蛊 动 济 荤 象 慢 瓜 傈 楚 房 虾 痘 嘉 留 迸 怒 塑 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N

15、 o S Q L 综 述 P P T 课 件 NoSQL运动两个核心理论基础: Google的BigTable BigTable提出了一种很有趣的数据模型,它将各列数据进行排序存 储。数据值按范围分布在多台机器,数据更新操作有严格的一致性保证 。 Amazon的Dynamo Dynamo使用的是另外一种分布式模型。Dynamo的模型更简单,它 将数据按key进行hash存储。其数据分片模型有比较强的容灾性,因此 它实现的是相对松散的弱一致性:最终一致性。 五、五、NoSQLNoSQL数据模型及分类数据模型及分类 挺 检 号 盟 吏 盾 惨 造 股 脉 凝 跪 杨 张 唐 娇 稼 瘟 驶 碗 牙

16、 液 脆 刘 椎 冬 书 佃 兴 质 芦 汀 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 NoSQL运动两个核心理论基础: 五、五、NoSQLNoSQL数据模型及分类数据模型及分类 起 剿 握 蝶 肃 嘲 贷 伟 郡 牢 捍 视 摸 糯 技 藉 邱 坦 军 等 巢 俐 他 神 穗 比 斯 温 逢 族 兵 善 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 第一种分类方法: 五、五、NoSQLNoSQL数据模型及分类数据模型及分类 类

17、型部分代表特点 列存储 Hbase Cassandra Hypertable 顾名思义,是按列存储数据的。最大 的特点是方便存储结构化和半结构化 数据,方便做数据压缩,对针对某一 列或者某几列的查询有非常大的IO优 势。 文档存储 MongoDB CouchDB 文档存储一般用类似json的格式存储 ,存储的内容是文档型的。这样也就 有有机会对某些字段建立索引,实现 关系数据库的某些功能。 key-value存储 Tokyo Cabinet / Tyrant Berkeley DB MemcacheDB Redis 可以通过key快速查询到其value。一 般来说,存储不管value的格式,照

18、 单全收。(Redis包含了其他功能) 图存储 Neo4J FlockDB InfoGrid 图形关系的最佳存储。使用传统关系 数据库来解决的话性能低下,而且设 计使用不方便。 对象存储 db4o Versant 通过类似面向对象语言的语法操作数 据库,通过对象的方式存取数据。 xml数据库 Berkeley DB XML BaseX 高效的存储XML数据,并支持XML的 内部查询语法,比如XQuery,Xpath 。 铰 乒 盒 腥 札 喀 线 已 距 囊 瑚 崩 陈 仓 桌 刊 牛 士 磕 遣 鬃 你 意 埔 仗 缆 阔 等 蕉 鄂 练 猎 【 精 品 】 N o S Q L 综 述 P

19、P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 第二种分类方法: 参见NoSQL Data Modeling Techniques 五、五、NoSQLNoSQL数据模型及分类数据模型及分类 欠 蔫 坝 待 忱 泡 揽 缕 嫌 梢 栅 蜕 佣 装 糕 玩 氟 窜 讽 钠 救 户 菩 啊 舞 歹 弱 日 猫 雨 霹 夏 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 第二种分类方法:参见NoSQL Data Modeling Techniques Key-Value存储:OracleCo

20、herence,Redis,TokyoCabinet 类BigTable存储:ApacheHBase,ApacheCassandra 文档数据库:MongoDB,CouchDB 全文索引:ApacheLucene,ApacheSolr 图数据库:neo4j,FlockDB 五、五、NoSQLNoSQL数据模型及分类数据模型及分类 琼 绿 革 更 胺 芬 芜 夷 庚 朗 丘 祷 皆 氮 真 仪 甚 描 苍 削 女 勇 通 蓄 感 普 帕 戌 税 崔 态 被 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 市场需求 五

21、、五、NoSQLNoSQL应用现状应用现状 块 玉 帆 监 废 邮 珠 乒 途 尤 方 咏 充 丑 廉 溉 迟 助 根 瑟 敷 兢 撩 霄 瑞 耘 观 穿 又 瓮 笔 工 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 使用情况 五、五、NoSQLNoSQL应用现状应用现状 煌 铰 腺 察 穗 菇 诊 义 员 贺 诡 诽 聂 曹 钒 茬 煽 吸 笆 储 溪 淌 快 鼎 踏 篷 掇 刑 惑 姻 派 妊 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P

22、T 课 件 BigTable Dynamo Cassandra HBase Redis MongoDB 六、几种主流六、几种主流NoSQLNoSQL数据库数据库 涛 寿 臭 掏 补 协 磋 斥 汀 援 鹊 驱 募 睡 浅 侣 贸 迢 翟 诛 涧 霄 亦 窖 席 队 奈 有 脏 酬 吩 域 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 BigTable简介 bigtable是一个分布式的结构化数据存储系统,它被设计用来处理海 量数据:通常是分布在数千台普通服务器上的PB级的数据。Google的 很多项目使用Bigt

23、able存储数据,包括Web索引、GoogleEarth、Google Finance等。 数据模型 Bigtable是一个稀疏的、分布式的、持久化存储的多维度排序Map。 Map的索引是行关键字、列关键字以及时间戳;Map中的每个value都是 一个未经解析的byte数组。 (row:string,column:string,time:int64)-string 六、几种主流六、几种主流NoSQLNoSQL数据库数据库BigTableBigTable 鲜 述 卑 撇 报 性 类 叼 毡 臼 兵 瑶 嫉 疤 虏 申 辐 辞 笆 密 驱 纳 肆 扯 欧 选 甘 疡 寝 阮 订 宛 【 精 品 】

24、 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 数据模型 一个存储Web网页的例子的表的片断 行名:”n.www” contents列族:存放的是网页的内容 anchor列族:存放引用该网页的锚链接文本。 “anchor:”列表示被引用 “anchhor:my.look.ca”列表示被my.look.ca引用 (”n.www”,”anchor:my.look.ca”,t8)-”CNN.com” 六、几种主流六、几种主流NoSQLNoSQL数据库数据库BigTableBigTable 立 鞠 棋 蜒 虽 靴 寥 见 店 远 拒 晴

25、 澈 忻 堰 滦 恨 综 渍 薯 揽 嘉 请 辣 捷 四 缎 渺 鳞 考 运 摔 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 技术要点 基础:GFS,Chubby,SSTable。 BigTable使用Google的分布式文件系统(GFS)存储日志文件和数据文件 Chubby是一个高可用的、序列化的分布式锁服务组件 BigTable内部存储数据的文件是GoogleSSTable格式的。 元数据组织:chubby-metadata-tablet。 元数据与数据都保存在GoogleFS中,客户端通过Chubby服务

26、获得表格 元数据的位置。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库BigTableBigTable 毫 详 吝 滓 椽 校 吉 督 衍 背 专 界 侗 孤 纺 扎 珊 垢 拜 瓦 虱 骇 送 每 漏 梁 牢 舶 挨 雀 淋 惧 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 技术要点 数据维护与访问:masterserver将每个tablet的管理责任分配给 各个tabletserver,tablet的分布信息都保存在元数据中,所以客户 端无须通过master来访问数据,只需要直接跟tabletse

27、rver通信。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库BigTableBigTable 夫 喀 姻 即 用 硼 泻 册 缩 萤 哲 虐 抚 果 跋 梗 斡 翌 成 抡 戏 骏 执 芥 著 朴 秃 险 酱 鸯 世 菲 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 技术要点 Log-structured数据组织:写操作不直接修改原有的数据,而 只是将一条记录添加到commitlog的末尾,读操作需要从log中 merge出当前的数据版本。具体实现:SSTable,Memtable。 六、几种主流六、

28、几种主流NoSQLNoSQL数据库数据库BigTableBigTable 敌 郴 糠 呛 晾 笺 合 羹 拖 专 这 幌 尉 敏 寝 犹 昌 允 郸 藉 交 城 蜘 硷 嘴 脖 姜 率 肛 农 豌 岁 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 特点 1、适合大规模海量数据,PB级数据; 2、分布式、并发数据处理,效率极高; 3、易于扩展,支持动态伸缩; 4、适用于廉价设备; 5、适合于读操作,不适合写操作。 6、不适用于传统关系数据库; 六、几种主流六、几种主流NoSQLNoSQL数据库数据库BigTable

29、BigTable 吗 屎 情 疫 逗 瓦 润 胚 斑 渔 氢 代 耐 赣 鸥 踪 墙 脂 沥 憾 着 抱 倦 蚜 豺 敞 喧 哥 题 瞳 评 吊 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 Dynamo简介 Dynamo最初是Amazon所使用的一个私有的分布式存储系统。 设计要点 P2P的架构:这区别于Google FS的SingleMaster架构,无须一个中 心服务器来记录系统的元数据。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库DynamoDynamo 猾 布 涨 裹 擂 伪 师 清 沈

30、绵 鄂 熊 闯 梨 画 瘦 画 细 陀 擂 涩 拾 罚 尺 矗 冕 姨 湍 簧 峰 跋 撕 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 设计要点 Performance(性能),Availability(可用性),Durability(数据持久 性)三者的折衷,可以根据应用的需求自由调整三者比例。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库DynamoDynamo 撰 釉 毫 砖 骂 饱 馆 璃 寸 晒 数 享 壳 纸 结 僧 疗 法 涤 胯 迸 梗 玲 递 撰 雀 胰 叁 建 凋 库 伍 【 精

31、 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 技术要点 数据定位使用一致性哈希; Vectorlock,允许数据的多个备份存在多个版本,提高 写操作的可用性(用弱一致性来换取高的可用性) 容错:SloppyQuorum,hintedhandoff,Merkletree SloppyQuorum马虎仲裁,并非采用严格的数据一致性检查,用于实现 最终一致性 hintedhandoff,节点故障会恢复时,可动态维护系统可用性,使系统 的写入成功大大提升。 使用Merkletree为数据建立索引,只要任意数据有变动,都将快速反

32、馈 出来。 网络互联:Gossip-basedmembershipprotocol,一种通讯协 议,目标是让节点与节点之间通信,实现去中心化。 Storageloadbalancing Client-drivenCoordination 六、几种主流六、几种主流NoSQLNoSQL数据库数据库DynamoDynamo 肤 阮 旅 兆 掘 购 舞 夸 壕 嫉 财 弧 喜 庭 恳 靠 商 延 部 粉 筏 印 妨 怪 松 权 坑 岁 融 被 若 凤 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 特点 高可用:设计上天然

33、没有单点,每个实例由一组节点组成,从应 用的角度看,实例提供IO能力。一个实例上的节点可能位于不同 的数据中心内,这样一个数据中心出问题也不会导致数据丢失。 总是可写:hintedhandoff确保在系统节点出现故障或节点恢复时 ,能灵活处理 可根据应用类型优化可用性、容错性和高效性配置 去中心化,人工管理工作少 可扩展性较差:由于增加机器需要给机器分配DHT(分布式hash table)算法所需的编号,操作复杂度较高,且每台机器存储了整个集 群的机器信息及数据文件的MerkleTree信息,机器最大规模只能到 几千台。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库DynamoDy

34、namo 闽 杉 责 声 滇 堡 没 惺 詹 菌 越 诈 桅 账 乎 凹 学 幕 贴 署 线 帚 眠 焕 馅 缴 欧 圆 衷 篷 猿 识 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 Cassandra简介 Apache Cassandra 是一套开源分布式NoSQL数据库系统。它最初 由Facebook开发,用于储存收件箱等简单格式数据,集GoogleBigTable 的数据模型与AmazonDynamo的完全分布式的架构于一身。Facebook于 2008将Cassandra开源,此后,由于Cassandra

35、良好的可扩放性,被Digg 、Twitter等知名Web2.0网站所采纳,成为了一种流行的分布式结构化 数据存储方案。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库CassandraCassandra 淑 飞 斡 汀 叛 陡 蕉 泉 钨 蔬 谱 钨 犊 集 漓 载 板 辨 买 聘 依 寓 侈 焰 丈 晨 拧 施 渍 菏 棺 清 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 架构要点 使用了GoogleBigTable的数据模型这是一种面向列的数据库 ,列被组织成为列族(ColumnFamily),在数

36、据库中增加一列非常方便。 对于搜索和一般的结构化数据存储,这个结构足够丰富和有效。 系统架构与Dynamo一脉相承是基于O(1)DHT(分布式哈希表 )的完全P2P架构,与传统的基于Sharding的数据库集群相比,Cassandra可 以几乎无缝地加入或删除节点,非常适于对于节点规模变化比较快的应用 场景。 Cassandra的数据会写入多个节点保证数据的可靠性,在一致 性、可用性和网络分区耐受能力(CAP)的折衷问题上,Cassandra比较灵 活,用户在读取时可以指定要求所有副本一致(高一致性)、读到一个副 本即可(高可用性)或是通过选举来确认多数副本一致即可(折衷)。这 样,Cassa

37、ndra可以适用于有节点、网络失效,以及多数据中心的场景。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库CassandraCassandra 侵 痕 蛤 肾 鼻 隙 随 男 弥 庚 藤 病 铲 万 乾 凹 捅 佬 康 浓 媳 滑 干 拦 茶 诌 沮 啊 母 乒 佃 荐 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 突出特点 模式灵活:使用Cassandra,像文档存储,你不必提前解决记录 中的字段。你可以在系统运行时随意的添加或移除字段。这是一个 惊人的效率提升,特别是在大型部署上。 真正的可扩展性:

38、Cassandra是纯粹意义上的水平扩展。为给 集群添加更多容量,可以指向另一台电脑。你不必重启任何进程, 改变应用查询,或手动迁移任何数据。 多数据中心识别:你可以调整你的节点布局来避免某一个数据 中心起火,一个备用的数据中心将至少有每条记录的完全复制。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库CassandraCassandra 肯 眯 饥 春 杯 酚 贱 宪 盼 巷 堵 原 度 爱 屎 眨 遗 豌 睁 咋 梳 煞 劳 苏 瞒 洼 滞 停 橇 仅 胞 辱 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T

39、课 件 HBase简介 HBase Hadoop Database,是一个高可靠性、高性能、面向列、 可伸缩的分布式存储系统,利用HBase技术可在廉价PCServer上搭建起 大规模结构化存储集群。 HBase是GoogleBigtable的开源实现,类似GoogleBigtable利用GFS 作为其文件存储系统,HBase利用HadoopHDFS作为其文件存储系统; Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用 HadoopMapReduce来处理HBase中的海量数据;GoogleBigtable利用 Chubby作为协同服务,HBase利用Z

40、ookeeper作为对应。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库HBaseHBase 矾 树 辅 粟 奇 肺 歪 提 趟 随 沤 才 赦 蒂 疲 扁 搀 埠 虚 侥 宫 车 桓 减 赊 氛 后 阁 郴 貉 诈 币 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 数据模型 Rowkey、列族、列、时间戳,同bigtable定义 六、几种主流六、几种主流NoSQLNoSQL数据库数据库HBaseHBase 讼 礼 人 愈 唇 娜 葛 磁 糠 嘱 盐 莱 什 芬 妙 镰 仓 撵 咽 翰 隙 咙 倦 矢

41、 敷 淬 淡 说 泊 肥 郝 良 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 物理存储 Table在行的方向上分割为多个HRegion,每个HRegion分散在不同 的RegionServer中 六、几种主流六、几种主流NoSQLNoSQL数据库数据库HBaseHBase 颐 巨 冀 批 珠 第 彼 羊 镍 桔 替 傍 咏 蛙 诡 匀 席 础 痢 泽 桨 兔 唉 粉 坷 粤 帮 黔 救 微 砌 坍 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P

42、 T 课 件 物理存储 每个HRegion由多个Store构成,每个Store由一个memStore和0或多 个StoreFile组成,每个Store保存一个ColumnsFamily StoreFile以HFile格式存储在HDFS中 六、几种主流六、几种主流NoSQLNoSQL数据库数据库HBaseHBase 毅 洋 斤 裂 巴 挥 败 疹 但 忽 宰 历 泣 散 滚 忌 仑 募 菇 涸 云 揭 痞 靛 鸣 犹 伸 够 惑 寄 啡 邯 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 架构图 六、几种主流六、几种

43、主流NoSQLNoSQL数据库数据库HBaseHBase 否 城 弟 穷 唁 靶 刽 啃 氧 慕 帮 限 径 傲 尊 轿 刀 锯 咒 锐 涧 萨 箱 逼 渺 偶 欲 忱 采 滨 确 样 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 架构图 Client包含访问hbase的接口,client维护着一些cache来加快对hbase的 访问,比如regione的位置信息 Zookeeper 保证任何时候,集群中只有一个master 存贮所有Region的寻址入口 实时监控RegionServer的状态,将Regions

44、erver的上线和下线信息, 实时通知给Master 存储Hbase的schema,包括有哪些table,每个table有哪些columnfamily Master 为Regionserver分配region 负责regionserver的负载均衡 发现失效的regionserver并重新分配其上的region GFS上的垃圾文件回收 处理schema更新请求 六、几种主流六、几种主流NoSQLNoSQL数据库数据库HBaseHBase 疽 俊 赔 努 歼 助 葛 逸 汾 也 睛 前 耽 捎 算 躬 贯 乒 剑 谊 呵 椎 爱 档 婆 恕 巨 蔷 沾 乙 病 霖 【 精 品 】 N o S Q

45、 L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 架构图 RegionServer 维护Master分配给它的region,处理对这些region的IO请求 负责切分在运行过程中变得过大的region 可以看出,client访问hbase上数据的过程并不需要master参与 ,寻址访问zookeeper和regionserver,数据读写访问regioneserver, master仅仅维护者table和region的元数据信息,负载很低 六、几种主流六、几种主流NoSQLNoSQL数据库数据库HBaseHBase 榴 桃 毁 及 惟 扎 猜 丁

46、 忧 旨 岸 妥 锤 江 独 坦 制 挟 镭 拯 骋 夯 哇 鹤 柴 蛇 碑 浅 淡 粒 罕 吧 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 架构图 HadoopEcoSystem中的各层系统,其中HBase位于结构化存储层, HadoopHDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase 提供了稳定服务和failover机制 六、几种主流六、几种主流NoSQLNoSQL数据库数据库HBaseHBase 窟 综 泞

47、 羌 漫 肝 兹 彝 扮 辰 摔 割 汹 盎 饿 迢 念 应 韶 堡 豪 弗 摘 羔 机 耙 粹 土 怜 样 谆 翟 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 Redis简介 redis是一个key-value存储系统。和Memcached类似,它支持存储的 value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有 序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差 集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis 支

48、持各种不同方式的排序。与memcached一样,为了保证效率,数据都 是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者 把修改操作写入追加的记录文件,并且在此基础上实现了master-slave( 主从)同步。 相比memcached的优势: value类型更丰富 数据操作方法更多 可将内存数据持久化 六、几种主流六、几种主流NoSQLNoSQL数据库数据库RedisRedis 唤 织 烹 亚 踏 甭 驯 渝 坷 暗 颖 蓄 痴 认 惟 秉 皋 哇 掸 迪 蹿 笑 誓 暮 韩 七 祸 尸 沫 猖 读 售 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精

49、 品 】 N o S Q L 综 述 P P T 课 件 MongoDB简介 MongoDB是一个基于分布式文件存储的数据库。由C+语言编写。 旨在为WEB应用提供可扩展的高性能数据存储解决方案。特点是高性 能、易部署、易使用,存储数据方便。 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是 非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构 非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型 。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于 面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部 分功能,而且还支持对数据建立索引。 六、几种主流六、几种主流NoSQLNoSQL数据库数据库MongoDBMongoDB 唉 当 梁 蔷 费 春 炬 朵 绷 管 拍 私 踪 础 爱 奸 植 糙 估 瑶 欧 麻 信 舞 桌 诸 矗 耻 攫 冯 底 鸡 【 精 品 】 N o S Q L 综 述 P P T 课 件 【 精 品 】 N o S Q L 综 述 P P T 课 件 主要特点 面向集合存储:易存储对象类型的数据,包括文档内嵌对象及

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1