从Hadoop框架与MapReduce模式中谈海量数据处理(含淘宝技术架构)

  • 时间:
  • 浏览:10
  • 来源:uu快3网站_uu快3充值_玩法

    2、             Hadoop MapReduce是另四个使用简易的软件框架,基于它写出来的程序有益于运行在由上千个商用机器组成的大型集群上,并以一种可靠容错的最好的办法并行处置上TB级别的数据集。

意味着着以上的缺乏,另一本人(查礼博士)介绍了一种将分布式数据处置系统中以记录为单位的存储特征变为以列为单位的存储特征,进而减少磁盘访问数量,提高查询处置性能。曾经,意味着着相同属性值具有相同数据类型和相近的数据特征,以属性值为单位进行压缩存储的压缩比更高,能节省更多的存储空间。如下图所示(行列存储的比较图):

采用行存储的最好的办法(SequenceFile)来存储和读取数据。时延低:当要读取数据表某一列数据时有益于先取出所有数据因此再提取出某一列的数据,时延很低。同去,它还占用较多的磁盘空间。

                                              图2-1 淘宝海量数据产品技术架构

基于云计算的海量数据存储模型,侯建等。

    由上图,另一本人歌词 歌词 都 前会 看过:

    在你这种 层-查询层中,淘宝主后来基于用后面 层隔离前后端的理念而考虑。Glider你这种 后面 层负责各个异构表之间的数据JOIN和UNION等计算,因此负责隔离前端产品和后端存储,提供统一的数据查询服务。

    尽管我对你这种 Hadoop与MapReduce知之甚浅,但我还是想记录被委托人的学习过程,说不定,关于你这种 东西的学习能督促我最终写成和“经典算法研究系列”一般的一系列文章。

 

基于hadoop的海量日志数据处置,王小森

淘宝数据魔方技术架构解析,朋春。

We want to count all the books in the library. You count up shelf #1, I count up shelf #2. That's map. The more people we get, the faster it goes. Now we get together and add our individual counts. That's reduce。

    而在数据魔方里,淘宝采用了另四个更为简单粗暴的最好的办法,意味着着另四个查询返回的数据为空(不管是数据不指在,还是系统故障),另一本人歌词 歌词 都 仍然把你这种 空结果进行缓存,但它的过期时间会很短,最长不超过五分钟。

 文章转载自: http://blog.csdn.net/v_july_v/article/details/670407

    好的,如上图所示,另一本人歌词 歌词 都 前会 看过,淘宝的海量数据产品技术架构,分为以下四个层次,从上至下来看,它们分别是:数据源,计算层,存储层,查询层和产品层。另一本人歌词 歌词 都 来一一了解这五层:

    除了起到隔离前后端以及异构“表”之间的数据整合的作用之外,glider的另外另四个不容忽视的作用便是缓存管理。另一本人歌词 歌词 都 有因此 须了解,在特定的时间段内,另一本人歌词 歌词 都 认为数据产品中的数据是只读的,这是利用缓存来提高性能的理论基础。

    Ok,光说不上图,没用。如下图所示,mapreduce模式的主要思想是将自动分割要执行的问提(例如程序)拆解成map(映射)和reduce(化简)的最好的办法,流程图如下图1所示:

    Ok,接下来,本文的第二部分,咱们以淘宝的数据魔方技术架构为依托,通过介绍淘宝的海量数据产品技术架构,来进一步学习和了解海量数据处置的经验。

    借助Hadoop 框架及云计算核心技术MapReduce 来实现数据的计算和存储,因此将HDFS 分布式文件系统和HBase 分布式数据库很好的融入到云计算框架中,从而实现云计算的分布式、并行计算和存储,因此得以实现很好的处置大规模数据的能力。

    由此,最近凡是空闲时,便在看“Hadoop”,“MapReduce”“海量数据处置”这方面的论文。但在看论文的过程中,总我真是哪几种论文都有浅尝辄止,常常看的很不过瘾,突然 另四个东西刚要讲到紧要处,它便开始英语 了,我想 好生“愤懑”。

     “热节点”,选折 每分钟40000转的SAS硬盘,按照另四个节点两台机器来计算,单位数据的存储成本约为4.5W/TB。相对应地,“冷数据”另一本人歌词 歌词 都 选折 了每分钟74000转的SATA硬盘,单碟前会 够存放更多的数据,存储成本约为1.6W/TB。

    ok,我能 再简单看看下副图,整幅图是有关hadoop的作业调优参数及原理,图的左边是MapTask运行示意图,右边是ReduceTask运行示意图:

    另一本人歌词 歌词 都 知道,关系型数据库在另一本人歌词 歌词 都 现在的工业生产涵盖着广泛的引用,它包括Oracle,MySQL、DB2、Sybase和SQL Server等等。

MyFOX

    意味着着被委托人是初次接触你这种 个东西,文章有任何问提,欢迎不吝指正。Ok,咱们开始英语 吧。

    1、             Hadoop HDFS是Google GFS存储系统的开源实现,主要应用场景是作为并行计算环境(MapReduce)的基础组件,同去也是BigTable(如HBase、HyperTable)的底层分布式文件系统。HDFS采用master/slave架构。另四个HDFS集群是有由另四个Namenode和一定数目的Datanode组成。Namenode是另四个中心服务器,负责管理文件系统的namespace和客户端对文件的访问。Datanode在集群中一般是另四个节点另四个,负责管理节点上它们附带的存储。在内控 ,另四个文件我我真是分成另四个或多个block,哪几种block存储在Datanode集合里。如下图所示(HDFS体系特征图):

glide的技术架构

    HBase是另四个分布式的、面向列的开源数据库,它不同于一般的关系数据库,是另四个适合于非特征化数据存储的数据库。曾经不同的是HBase基于列的而都有基于行的模式。HBase使用和 BigTable非常相同的数据模型。用户存储数据行在另四个表里。另四个数据行拥有另四个可选折 的键和任意数量的列,另四个或多个列组成另四个ColumnFamily,另四个Fmaily下的列指在另四个HFile中,易于缓存数据。表是疏松的存储的,因此用户前会 给行定义各种不同的列。在HBase中数据按主键排序,同去表按主键划分为多个HRegion,如下图所示(HBase数据表特征图):

感觉你是把另四个东西混在同去了。不过你这种 个都有挺有价值的东西,意味着着说数据魔方的架构比Hadoop意味着着更重要因此 ,基本上大的互联网公司都有选折 那末 做。Null对象的缓存保留五分钟不想说会有好的结果吧,意味着着Null对象都有有点硬大,数据的更新和插入很多也前会 考虑实时维护。

    在此曾经,有因此 有益于说明的是:本文下面的内容大都有参考自朋春先生的这篇文章:淘宝数据魔方技术架构解析所写,我被委托人所作的工作是对这篇文章的一种解读与关键技术和内容的抽取,以为读者更好的理解淘宝的海量数据产品技术架构。与此同去,还能展示我被委托人读此篇的思路与感悟,顺带学习,何乐而不为呢?。

本文参考:

    另一本人歌词 歌词 都 意味着着知道,Hadoop是Google的MapReduce另四个Java实现。MapReduce是一种复杂性的分布式编程模式,让程序自动分布到另四个由普通机器组成的超大集群上并发执行。Hadoop主要由HDFS、MapReduce和HBase等组成。具体的hadoop的组成如下图:

      2、缓存失效时的雪崩效应尽管对底层系统的冲击非常可怕。但遗憾的是,你这种 问提目前并那末 很完美的处置方案。大多数系统设计者考虑用加锁意味着着队列的最好的办法保证缓存的单程序(程序)写,从而处置失效时一定量的并发请求落到底层存储系统上。

数据魔方里的缓存穿透,架构,空数据缓存哪几种和Hadoop因此 关系都么有,意味着着是想讲另四个Hadoop的具体应用一句话,数据魔方这部分我我真是没讲清楚的。

    如上图所示,其中map阶段,当map task开始英语 运算,并产生后面 数据后不想说直接而简单的写入磁盘,它首先利用内存buffer来对意味着着产生的buffer进行缓存,并在内存buffer中进行因此 预排序来优化整个map的性能。而上图右边的reduce阶段则经历了另四个阶段,分别Copy->Sort->reduce。另一本人歌词 歌词 都 能明显的看出,其中的Sort是采用的归并排序,即merge sort。

4、             HBase

存储最好的办法是将特征化的数据文件映射为一张数据库表。提供类SQL语言,实现全版的SQL查询功能。前会 将SQL一句话转换为MapReduce任务运行,十分适合数据仓库的统计分析。

                                                            图2-2 MyFOX的数据查询过程

在上文图2-6中另一本人歌词 歌词 都 看过,glider中指在两层缓存,分别是基于各个异构“表”(datasource)的二级缓存和整合曾经基于独立请求的一级缓存。除此之外,各个异构“表”内控 意味着着还指在被委托人的缓存机制。

         想拿下此文,读者有益于不难 明确以下几点,以作为阅读后续内容的基础知识储备:

    另四个MapReduce作业(job)通常会把输入的数据集切分为若干独立的数据块,由 Map任务(task)以全版并行的最好的办法处置它们。框架会对Map的输出先进行排序,因此把结果输入给Reduce任务。通常作业的输入和输出都有被存储在文件系统中。整个框架负责任务的调度和监控,以及重新执行意味着着失败的任务。如下图所示(Hadoop MapReduce处置流程图):

    在数据魔方中,淘宝设计的缓存过期机制理论前会 够将各个客户端的数据失效时间均匀地分布在时间轴上,一定程度前会 够处置缓存同去失效带来的雪崩效应。

Hadoop一种很笨重,我后来知道在数据魔方里是与与否在扮演我我真是时数据处置的角色?还是后来在做线下的数据分析的?

    接下来,咱们重点来了解第三层-存储层中的MyFox与Prom,然都有稍带分析下glide的技术架构,最后,再了解下缓存。文章即组阁 开始英语 。

                                               图2-6 glider的技术架构

    前面说了,hadoop是另四个框架,另四个哪几种样的框架呢?Hadoop 是另四个实现了MapReduce 计算模型的开源分布式并行编程框架,程序员前会 借助Hadoop 编写程序,将所编写的程序于计算机机群上,从而实现对海量数据的处置。

基于hadoop的大规模数据处置系统,王丽兵。

 

    Ok,行文至此,看似洋洋洒洒近千里,但若给读者造成阅读上的负担,则都有我本意。接下来的内容,我不想再引用诸多复杂性的专业术语,以给读者心里上造成不良影响。

    MapReduce致力于处置大规模数据处置的问提,因此在设计之初就考虑了数据的局部性原理,利用局部性原理将整个问提分而治之。MapReduce集群由普通PC机构成,为无共享式架构。在处置曾经,将数据集分布至各个节点。处置时,每个节点就近读取本地存储的数据处置(map),将处置后的数据进行合并(combine)、排序(shuffle and sort)后再整理(至reduce节点),处置了一定量数据的传输,提高了处置时延。无共享式架构的曾经好处是配合克隆好友(replication)策略,集群前会 具有良好的容错性,一部分节点的down机对集群的正常工作不想造成影响。

    Ok,闲话少说。本文从最基本的mapreduce模式,Hadoop框架开始英语 谈起,因此由本人的架构引申开来,谈到海量数据处置,最后谈谈淘宝的海量数据产品技术架构,以为了兼备浅出与深入之效,最终,希望得到读者的喜欢与支持。谢谢。

    淘宝选折 了MySQL的MyISAM引擎作为底层的数据存储引擎。且为了应对海量数据,另一本人歌词 歌词 都 设计了分布式MySQL集群的查询代理层-MyFOX。

    在数据被分割后通过Map 函数的程序将数据映射成不同的区块,分配给计算机机群处置达到分布式运算的效果,在通过Reduce 函数的程序将结果汇整,从而输出开发者有益于的结果。

如下图所示,是MySQL的数据查询过程:

    相信,看过本博客内其它文章的细心读者,定会发现,图2-1最初见于本博客内的此篇文章:从几幅架构图中偷得半点海量数据处置经验之上,同去,此图2-1最初发表于《程序员》8月刊,作者:朋春。

主要特点

                                                          图2-5 Prom查询过程

    了解了哪几种是mapreduce,接下来,咱们前会 来了解实现了mapreduce模式的开源框架—hadoop。

    几周前,当我最初听到,以致后来 初次接触Hadoop与MapReduce你这种 个东西,我便稍显兴奋,我真是它们很是神秘,而神秘的东西常能勾起我的兴趣,在看过介绍它们的文章或论文曾经,我真是Hadoop是一项富有趣味和挑战性的技术,且它还牵扯到了另四个我更加感兴趣一句话题:海量数据处置。

    MapReduce 借鉴了函数式程序设计语言的设计思想,其软件实现是指定另四个Map 函数,把键值对(key/value)映射成新的键值对(key/value),形成一系列后面 结果形式的key/value 对,因此把它们传给Reduce(规约)函数,把具有相同后面 形式key 的value 合并在同去。Map 和Reduce 函数具有一定的关联性。函数描述如表1 所示:

    在MyFOX的每另四个节点中,存放着热节点和冷节点一种节点数据。顾名思义,热节点存放着最新的,被访问频率较高的数据;冷节点,存放着相对而来比较旧的,访问频率比较低的数据。而为了存储这种种节点数据,出于硬件条件和存储成本的考虑,你当然会考虑选折 一种不同的硬盘,来存储这种种访问频率不同的节点数据。如下图所示:

    因此 ,你现在,知道了哪几种是mapreduce,哪几种是hadoop,以及这两者之间最简单的联系,而本文的主旨即是,一句话概括:在hadoop的框架上采取mapreduce的模式处置海量数据。下面,咱们前会 依次深入学习和了解mapreduce和hadoop你这种 个东西了。

缺乏之处:

缓存穿透是指查询另四个一定不指在的数据,意味着着缓存是不命中时被动写的,因此出于容错考虑,意味着着从存储层查有益于数据则不写入缓存,这将意味着着你这种 不指在的数据每次请求都有到存储层去查询,抛妻弃子了缓存的意义。至于怎样有效地处置缓存穿透问提,最常见的则是采用布隆过滤器(你这种 东西,在我的此篇文章涵盖介绍:),将所有意味着着指在的数据哈希到另四个足够大的bitmap中,另四个一定不指在的数据会被你这种 bitmap拦截掉,从而处置了对底层存储系统的查询压力。

Hadoop作业调优参数整理及原理,guili。

Prom

结语:写文章是一种学习的过程。尊重他人劳动成果,转载请注明出处。谢谢。July、2011/8/20。完。

    如下图2-1所示,即是淘宝的海量数据产品技术架构,咱们下面要针对你这种 架构来一一剖析与解读。

                                                           图2-7 缓存控制体系

    此外,Hadoop 还提供另四个分布式文件系统(HDFS)及分布式数据库(HBase)用来将数据存储或部署到各个计算节点上。因此 ,我能 大致认为:Hadoop=HDFS(文件系统,数据存储技术相关)+HBase(数据库)+MapReduce(数据处置)。Hadoop 框架如图2 所示:

缓存

    3、             Hive是基于Hadoop的另四个数据仓库工具,处置能力强因此成本低廉。

    前面说了,mapreduce是一种模式,一种哪几种模式呢?一种云计算的核心计算模式,一种分布式运算技术,也是复杂性的分布式编程模式,它主要用于处置问提的程序开发模型,也是开发人员拆解问提的最好的办法。

    图2-7向另一本人歌词 歌词 都 展示了数据魔方在缓存控制方面的设计思路。用户的请求中一定是带了缓存控制的“命令”的,这包括URL中的query string,和HTTP头中的“If-None-Match”信息。因此,你这种 缓存控制“命令”都有经过层层传递,最终传递到底层存储的异构“表”模块。

                                                           图2-3 MyFOX节点特征

    

    Ok,不过,与本博客内曾经的那篇文章(几幅架构图中偷得半点海量数据处置经验)不同,本文接下来,要全版阐述你这种 架构。我也做了不少准备工作(如把这图2-1打印了下来,突然 琢磨):

    缓存系统往往有另四个问提有益于面对和考虑:缓存穿透与失效时的雪崩效应。

从hadoop框架与MapReduce模式中谈海量数据处置

读者点评@xdylxdyl:

出于文章篇幅的考虑,本文接下来不再很多阐述你这种 Prom了。如下面两幅图所示,另一本人歌词 歌词 都 分别表示的是Prom的存储特征以及Prom查询过程:

                                              图2-4 Prom的存储特征

    我再给出一副图,与否对上文所说的hadoop框架及其组成部分做个总结,如下图所示,便是hadoop的内控 特征,另一本人歌词 歌词 都 前会 看过,海量的数据交给hadoop处置后,在hadoop的内控 中,正如上文所述:hadoop提供另四个分布式文件系统(HDFS)及分布式数据库(Hbase)用来存储或部署到各个计算点上,最终在内控 采取mapreduce的模式对其数据进行处置,因此输出处置结果:

    在后面 的本文的第一部分中,另一本人歌词 歌词 都 意味着着对mapreduce模式及hadoop框架有了另四个深入而全面的了解。不过,意味着着另四个东西,意味着着另四个概念不放满去实际应用中去,那末 你对你这种 理念永远后来在等待在理论之内,无法向实践迈进。

猜你喜欢

三星w2018组装机多少钱!

可选中两个 或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。提示:请各位消费者在收到这种于中奖或极低价格购机信息时谨慎对待,补救上当受骗。使用百度知

2020-03-22

王者荣耀拒绝了一次人脸识别,时候不弹出,每天只能玩一个小时,已成年,卸载重下已经试过了

使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。追问不怎么推荐不采纳的全是蔡徐坤。你对你这人 回答的评价是?追答收起更多回答(6)你对你这人 回答的

2020-03-22

网宿科技孙靖泽:CDN规模门槛为5T,整合潮年底就会出现

业内人士认为,CDN行业是另另四个靠规模取胜的行业,原因分析分析手里的服务器和强度很多,能应对的峰值就越高,越来越 也就更有能力做更大的客户。这几年随着市场需求的不断扩大,以

2020-03-22

OPPO哪一款手机比较好

换一换下载百度知道APP,抢鲜体验展开完正扫描二维码下载其他人刚买了oppor15,用了有另一有一个月了,感觉手感比较好,因此 运行传输数率还能要能,外观也比较好看,拿起来

2020-03-21

阿里云数据库资深专家林伟:大规模计算平台研究与实战

【云栖大会】高可用、高并发、高性能架构实战经验昨夜难忘?今晚20点,容器、后面 件、负载均衡等实战交流继续!进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

2020-03-21