mapreduce打包运行

maven打包

MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。

MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序(例如:jar包),并发运行在一个Hadoop集群上。

(二)设置编译版本

我们集群上安装的java环境是1.8的,那么我们生成的代码也必须是这个版本的,否则,就会无法运行。

(三)修改代码,设置执行环境和文件路径

我们集群上安装的java环境是1.8的,那么我们生成的代码也必须是这个版本的,否则,就会无法运行。

(四)上传到节点运行

使用finalshell上到任意节点,例如hadoop100上的/opt下,。

然后通过命令来执行执行WordCount程序,注意要写Driver类的全名

(五)修改执行参数

在上面的代码中,我们的程序只能完成固定目录下的功能。现在希望它能处理不同的目录。

修改代码,让程序能指定要执行的输入目录和要保存结果的输出目录。

修改driver类的代码,更新输入和输入路径。

MapReduce无法像MySQL一样,在毫秒或者秒级内返回结果。它的任务会跑好几个小时,好几天。

2)不擅长流式计算

流式计算的输入数据是动态的,会一条一条的过来,是动态产生的,而MapReduce的输入数据集是静态的,不能动态变化。这是因为MapReduce自身的设计特点决定了数据源必须是静态的。

3)不擅长DAG(有向无环图)计算

多个应用程序存在依赖关系,后一个应用程序的输入为前一个的输出。在这种情况下,MapReduce并不是不能做,而是使用后,每个MapReduce作业的输出结果都会写入到磁盘,会造成大量的磁盘IO,导致性能非常的低下。

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

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

相关文章

小白成长之路-LInux系统文件与目录管理(二)

提示:第二部分对第一部分收尾 文章目录 常见的命令如下一、文件查看命令1. more命令2.less命令3.head命令4.tail命令5.nl命令(了解)6.创建目录命令7.创建文件命令>: 覆盖重定向>>: 追加重定向 8.touch命令9.echo命令10.文件或目录复…

JVM之虚拟机运行

虚拟机运行快速复习 try-catch:catch-异常表栈展开,finally-代码复制异常表兜底 类的生命周期:加载,连接(验证,准备,解析),初始化,使用,卸载 类…

AI数字人实现原理

随着人工智能与数字技术的快速发展,AI数字人(Digital Human)作为新一代人机交互媒介,正在多个行业中快速落地。无论是在虚拟主播、在线客服、教育培训,还是在数字代言、元宇宙中,AI数字人都扮演着越来越重要…

Android开发-数据库SQLite

在Android应用开发中,当需要存储结构化数据时,SQLite是一个非常强大的工具。SQLite是一款轻量级的关系型数据库管理系统,它内嵌于Android系统中,支持SQL语法,并且不需要单独的服务器进程或系统配置。本文将介绍如何在A…

android实现USB通讯

在 Android 上枚举 USB 设备除了使用 UsbManager.getDeviceList() 方法外,还有以下几种常见的方式: 1. 使用 USB 设备过滤器(XML 配置) 通过在 AndroidManifest.xml 中配置 USB 设备过滤器,可以让系统自动检测并通知…

FFmpeg视频编码的完整操作指南

步骤如下: 安装和准备FFmpeg:确保包含所需编码器(如libx264)。基本命令行编码:使用ffmpeg命令进行转码,设置视频编码器、CRF、预设等。API编码流程(针对开发者): a. 注册…

鸿蒙 UIAbility组件与UI的数据同步和窗口关闭

使用 EventHub 进行数据通信 Stage模型概念图 根据 Stage 模型概念图 UIAbility 先于 ArkUI Page 创建 所以,事件要先 .on 订阅 再 emit 发布 假如现在有页面 Page1 和他的 UIAbility // src/main/ets/page1ability/Page1Ability.ets onCreate(want: Want, laun…

全栈工程师实战手册:LuatOS日志系统开发指南!

本文聚焦LuatOS-log库的实战应用场景,通过完整案例演示日志模块集成、格式定制及远程同步方案,帮助全栈开发者构建灵活可靠的日志管理框架。下面,我们一起来认识LuatOS的log库! 一、 log.info() log info()主要打印一些正常的…

STM32-USART串口通信(9)

一、通信接口介绍 通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统。 当STM32想要实现一些功能,但是需要外挂一些其他模块才能实现,这就需要在两个设备之间连接上一根或多跟通信线,通过通信线路发送或者接…

【MoveIt 2】使用 MoveIt 任务构造器(MoveIt Task Constructor)进行拾取和放置

本教程将引导您创建一个使用 MoveIt 任务构造器规划抓取和放置操作的包。MoveIt 任务构造器(https://github.com/moveit/moveit_task_constructor/tree/ros2/)提供了一种为包含多个不同子任务(称为阶段)的任务进行规划的方法。如果…

破解商业综合体清洁管理困局:商业空间AI智能保洁管理系统全场景解决方案

方案整体概述 随着商业综合体日益向智能化、精细化管理转型,传统保洁工作面临人员监管难、清洁效果评估难、应急响应滞后等诸多挑战。为解决这些痛点,本系统依托计算机视觉、行为识别、图像分割与深度学习等AI技术,构建一套集人员管理、工作…

spring响应式编程系列:异步消费数据

目录 示例 大致流程 parallel cache PARALLEL_SUPPLIER newParallel init publishOn new MonoSubscribeOnValue ​​​​​​​subscribe ​​​​​​​new LambdaMonoSubscriber ​​​​​​​MonoSubscribeOnValue.subscribe ​​​​​​​onSubscribe ​​…

视频编解码学习十二之Android疑点

一、android.view.SurfaceControl.setDisplaySurface的作用 android.view.SurfaceControl.setDisplaySurface 是 Android 系统中一个 native 层级别的 API,主要用于 设置某个物理显示屏(Display)的输出 Surface,属于 SurfaceFlin…

家用或办公 Windows 电脑玩人工智能开源项目配备核显的必要性(含 NPU 及显卡类型补充)

一、GPU 与显卡的概念澄清 首先需要明确一个容易误解的概念:GPU 不等同于显卡。 显卡和GPU是两个不同的概念。 【概念区分】 在讨论图形计算领域时,需首先澄清一个常见误区:GPU(图形处理单元)与显卡(视…

Python----神经网络(《Deep Residual Learning for Image Recognition》论文和ResNet网络结构)

一、论文 1.1、论文基本信息 标题:Deep Residual Learning for Image Recognition 作者:Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun 单位:Microsoft Research 会议:CVPR 2016 主要贡献:提出了一种深度残…

Qt/C++开发监控GB28181系统/录像文件查询/录像回放/倍速播放/录像文件下载

一、前言 搞定了实时预览后,另一个功能就是录像回放,录像回放和视频点播功能完全一致,唯一的区别就是发送点播的sdp信息中携带了开始时间和结束时间,因为是录像文件,所以有这个时间,而实时视频预览这个对应…

在Spark搭建YARN

(一)什么是SparkONYarn模式 Spark on YARN(Yet Another Resource Negotiator)是 Spark 框架在 Hadoop 集群中运行的一种部署模式,它借助 Hadoop YARN 来管理资源和调度任务。 架构组成 ResourceManager:作…

SpringAI

机器学习: 定义:人工智能的子领域,通过数据驱动的方法让计算机学习规律,进行预测或决策。 核心方法: 监督学习(如线性回归、SVM)。 无监督学习(如聚类、降维)。 强化学…

如何用Redis实现分布式锁?RedLock算法的核心思想?Redisson的看门狗机制原理?

一、Redis分布式锁基础实现 public class RedisDistributedLock {private JedisPool jedisPool;private String lockKey;private String clientId;private int expireTime 30; // 默认30秒public boolean tryLock() {try (Jedis jedis jedisPool.getResource()) {// NX表示不…

前端面试宝典---js垃圾回收机制

什么是垃圾回收 垃圾回收是指一种自动内存管理机制,当声明一个变量时,会在内存中开辟一块内存空间用于存放这个变量。当这个变量被使用过后,可能再也不需要它了,此时垃圾回收器会自动检测并回收这些不再使用的内存空间。垃圾回收…