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

网站域名改了以后新域名301宿迁房产网58同城网

网站域名改了以后新域名301,宿迁房产网58同城网,建设银行福州分行招聘网站,安卓手机app开发工具Hadoop是一个开源的分布式离线数据处理框架#xff0c;底层是用Java语言编写的#xff0c;包含了HDFS、MapReduce、Yarn三大部分。 组件配置文件启动进程备注Hadoop HDFS需修改需启动 NameNode(NN)作为主节点 DataNode(DN)作为从节点 SecondaryNameNode(SNN)主节点辅助分…Hadoop是一个开源的分布式离线数据处理框架底层是用Java语言编写的包含了HDFS、MapReduce、Yarn三大部分。 组件配置文件启动进程备注Hadoop HDFS需修改需启动 NameNode(NN)作为主节点 DataNode(DN)作为从节点 SecondaryNameNode(SNN)主节点辅助分布式文件系统Hadoop YARN需修改需启动 ResourceManager(RM)作为集群资源管理者NodeManager(NM)作为单机资源管理者ProxyServer代理服务器提供安全性JobHistoryServer历史服务器记录历史信息和日志分布式资源调度Hadoop MapReduce需修改无需启动任何进程MapReduce程序运行在YARN容器内分布式数据计算 Hadoop集群 HDFS集群 YARN集群 图中是三台服务器每个服务器上运行相应的JAVA进程 HDFS集群对应的web UI界面http://namenode_host:9870(namenode_host是namenode运行所在服务器的ip地址) YARN集群对应的web UI界面http://resourcemanager_host:8088(resourcemanager_host是resourcemanager运行所在服务器的ip地址) 一、HDFS 1.1 HDFS简介 HDFS的全称为Hadoop Distributed File System是用来解决大数据存储问题的分布式说明其是横跨多台服务器上的存储系统HDFS使用多台服务器存储文件提供统一的访问接口使用户像访问一个普通文件系统一样使用分布式文件系统HDFS集群搭建完成后有个抽象统一的目录树可以向其中放入文件底层实际是分块存储物理上真的拆分成多个文件默认128M拆分成一块在HDFS集群的多个服务器上具体位置是在hadoop的配置文件中所指定的 1.2 HDFS shell命令行 命令行界面command-line interface缩写cli指用户通过指令进行交互Hadoop操作文件系统shell命令行语法hadoop fs [generic options]大部分命令与linux相同 hadoop fs -ls file:/// # 操作本地文件系统 hadoop fs -ls hdfs://node1:8020/ # 操作HDFS文件系统node1:8020是NameNode运行所在的机器和端口号 hadoop fs -ls / #直接根目录没有指定则默认加载读取环境变量中fs.defaultFS的值作为要读取的文件系统上传文件到HDFS指定目录下 hadoop fs -put [-f] [-p] localsrc dst # 将本地文件传到HDFS文件系统中 # -f 覆盖目标文件 # -p 保留访问和修改时间所有权和权限 # localsrc本地文件系统中的文件客户端所在机器dstHDFS文件系统的目录下载HDFS文件 hadoop fs -get [-f] [-p] src localdst # 将本地文件传到HDFS文件系统中 # -f 覆盖目标文件 # -p 保留访问和修改时间所有权和权限 # srcHDFS文件系统中的文件localdst本地文件系统的目录追加数据到HDFS文件中 hadoop fs -appendToFile localsrc...dst # localsrc本地文件系统中的文件dstHDFS文件系统的文件没有文件则自动创建 # 该命令可以用于小文件合并1.3 HDFS架构 HDFS包含3个进程NameNode、DataNode、SecondaryNameNode 都是Java进程可以在服务器上运行jps查看正在执行的java进程 HDFS是主从模式Master - Slaves基础架构如下 NameNode 维护和管理文件系统元数据包括HDFS目录树结构文件和块的存储位置、大小、访问权限等信息。NameNode是访问HDFS的唯一入口DataNode 负责具体的数据块存储SecondNameNode 是NameNode的辅助节点但不能替代NameNode。主要是帮助NameNode进行元数据文件的合并。 NameNode不持久化存储每个文件中各个块所在的DataNode的位置信息这些信息在系统启动时从DataNode重建NameNode是Hadoop集群中的单点故障NameNode所在机器通常配置大内存RAM因为元数据都存在内存中定时进行持久化存到磁盘中。DataNode所在机器通常配置大硬盘空间因为数据存在DataNode中 HDFS集群部署举例 node1、node2、node3表示三台服务器形成一个集群 node1服务器性能比较高因此在node1上运行三个进程NameNode、DataNode、SecondaryNameNode 在node2及node3上只运行DataNode进程 1.4 HDFS写数据流程 HDFS客户端创建对象实例DistributeFileSystemJava类的对象该对象中封装了与HDFS文件系统操作的相关方法。调用DistributeFileSystem对象的create()方法通过RPC请求NameNode创建文件NameNode执行各种检查判断目标文件是否存在客户端是否有权限等。检查通过后返回FSDataOutputStream输出流对象给客户端用于写数据。客户端用FSDataOutputStream开始写数据客户端写入数据时将数据分成一个个数据包packet 默认64k内部组件DataStreamer请求NameNode挑选出适合存储数据副本的一组DataNode地址默认是3副本存储即3个DataNode。DataStreamer将数据包流式传输每一个packet 64k传输一次到pipeline的第一个DataNode第一个DataNode存储数据后传给第二个DataNode第二个DataNode存储数据后传给第三个DataNode。传输的反方向上会通过ACK机制校验数据包传输是否成功客户端完成数据写入后在FSDataOutputStream输出流上调用close()方法关闭。DistributeFileSystem告诉NameNode文件写入完成。 二、Yarn 2.1 Yarn简介 Yarn是一个通用资源管理系统和调度平台可为上层应用提供统一的资源管理和调度。 通用 不仅支持MapReduce程序理论上支持各种计算程序YARN只负责分配资源不关心用资源干什么。 资源管理系统 集群的硬件资源和程序运行相关比如内存、cpu等 调度平台 多个程序同时申请计算资源如何分配调度的规则 2.2 Yarn架构 Yarn与HDFS一样也是主从模式包含以下4个进程 ResourceManager管理整个群集的资源负责协调调度各个程序所需的资源。申请资源必须找RMNodeManager管理单个服务器的资源负责调度单个服务器上的资源提供给应用程序使用。 NodeManager通过创建Container容器来分配服务器上的资源。 应用程序运行在NodeManager所创建的容器中。 一个服务器上可以创建多个Container容器各Container容器之间相互独立实现了一个服务器上跑多个程序。 Container容器是具体运行 Task如 MapTask、ReduceTask的基本单位。 ProxyServer代理服务器 ProxyServer默认继承在ResourceManager中可以通过配置分离出来单独启动可以提高YARN在开放网络中的安全性。JobHistoryServer历史服务器 记录历史程序运行信息和日志开放web ui提供用户通过网页访问日志。 YARN架构图 ApplicationMaster(App Mstr) 应用程序内的“老大”负责程序内部各阶段的资源申请管理整个应用。当YARN上没有程序运行则没有这个组件 一个应用程序对应一个ApplicationMaster。 ApplicationMaster 运行在 Container 中运行应用的各个任务比如 MapTask、ReduceTask。 YARN 中运行的每个应用程序都有一个自己独立的 ApplicationMaster。以MapReduce为例其中的MRAppMaster就是对应的具体实现管理整个MapReduce程序 YARN集群部署举例 node1、node2、node3表示三台服务器形成一个集群 node1性能高因此在node1上运行四个进程ResourceManager、NodeManager、ProxyServer、JobHistoryServer 在node2及node3上只运行NodeManager进程 三、MapReduce MapReduce程序在运行时有三类进程 MRAppMaster负责整个MR程序的过程调度及状态协调MapTask 负责map阶段的整个数据处理流程ReduceTask 负责reduce阶段的整个数据处理流程 在一个MR程序中MRAppMaster只有一个MapTask和ReduceTask可以有一个也可以有多个在一个MR程序中只能包含一个Map阶段和一个Reduce阶段或者只有Map阶段在整个MR程序中数据都是以kv键值对的形式流转的 MapReduce整体执行流程图 左边是maptask右边是reducetask红框里是shuffle过程shuffle包含了map和reduce 2.1 map阶段执行过程 第一阶段 把所要处理的文件进行逻辑切片默认是每128M一个切片每一个切片由一个MapTask处理。第二阶段 按行读取切片中的数据返回key,value对key对应行数value是本行的文本内容第三阶段 调用Mapper类中的map方法处理数据每读取解析出来一个key,value调用一次map方法第四阶段默认不分区 对map输出的key,value对进行分区partition。默认不分区因为只有一个reducetask分区的数量就是reducetask运行的数量。第五阶段 Map输出数据写入内存缓冲区达到比例溢出到磁盘上。溢出spill的时候根据key按照字典序a~z进行排序sort第六阶段 对所有溢出文件进行最终的merge合并形成一个文件即一个maptask只输出一个文件 2.2 reduce阶段执行过程 第一阶段 ReduceTask会主动从MapTask复制拉取属于需要自己处理的数据第二阶段 把拉取来的数据全部进行合并merge即把分散的数据合并成一个大的数据再对合并后的数据进行排序第三阶段 对排序后的key,value调用reduce方法key相同key,value调用一次reduce方法。最后把输出的键值对写入到HDFS中 2.3 shuffle机制 shuffle指的是将map端的无规则输出变成具有一定规则的数据便于reduce端接收处理。一般把从Map产生输出开始到Reduce取得数据作为输入之前的过程称为ShuffleShuffle过程是横跨map和reduce两个阶段的分别称为Map端的Shuffle和Reduce端的ShuffleShuffle中频繁涉及到数据在内存、磁盘之间的多次往复是导致mapreduce计算慢的原因
http://wiki.neutronadmin.com/news/21651/

相关文章:

  • 可以做动画的网站都有哪些内容网站建设的销售术语
  • 西安网站制作机构大的网站建设公司好
  • 苏州网站优化排名推广让网站快速收录
  • 网站的安全怎么做网站模板建站教程视频
  • 网站突然没收录了中石化两学一做网站
  • 关于网站建设费用的报告免费做调查问卷的网站
  • 公司的网站建设服务费html5在线代码编辑器
  • 门户网站集群建设方案发布编程任务平台
  • 营销推广型网站价格河南网站建设的详细策划
  • 事业单位网站建设费科目织梦医疗网站源码
  • 英文模板网站官方正版清理优化工具
  • ps临摹图片做网站的图片犯法吗高端购物网站建设
  • 做网站需要的软件17一起做网店普宁
  • 便捷的网站建设修改wordpress登录地址
  • 绵阳微信网站怎么自己做网站表白
  • 高端网站建设哪些好北京前端哪个培训机构好
  • 网站开发 群wordpress伪静态301
  • 免费手机个人网站个人网站设计怎么做
  • 成都市成华区建设局网站百度seo怎么样优化
  • node做网站后台网站建设怎么宣传
  • 有哪些可以做图的网站啊软件工程师面试常见问题
  • 大连建设执业资格注册中心网站手表 网站策划
  • 网站服务公司案例网站建设企业熊掌号
  • 网站建设与管理怎么样大数据分析软件
  • 昆明市住房和城乡建设局门户网站乐清网站优化推广
  • 绵阳网站设计制作商场设计分析
  • 奥运会网站制作呼叫中心十大外包公司
  • 汕尾网站网站建设网站建设陆金手指科捷11
  • 网站主题颜色网页设计板式网站
  • 浙江正规网站建设配件网站的规划方案