版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
半结构化数据存储系统调研现有的半结构化系统BigtableGoogle的分布式nosql数据存储系统有一个开源的版本HBaseDynamoAmazon的分布式存储引擎CassandraFacebook的开源分布式存储系统MongoDBGoogle的基于分布式文件存储的数据库开源项目CouchDBIBM开发的面向文档的数据库(团队已组建新公司CouchIO)RedisVmware的开源key-value数据库Bigtable概述大量应用需要类似数据库的访问查询一般比较简单不需要完整的数据关系模型数据规模非常大要保证高效(带宽&延迟),高可用优点与传统数据库不同,类似Key-Values列簇式存储(ColumnFamily)可以随时添加column字段可以保存历史数据缺点不支持类似关联(join)这样的操作BigTable逻辑模型传统表格:Row/Column/CellBitTableRow:RowkeyColumn:<ColumnFamily:Qualifier>同一个columnfamily的数据类型一致Columnfamily在设计table时创建,运行后很少修改可在运行时再columnfamily中添加columnTimestampsCell有多个版本可用针对columnfamily设定查询:(row:string,column:string,time:int64)stringBigtable物理模型用户table按rowkey划分为多个Tablet在内存中开辟缓冲区memtable来保存数据数据的持久化存储使用SSTable,永久保存在GFS上Tablem*TabletTabletn*columnfamilyn*columnfamilySstableSSTable(V1:Rowkey,CF0-C1,CF0-C2,CF0-C3,CF1-C1),(V2),….V1V2V3BigTable的组成Master分配Tablet监测TabletServer的状态,容错处理保证系统负载均衡TabletServer服务读写请求,Tablet处理Client直接与TabletServer交互操作TableChubby保证系统可用性保存TableSchemaGFS作为底层存储Dynamo概述优点完全的分布式,去中心化,存储分层松耦合度高可用性,可扩展性缺点最终一致性:写入的数据可能在后继的读操作中不能获取Quorum一致性:读取代价高(一旦有某个节点未同步,读取会失败)WANconsideration跨IDC造成异地传输数据加Dynamo架构客户端请求通过pagerendering组件返回内容Pagerendering组件根据请求查询大量服务器后台通过dynamoinstance提供服务本地持久化存储可通过不同引擎,如Berkeley
DB,MySQL等Dynamo数据划分使用consistenthashing算法Node对应一个hash值范围,key根据hash值在hashring中顺时针查找引入虚拟节点概念Dynamo数据版本控制使用vectorclocks通过比较vectorclock来进行版本合并Dynamo同步与恢复一个node中的同步由client来解决使用(N,R,W)模型,其中N表示node中机器的总数,R表示一个读请求需要的机器参与数,W表示一个写请求需要的机器参与数配置R+W>N暂时性故障处理:hintedhandoff永久性故障处理:基于MerkleTree的副本同步Cassandra概述混合型的非关系数据库以完全分布式的Dynamo为基础,集合了Bigtable基于列簇的数据模型优点分布式基于column的结构化高可扩展性缺点最终一致性不支持多个key之间的原子操作不支持分布式事务Dynamo数据模型Dynamo数据分布与副本与Dynamo类似,基于DHT(分布式哈希表)数据写入多个节点,可折衷CAP(一致性,可用性和网络分区)MongoDB概述为Web应用提供在线服务优点结合了NoSQL数据库的可扩展性和传统RDBMS的功能提供强一致性保证(fullyserializableACID)和高可用性面向集合存储,易存储对象类型的数据提供传统的数据库功能缺点在32位模式运行时支持的最大文件尺寸为2GBMongoDB数据模型面向集合(collection-oriented)数据被分组存储在数据集中,被称为一个集合(collection),相当于RDMBS里的表(talbe)每个集合在数据库中都有唯一的标示,可以包含多个文档文档使用key-value形式存放模式自由(schema-free)对于存储在mongodb数据库中的文件,可以有不同结构MongoDB系统架构在交互的应用中使用paxos协议,保证多副本跨数据中心的同步包括一个clientlibrary和多个server本地使用bigtable存储CouchDB概述面向文档的数据库,无中心节点架构与mongoDB很类似相同点
数据存储格式都是是json,使用javascript进行操作,支持map/reduce不同点CouchDB是一个MVCC系统,mongoDB是一个update-in-place系统MongoDB能够通过sharding实现水平扩展MongoDB支持动态查询,CouchDB必须为每一个查询模式建立相应viewCouchDB是RESTFul的数据库,操作完全走HTTP协议,mongoDB是自己的二进制协议Redis概述RemoteDictionaryServer本质上是一个key-value类型的内存数据库,很像memcached,定期通过异步操作将内存数据持久化优点提供多种语言的AP除了常规的数值或字符串,Redis的键值还可以是以下形式Lists(列表),Sets(集合),Sortedsets(有序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高年资护士个人总结与工作计划2篇
- 智慧灯杆智能异常行为预警系统施工方案及技术措施
- 水闸底板及闸墩止水(紫铜片、橡胶止水)安装施工组织设计方案
- 智慧灯杆二氧化硫监测施工方案及技术措施
- 2025-2026学年教学设计品德课
- 学校军训学员矛盾纠纷调解手册
- 2.2 直接证明与间接证明教学设计高中数学人教A版选修2-2-人教A版2007
- 《日本商务礼仪文化》 课件 第3课 鞠躬礼仪
- 妇女联合会巾帼维权志愿服务工作手册(标准版)
- 2025-2026学年汉语教学设计
- 2026年人教版八年级下册生物期末考试卷及答案
- (新教材)2026年北师大版一年级上册数学 0.1 可爱的校园 课件
- GD2016《2016典管》火力发电厂汽水管道零件及部件典型设计(取替GD2000)-101-200
- 2025年医药代表行业反垄断合规考核试卷
- 雨课堂学堂云在线《图案审美与创作》单元测试考核答案
- 培训学校竞业合同范本
- 小学副高职称考试题库(附答案)
- 大模型+工业故障预测分析报告
- 银行风险客户授信管理操作手册
- DB37∕T 4795-2024 应急处置机动指挥部保障技术规范
- DB15∕T 1428-2024 大型并网光伏发电站运行维护规程
评论
0/150
提交评论