版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SQLorNoSQL?TheNoSQLMovementMeetupJune112009inSanFranciscoNoSQLnameproposedbyEricEvans2004BigTable(Google)2007Dynamo(Amazon)2008Cassandra(Facebook)Hadoop/HBase(Yahoo)ProjectVoldemort(LinkedIn)NoSQLConferencesRelationalDatabase/SQL19801981BernsteinandGoodmanMulti-versionConcurrencyControlDatabaseTimeline197019701990200020101969CODASYL-Networkdatabase-Schema-DDL/DML1970CoddRelationalModel1980GrayTransaction1995BernsteinetalCritiqueofANSISQLIsolationLevels1989SQL-891992SQL-921999SQL:1999ObjectRelational2003SQL:2003Analyticsextensions1979Oracle1974SEQUELRowColumnRelationalModelNormalizeddata“Atomic”Multi-columnKeyOperationsontables:select,project,joinRelationshiponkeyPrimaryKeyForeignKeyTable–n-tupleKeyDatabaseSummaryCostsFixedschemaNormalizationTransformdataonloadCostofscalingProblemswithlargeobjectsComplicatedsoftwareBenefitsMaturetechnologyPrecisequeryingStarSchema–historicdataTupleStore/NoSQLTupleStorageSystemsGoogleDatabaseSystemChubby–Lock/metadatamanagerGoogleFileSystem–DistributedfilesystemBigtable–TuplestorageonGFSMapReduce–DataprocessingontuplesOthertuplestoresVoldemort–AmazonDynamoCassandraHBaseHypertableTupleStoreModelOneTableOperateonMapSetof(Key,Value)StructuredKeyUnstructuredValueOperations:select,projectMapReduceTupleStoreKeyValueKeyColumnTimestampMapReduceDefinetwofunctionsMapInput:tupleOutput:listoftuplesReduceInput:key,listofvaluesOutput:listortupleSpecifyaclusterSpecifyinputandoutputtuplestoresFrameworkdoestherest{Map(k1,v1)}->{list(k2,v2)}{list(k2,v2)}->{(k2,list(v2))}{Reduce(k2,list(v2))}->{list(v3)
} ->{(k2,v3)}MapReduceExampleForeachwebpagecountthenumberofpagesthatreferencethatpage
InputtuplestoreisWWWMapFunction:foreachanchoronwebpage,emit(anchorURL,1)ReduceFunction:emit(anchorURL,sum(list)){Map(k1,v1)}->{list(k2,v2)}{list(k2,v2)}->{(k2,list(v2))}{Reduce(k2,list(v2))}->{(k2,v3)
}URLWebPageURLWebPageURLWebPageURLWebPage…Outputtuplestoreis
{(URL,count)}ExampleinSQLCREATETABLElinks( URLpageNOTNULL, URLref_pageNOTNULL, PRIMARYKEYpage,ref_page)SELECTref_page,count(DISTINCTpage)FROMlinksGROUPBYref_pageForeachwebpagecountthenumberofpagesthatreferencethatpage
TupleStoreSummarySemi-structureddataNoneedtonormalizedataSimpleimplementationsCheap,fast,scalableMapReduceProcessingSimpleprogramming(forgeeks)IssuesNoguidancefromschemaNomodelforhistoricdataHadoopwinsSortBenchmarkSynthesisSummarySQLStructureddataPreciseHistoricdataNeedstransformationScalabilityissuesNoSQLCheapScalableHandleslargedataSummarySQL优势:保持数据的一致性(事务处理)由于以标准化为前提,数据更新的开销很小(相同的字段基本上都只有一处)可以进行Join等复杂查询其中能够保持数据的一致性是关系型数据库的最大优势。不足:大量数据的写入处理为有数据更新的表做索引或表结构(schema)变更字段不固定时应用对简单查询需要快速返回结果的处理读写集中在一个数据库上让数据库不堪重负,大部分网站已使用主从复制技术实现读写分离数据库分割之后,如果一定要进行Join处理,就必须要在程序中进行关联,这是非常困难的EnterpriseModelMoneyContentAnalytics?NoSQLRelationalDBMe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理临床思维与护理趋势
- 护理实践中的警示教育
- 护理员老年人常见病护理
- 护理人才需求与医疗成本控制
- 2025年中国计量大学招聘笔试真题
- 2025年新疆和田玉石交易中心有限公司招聘笔试真题
- 双鸭山市宝清县招聘卫生工作人员考试真题2025
- 2026年福建省晋江一中教育集团紫帽中学教师应聘意向摸底考试备考试题及答案解析
- 2026中国医科大学附属生殖医院招聘(第一批)笔试参考题库及答案解析
- 2026东北师范大学传媒科学学院(新闻学院)春季学期专任教师招聘4人(吉林)考试备考题库及答案解析
- IATF16949体系推行计划(任务清晰版)
- DL∕T 2588-2023 火力发电厂桥式抓斗卸船机运行检修导则
- 《物联网技术及其在智能建造中的应用》(中文电子课件)
- JB-T 8236-2023 滚动轴承 双列和四列圆锥滚子轴承游隙及调整方法
- 第8课《建设法治中国》第1框《科学立法严格执法公正司法全民守法》-【中职专用】《职业道德与法治》同步课堂课件
- 短视频运营逻辑
- 禹州神火义隆煤矿瞬变电磁勘探设计
- 处方点评指南:抗肿瘤药物
- 人教版小学三年级数学下册《小数的初步认识》教学设计
- 海水的性质-密度课件2023-2024学年高中地理人教版(2019)必修一
- 急性胸痛的诊治流程
评论
0/150
提交评论