当前位置: 首页 > news >正文

宽创国际的展馆设计案例福州短视频seo推荐

宽创国际的展馆设计案例,福州短视频seo推荐,外贸网站建设公司服务,深圳网站建设全包MapReduce剖析图 如上图所示是MR的运行详细过程 首先mapTask读文件是通过InputFormat#xff08;内部是调RecordReader()–#xff1e;read()#xff09;来一次读一行#xff0c;返回K,V值。#xff08;默认是TextInputFormat#xff0c;还可以输入其他的类型如:音视频内部是调RecordReader()–read()来一次读一行返回K,V值。默认是TextInputFormat还可以输入其他的类型如:音视频图片等。。mapper(map(k,v))–context.write()即mapTask阶段。输出数据到OutputCollector收集器不会输出一组就传到下一步进行处理而是需要一个收集的过程减少IO将收集到的数据写到环形缓冲区–通过Spiller来将溢出的数据溢出到文件中去在这里会通过hashPartitioner执行分区、通过key.comPareTo来实现排序分为系统默认的快排和外部排序即实现了shuffle的核心机制分区和排序。将多个溢出文件进行Merge采用归并排序合并成一个大文件。将文件下载到ReduceTask的本地磁盘工作目录–将多个MapTask的输出结果再进行归并排序也可以说是ReduceTask去各个mapTask对应的分区去取对应的数据。Reducer(reducek,v))–context.write(k,v)– OutputFormat(RecordWriter.write(k,v))即reduceTask阶段。将数据写到part-r-00000这里 如上图所示图中用红色粗线描述的组件都是可以重写的。 mapreduce在编程的时候基本上一个固化的模式没有太多可灵活改变的地方除了以下几处 1、输入数据接口InputFormat — FileInputFormat(文件类型数据读取的通用抽象类) DBInputFormat 数据库数据读取的通用抽象类 默认使用的实现类是 TextInputFormat。 job.setInputFormatClass(TextInputFormat.class) TextInputFormat的功能逻辑是一次读一行文本然后将该行的起始偏移量作为key行内容作为value返回 2、逻辑处理接口 Mapper 完全需要用户自己去实现其中 map() setup() clean() 3、map输出的结果在shuffle阶段会被partition以及sort此处有两个接口可自定义 Partitioner 有默认实现 HashPartitioner逻辑是 根据key和numReduces来返回一个分区号 key.hashCode()Integer.MAXVALUE % numReduces 通常情况下用默认的这个HashPartitioner就可以如果业务上有特别的需求可以自定义Comparable 当我们用自定义的对象作为key来输出时就必须要实现WritableComparable接口override其中的compareTo()方法 4、reduce端的数据分组比较接口 Groupingcomparator reduceTask拿到输入数据一个partition的所有数据后首先需要对数据进行分组其分组的默认原则是key相同然后对每一组kv数据调用一次reduce()方法并且将这一组kv中的第一个kv的key作为参数传给reduce的key将这一组数据的value的迭代器传给reduce()的values参数 5、逻辑处理接口Reducer 完全需要用户自己去实现其中 reduce() setup() clean() 6、输出数据接口 OutputFormat — 有一系列子类 FileOutputformat DBoutputFormat ….. 默认实现类是TextOutputFormat功能逻辑是 将每一个KV对向目标文本文件中输出为一行 整个过程需要注意以下几点 环形缓存区数据从outputCollector中传入环形缓存区直到达到80%的缓存时缓存才会启用清理机制将已经溢出的数据溢出到文件中去通过spiller来将数据溢出到文件中去会溢出多次每次溢出都会对数据进行分区排序形成多个分区排序后的数据最终进行合并。combiner的作用对spiller阶段的溢出数据进行一个reduce处理直接让相同k的value值相加减少数据量以及传输过程中的开销大大提高效率。根据业务需求使用并不是每个业务都要用。可自定义一个Combiner类内部逻辑和Reduce类似shuffle:洗牌、发牌——核心机制数据分区排序缓存 具体来说就是将maptask输出的处理结果数据分发给reducetask并在分发的过程中对数据按key进行了分区和排序数据倾斜指的是任务在shuffle阶段时会进行一个分区操作默认的是hashcode取模如果有大部分数据被分到一个ReduceTask端进行处理一小部分任务被分到其他的ReduceTask端进行处理就会造成其他ReduceTask处理完成后仍有一个ReduceTask还在处理数据。最终造成整个工程延迟的情况。为了解决这个问题引入了Partition 总结 MapReduce中最核心的知识点就是MR运行的整体流程除此之外要达到博主菜鸟级别的水平你还需要了解以下几个知识点 1、MapReduce是什么用来干什么的无论学什么首先都得知道这一点。 2、MapReduce框架的设计思想。 3、MapReduce框架中的程序实体角色以及对应的作用maptask reducetask mrappmaster。 1和2详见https://blog.csdn.net/qq_16633405/article/details/78404018 4、MapReduce程序中maptask任务切片规划的机制。 详见https://blog.csdn.net/qq_16633405/article/details/79729172 5、Yarn在MapReduce中作用。 详见https://blog.csdn.net/qq_16633405/article/details/79734021 6、掌握MapReduce的编程套路通过不断的写MR案例领悟编写MR程序的核心思想即如何确定对应K-V值。 后续会将对应的MR的一些特殊套路案例上传到Git上 目前想到的就这么点后续有遗漏的话会接着补充。
http://wiki.neutronadmin.com/news/3596/

相关文章:

  • 统计网站怎么做大连黄页企业名录
  • 小程序网站建设wordpress主题插件下载
  • 庆云网站seo做排行的网站
  • 免费海报模板网站域名已有服务器也有怎么做网站
  • 网站开发语言p网站商城功能模块
  • 网站主页制作教程站长工具查询
  • 湖南省城乡住房建设厅网站小说盗版网站怎么做的
  • 上海公司网站建设价格广东网络建设公司
  • 广东企业网站建设报价信息流广告公司
  • 崇明建设小学网站wordpress上传安装
  • 网站开发所需要的语言为wordpress创建一个ftp
  • 网站风格确定做网站 对方传销
  • 企业网站建设实训体会新余专业的企业网站建设公司
  • 网站刷新新前台是什么意思百度在线
  • 微楼书网站建设最新域名解析网站
  • 个人博客网站制作搭建如何在阿里云主机安装wordpress
  • 好的响应式网站做ppt用的音效网站
  • 企业网站建设方案 完整版上海外贸公司注册
  • 最好的网站制作公司手机怎么创网站免费
  • 学校网站建设的意义wix建站是免费的吗
  • h5手机模板网站衡阳网页定制
  • 大型网站seo方案怎样更新网站文章
  • 网站建设中可能出现的问题作文网高中
  • 网站商城建设公司关键词优化排名技术
  • 网站字体怎么修改网站开发的人李海涛
  • 响应式网站建设外文文献哪些网站是做设计的
  • 招聘网站建设方案模板下载河北建设工程交易信息网
  • 素材网站php程序源码做网站接广告赚钱吗
  • 网站改版建设原则京津冀协同发展规划纲要全文
  • 沙田网站仿做改图宝在线制作印章