wordpress文章喜欢/成都搜索优化整站优化

wordpress文章喜欢,成都搜索优化整站优化,长沙做旅游网站公司,win10 网站建设软件有哪些目录 一、Hadoop 1、MapReduce 1.1、理解MapReduce思想 1.2、分布式计算概念 1.3、MapReduce介绍 1.4、MapReduce特点 1.5、MapReduce局限性 1.6、MapReduce实例进程 1.7、MapReduce阶段组成 1.8、MapReduce数据类型 1.9、MapReduce官方示例 2、YARN 一、Hadoop 1…

目录

一、Hadoop

1、MapReduce

1.1、理解MapReduce思想

1.2、分布式计算概念

1.3、MapReduce介绍

1.4、MapReduce特点

1.5、MapReduce局限性

1.6、MapReduce实例进程

1.7、MapReduce阶段组成

1.8、MapReduce数据类型

1.9、MapReduce官方示例

2、YARN


一、Hadoop

1、MapReduce

1.1、理解MapReduce思想

    MapReduce的思想核心是"先分再合,分而治之"。

    所谓"分而治之"就是把一个复杂的问题,按照一定的“分解”方法分为等价的规模较小的若干部分,然后逐个解决,分别找出各部分的结果,然后把各部分的结果组成整个问题的最终结果

    这种思想来源于日常生活与工作时的经验。即使是发布过论文实现分布式计算的谷歌也只是实现了这种思想,而不是自己原创。

    Map表示第一阶段,负责“拆分”:即把复杂的任务分解为若干个“简单的子任务”来并行处理。可以进行拆分的前提是这些小任务可以并行计算,彼此间几乎没有依赖关系。

    Reduce表示第二阶段,负责“合并”:即对map阶段的结果进行全局汇总。

    这两个阶段合起来正是MapReduce思想的体现。

    MapReduce处理的数据类型是<key,value>键值对

实例:全国人口普查、停车场一共停多少辆车。

1.2、分布式计算概念

    分布式计算是一种计算方法,和集中式计算是相对的。

    随着计算技术的发展,有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。

    分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高计算效率。

1.3、MapReduce介绍

    Hadoop MapReduce是一个分布式计算框架,用于轻松编写分布式应用程序,这些应用程序以可靠,容错的方式并行处理大型硬件集群(数千个节点)上的大量数据(多TB数据集)。

    MapReduce是一种面向海量数据处理的一种指导思想,也是一种用于对大规模数据进行分布式计算的编程模型。

1.4、MapReduce特点

易于编程

    MapReduce框架提供了用于二次开发的接口;简单地实现一些接口,就可以完成一个分布式程序。任务计算交给计算框架去处理,将分布式程序部署到hadoop集群上运行,集群节点可以扩展到成百上千个等。

良好的扩展性

    当计算机资源不能得到满足的时候,可以通过增加机器来扩展它的计算能力。基于MapReduce的分布式计算的特点可以随节点数目增长保持近似于线性的增长,这个特点是MapReduce处理海量数据的关键,通过将计算节点增至几百或者几千可以很容易地处理数百TB甚至PB级别的离线数据。

高容错性

    Hadoop集群是分布式搭建和部署的,任何单一机器节点宕机了,它可以把上面的计算任务转移到另一个节点上运行,不影响整个作业任务的完成,过程完全是由Hadoop内部完成的。

适合海量数据的离线处理

    可以处理GB、TB和PB级别的数据量

1.5、MapReduce局限性

    MapReduce虽然有很多的优势,也有相对的局限性,局限性不代表不能做,而是在有些场景下实现的效果比较差,并不适合用MapReduce来处理,主要表现在以下方面:

    1、实时计算性能差:MapReduce主要应用于离线作业,无法做到秒级或者亚秒级的数据响应。

    2、不能进行流式计算:流式计算特点是数据是源源不断的计算,并且数据是动态的;而MapReduce作为一个离线计算框架,主要是针对静态数据集的,数据是不能动态变化的。

1.6、MapReduce实例进程

    一个完整的MapReduce程序在分布式运行时有三类

    1、MRAppMaster:负责整个MR程序的过程调度及状态协调

    2、MapTask:负责map阶段的整个数据处理流程

    3、ReduceTask:负责reduce阶段的整个数据处理流程

1.7、MapReduce阶段组成

    一个MapReduce编程模型中只能包含一个Map阶段和一个Reduce阶段,或者只有Map阶段。

    不能有诸如多个map阶段、多个reduce阶段的情景出现。

    如果用户的业务逻辑非常复杂,那就只能多个MapReduce程序串行运行。

1.8、MapReduce数据类型

    注意:整个MapReduce程序中,数据都是以KV键值对的形式流转的。

    在实际编程解决各种业务问题中,需要考虑每个阶段的输入输出KV分别是什么。

    MapReduce内置了很多默认属性,比如排序、分组等,都和数据的K有关,所以说KV的类型数据确定及其重要的。

1.9、MapReduce官方示例

    一个最终完整版本的MR程序需要用户编写的代码和Hadoop自己实现的代码整合在一起才可以。

    其中用户负责map、reduce两个阶段的业务问题,Hadoop负责底层所有的技术问题。

    由于MapReduce计算引擎天生的弊端(慢),当下企业中直接使用率已经日薄西山了,所以在企业中工作很少涉及到MapReduce直接编程,但是某些软件的背后还依赖MapReduce引擎。

    可以通过官方提供的示例来感受MapReduce及其内部执行流程,因为后续的新的计算引擎比如Spark,当中就有MapReduce深深的影子存在。

示例说明--圆周率PI评估

    示例程序路径:/export/server/hadoop-3.3.6/share/hadoop/mapreduce/

    示例程序:hadoop-mapreduce-examples-3.3.6.jar

    MapReduce程序提交命令:[hadoop jar | yarn jar]  hadoop-mapreduce-examples-3.3.6.jar args...

    提交到哪里去?提交到YARN集群上分布式执行。

评估圆周率PI的值

    Monte Carlo方法

    假设正方形边长为1,圆半径也为1,那么1/4圆的面积为:\frac{1}{4}\pi r^{2}=\frac{\pi }{4}

    在正方形内随机撒点,分布于1/4圆内的数量假设为a,分布于圆外的数量为b,N则是所产生的总数:N=a+b

    那么数量a与N的比值应与1/4圆面积及正方形面积成正比,于是:\frac{\pi }{4}:1=a:N \Rightarrow \Rightarrow \pi =\frac{4a}{N}

    运行MapReduce程序评估一下圆周率的值,执行中可以去YARN页面上观察程序的执行的情况。

    第一个参数:pi表示MapReduce程序执行圆周率计算任务

    第二个参数:用于指定map阶段运行的任务task次数,并发度,这里是2。

    第三个参数:用于指定每个map任务取样的个数,这里是4。

hadoop jar hadoop-mapreduce-examples-3.3.6.jar pi 2 4

示例:执行Hadoop官方自带的MapReduce案例,评估圆周率π的值

[root@node1 ~]# cd /export/server/hadoop-3.3.6/share/hadoop/mapreduce/
[root@node1 mapreduce]# ls
hadoop-mapreduce-client-app-3.3.6.jar         hadoop-mapreduce-client-jobclient-3.3.6.jar        hadoop-mapreduce-examples-3.3.6.jar
hadoop-mapreduce-client-common-3.3.6.jar      hadoop-mapreduce-client-jobclient-3.3.6-tests.jar  jdiff
hadoop-mapreduce-client-core-3.3.6.jar        hadoop-mapreduce-client-nativetask-3.3.6.jar       lib-examples
hadoop-mapreduce-client-hs-3.3.6.jar          hadoop-mapreduce-client-shuffle-3.3.6.jar          sources
hadoop-mapreduce-client-hs-plugins-3.3.6.jar  hadoop-mapreduce-client-uploader-3.3.6.jar
[root@node1 mapreduce]# hadoop jar hadoop-mapreduce-examples-3.3.6.jar pi 2 4
Number of Maps  = 2
Samples per Map = 4
Wrote input for Map #0
Wrote input for Map #1
Starting Job
2024-01-03 00:05:35,990 INFO client.DefaultNoHARMFailoverProxyProvider: Connecting to ResourceManager at node1/192.168.18.81:8032
2024-01-03 00:05:36,427 INFO mapreduce.JobResourceUploader: Disabling Erasure Coding for path: /tmp/hadoop-yarn/staging/root/.staging/job_17042071157                                                                                        02_0001
2024-01-03 00:05:36,633 INFO input.FileInputFormat: Total input files to process : 2
2024-01-03 00:05:36,739 INFO mapreduce.JobSubmitter: number of splits:2
2024-01-03 00:05:36,889 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1704207115702_0001
2024-01-03 00:05:36,889 INFO mapreduce.JobSubmitter: Executing with tokens: []
2024-01-03 00:05:37,048 INFO conf.Configuration: resource-types.xml not found
2024-01-03 00:05:37,048 INFO resource.ResourceUtils: Unable to find 'resource-types.xml'.
2024-01-03 00:05:37,469 INFO impl.YarnClientImpl: Submitted application application_1704207115702_0001
2024-01-03 00:05:37,517 INFO mapreduce.Job: The url to track the job: http://node1:8088/proxy/application_1704207115702_0001/
2024-01-03 00:05:37,518 INFO mapreduce.Job: Running job: job_1704207115702_0001
2024-01-03 00:05:44,645 INFO mapreduce.Job: Job job_1704207115702_0001 running in uber mode : false
2024-01-03 00:05:44,647 INFO mapreduce.Job:  map 0% reduce 0%
2024-01-03 00:05:49,790 INFO mapreduce.Job:  map 100% reduce 0%
2024-01-03 00:05:56,882 INFO mapreduce.Job:  map 100% reduce 100%
2024-01-03 00:05:57,937 INFO mapreduce.Job: Job job_1704207115702_0001 completed successfully
2024-01-03 00:05:58,074 INFO mapreduce.Job: Counters: 54File System CountersFILE: Number of bytes read=50FILE: Number of bytes written=831342FILE: Number of read operations=0FILE: Number of large read operations=0FILE: Number of write operations=0HDFS: Number of bytes read=520HDFS: Number of bytes written=215HDFS: Number of read operations=13HDFS: Number of large read operations=0HDFS: Number of write operations=3HDFS: Number of bytes read erasure-coded=0Job CountersLaunched map tasks=2Launched reduce tasks=1Data-local map tasks=2Total time spent by all maps in occupied slots (ms)=5594Total time spent by all reduces in occupied slots (ms)=3894Total time spent by all map tasks (ms)=5594Total time spent by all reduce tasks (ms)=3894Total vcore-milliseconds taken by all map tasks=5594Total vcore-milliseconds taken by all reduce tasks=3894Total megabyte-milliseconds taken by all map tasks=5728256Total megabyte-milliseconds taken by all reduce tasks=3987456Map-Reduce FrameworkMap input records=2Map output records=4Map output bytes=36Map output materialized bytes=56Input split bytes=284Combine input records=0Combine output records=0Reduce input groups=2Reduce shuffle bytes=56Reduce input records=4Reduce output records=0Spilled Records=8Shuffled Maps =2Failed Shuffles=0Merged Map outputs=2GC time elapsed (ms)=226CPU time spent (ms)=1710Physical memory (bytes) snapshot=887963648Virtual memory (bytes) snapshot=8386064384Total committed heap usage (bytes)=736624640Peak Map Physical memory (bytes)=314757120Peak Map Virtual memory (bytes)=2793766912Peak Reduce Physical memory (bytes)=260431872Peak Reduce Virtual memory (bytes)=2799820800Shuffle ErrorsBAD_ID=0CONNECTION=0IO_ERROR=0WRONG_LENGTH=0WRONG_MAP=0WRONG_REDUCE=0File Input Format CountersBytes Read=236File Output Format CountersBytes Written=97
Job Finished in 22.166 seconds
Estimated value of Pi is 3.50000000000000000000
[root@node1 mapreduce]#

2、YARN

Hadoop分布式文件系统(二)

再小的努力,乘以365都很明显!
一个程序员最重要的能力是:写出高质量的代码!!
有道无术,术尚可求也,有术无道,止于术。
无论你是年轻还是年长,所有程序员都需要记住:时刻努力学习新技术,否则就会被时代抛弃!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/615005.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

上海亚商投顾:创业板指放量涨近2% 全市场超4400只个股上涨

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指昨日震荡反弹&#xff0c;创业板指午后涨超2%。华为概念股爆发&#xff0c;鸿蒙方向领涨&#xff0c;创识…

【Docker】Docker安装入门教程及基本使用

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是Java方文山&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的专栏《Docker实战》。&#x1f3af;&#x1f3af; &…

【K8S 云原生】Kurbernets集群的调度策略

目录 一、Kubernetes的list-watch机制 1、List-watch 2、创建pod的过程&#xff1a; 二、scheduler调度的过程和策略&#xff1a; 1、简介 2、预算策略&#xff1a;predicate 3、优先策略&#xff1a; 3.1、leastrequestedpriority&#xff1a; 3.2、balanceresourceal…

Mysql——索引相关的数据结构

索引 引入 我们知道&#xff0c;数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快&#xff0c;因此数据库系统的设计者会从查询算法的角度进行优化。最基本的查询算法当然是顺序查找&#xff08;linear search&#xff09;&#xff0c;这种复杂度为…

springboot基于java的小区物业管理系统(保安巡逻绿化消防)设计+jsp

小区物业管理系统采用的是JAVA语言开发&#xff0c;利用MySQL为数据库&#xff0c; 使用IDEA平台来编写代码&#xff0c;框架方面选择的是springbootweb框架&#xff0c;采用B/S结构实现系统。本系统的设计与开发过程中严格遵守软件工程的规范&#xff0c;运用软件设计模式&…

leecode1143 | 最长公共子序列

给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 &#xff0c;返回 0 。 一个字符串的 子序列 是指这样一个新的字符串&#xff1a;它是由原字符串在不改变字符的相对顺序的情况下删除某些字符&#xff08;也可以不…

香港Web3:Web3的新热土

相关推荐点击查看TechubNews 随着区块链技术的快速发展&#xff0c;Web3的概念逐渐在全球范围内受到关注。作为亚洲的金融中心&#xff0c;香港在Web3领域也展现出了极大的热情和潜力。本文将探讨香港在Web3领域的发展现状、机遇与挑战。 一、香港Web3的发展现状 香港在Web3…

合并 K 个升序链表[困难]

一、题目 给你一个链表数组&#xff0c;每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中&#xff0c;返回合并后的链表。 示例 1&#xff1a; 输入&#xff1a;lists [[1,4,5],[1,3,4],[2,6]] 输出&#xff1a;[1,1,2,3,4,4,5,6] 解释&#xff1a;链表数组如…

AI智能分析网关V4:太阳能+4G智慧水库远程可视化智能监管方案

一、背景需求分析 由于水库位置分散的原因&#xff0c;水库视频监控建设在立杆、布线等方面都存在一定的难度&#xff0c;且需要人力、物力的前期投入和后期维护。目前水库的监管存在一定的问题&#xff0c;管理人员工作强度大但管理质量并不高&#xff0c;人为巡检无法实时发…

【React源码 - Fiber架构之Reconciler】

前言 React16架构可以分为三层也是最核心的三个功能分别是&#xff1a; Scheduler&#xff08;调度器&#xff09;—调度任务的优先级&#xff0c;高优任务优先进入Reconciler(16新增)Reconciler&#xff08;协调器&#xff09;—负责找出变化的组件Renderer&#xff08;渲染…

C++_虚函数表

虚函数表 介绍源码运行结果笔记扩充函数名联编静态联编动态联编 介绍 1.编译器通过指针或引用调用虚函数&#xff0c;不会立即生成函数调用指令&#xff0c;而是用 二级函数指针 代替 1.1确定真实类型 1.2找到虚函数表从而找到入口地址 1.3根据入口地址调用函数(PS:俗称 函数指…

RT-Thread入门笔记3-线程的创建

线程 RT-Thread 中&#xff0c;线程由三部分组成&#xff1a;线程代码&#xff08;入口函数&#xff09;、线程控制块、线程堆栈. 线程代码: 线程控制块 : 线程控制块是操作系统用于管理线程的一个数据结构&#xff0c; 它会存放线程的一些信息&#xff0c; 例如优先级、 线程…

使用Notepad++将多行数据合并成一行

步骤 1、按CtrlF&#xff0c;弹出“替换”的窗口&#xff1b; 2、选择“替换”菜单&#xff1b; 3、“查找目标”内容输入为&#xff1a;\r\n&#xff1b; 4、“替换为”内容为空&#xff1b; 5、“查找模式”选择为正则表达式&#xff1b; 6、设置好之后&#xff0c;点击“全…

Vue3 父事件覆盖子事件,Vue2 的 v-on=“$listeners“ 的替代方案

在 Vue3 中&#xff0c;$listeners 被删除 子组件代码&#xff0c;需要特别注意的是事件名为 on 开头&#xff0c;例如 onBack。不确定的可以通过给父组件传递 事件或属性&#xff0c;再打印子组件的 attrs useAttrs()&#xff0c;来确定传值 // template v-bind"newA…

了解PyTorch中的缩放点积注意力及演示

torch.nn.functional.scaled_dot_product_attention 函数在 PyTorch 框架中用于实现缩放点积注意力&#xff08;Scaled Dot-Product Attention&#xff09;。这是一种在自然语言处理和计算机视觉等领域常用的注意力机制。它的主要目的是通过计算查询&#xff08;query&#xff…

Linux ----冯诺依曼体系结构与操作系统

目录 前言 一、冯诺依曼体系结构 二、为什么选择冯诺依曼体系结构&#xff1f; 三、使用冯诺依曼结构解释问题 问题1&#xff1a; 问题2: 四、操作系统 1.操作系统是什么 2.为什么需要操作系统 3.操作系统怎样管理的 4.如何给用户提供良好环境 五、我们是怎样调用系…

Github 2024-01-12Java开源项目日报 Top10

根据Github Trendings的统计&#xff0c;今日(2024-01-12统计)共有10个项目上榜。根据开发语言中项目的数量&#xff0c;汇总情况如下&#xff1a; 开发语言项目数量Java项目10Vue项目3 Apache Flink: 开源流处理框架 创建周期&#xff1a;3506 天开发语言&#xff1a;Java协…

iOS rootless无根越狱解决方案

据游戏工委数据统计&#xff0c;2023年国内游戏市场实际销售收入与用户规模双双创下新高&#xff0c;游戏普遍采用多端并发方式&#xff0c;成为收入增长的主因之一。 中国市场实际销售收入及增长率丨数据来源&#xff1a;游戏工委 多端互通既是机遇&#xff0c;也是挑战。从游…

【AI大模型应用开发】1.0 Prompt Engineering(提示词工程)- 典型构成、原则与技巧,代码中加入Prompt

从这篇文章开始&#xff0c;我们就正式开始学习AI大模型应用开发的相关知识了。首先是提示词工程&#xff08;Prompt Engineering&#xff09;。 文章目录 0. 什么是提示词&#xff08;Prompt&#xff09;1. 为什么Prompt会起作用 - 大模型工作原理2. Prompt的典型构成、原则与…

【5】商密测评密码辅助工具

0X01 前言 最近在学了下商密测评&#xff0c;研究了下技术层面的测评&#xff0c;感觉找工具不方便&#xff0c;就顺手自己造了个辅助工具&#xff0c;都是自己遇到需要用的。 0x02 工具功能介绍 不爱打字&#xff0c;直接上图。后续根据技术测评层面需要继续完善和增加功能。…