学习日志---partitioner和采样器
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,Mapreduce中:shuffle阶段是在map和reduce之间,可以自定义排序,自定义分区和自定义分组!Mapreduce中,map出的数据是键值对,默认的是hashPatitionner来对m
千家信息网最后更新 2025年02月02日学习日志---partitioner和采样器
Mapreduce中:
shuffle阶段是在map和reduce之间,可以自定义排序,自定义分区和自定义分组!
Mapreduce中,map出的数据是键值对,默认的是hashPatitionner来对map出的数据进行分区;
分区的方法还有其他几个:
RandomSamplersampler = new InputSampler.RandomSampler (0.5, 3000, 10);IntervalSampler sampler2 = new InputSampler.IntervalSampler (0.333, 10);SplitSampler sampler3 = new InputSampler.SplitSampler (reduceNumber);
实现和细节
public class TotalSortMR { @SuppressWarnings("deprecation") public static int runTotalSortJob(String[] args) throws Exception { Path inputPath = new Path(args[0]); Path outputPath = new Path(args[1]); Path partitionFile = new Path(args[2]); int reduceNumber = Integer.parseInt(args[3]); //三种采样器 RandomSamplersampler = new InputSampler.RandomSampler (1, 3000, 10); IntervalSampler sampler2 = new InputSampler.IntervalSampler (0.333, 10); SplitSampler sampler3 = new InputSampler.SplitSampler (reduceNumber); //任务初始化 Configuration conf = new Configuration(); Job job = Job.getInstance(conf); job.setJobName("Total-Sort"); job.setJarByClass(TotalSortMR.class); job.setInputFormatClass(KeyValueTextInputFormat.class); job.setMapOutputKeyClass(Text.class); job.setMapOutputValueClass(Text.class); job.setNumReduceTasks(reduceNumber); //设置所有的分区类 job.setPartitionerClass(TotalOrderPartitioner.class); //分区类参考的分区文件 TotalOrderPartitioner.setPartitionFile(conf, partitionFile); //分区使用哪种采样器 InputSampler.writePartitionFile(job, sampler); //job的输入和输出路径 FileInputFormat.setInputPaths(job, inputPath); FileOutputFormat.setOutputPath(job, outputPath); outputPath.getFileSystem(conf).delete(outputPath, true); return job.waitForCompletion(true)? 0 : 1; } public static void main(String[] args) throws Exception{ System.exit(runTotalSortJob(args)); }}
job默认的输入格式是TextInputFormat,这个是key-value的形式,key是每行的行标,value是每行的内容。可以更改
job.setInputFormatClass(,....)
一般要设置mapper的输出格式,以备后面使用。
采样器
数据
格式
输入
输出
之间
任务
内容
形式
文件
方法
是在
细节
路径
阶段
分组
参考
排序
日志
学习
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全基因有哪些
空管局网络安全监察职位待遇
微招聘什么软件开发
大众钥匙数据库
数据库将相同数值排列起来
魔法金属服务器设置难度
服务器sata盘支持热插拔吗
您的电话已连接到服务器上
广东念响新媒互联网科技有限公司
缓存服务和读数据库
中国网络安全学院有用吗
广西安全接入服务器地址
网络技术工程师的称呼
x86服务器怎样部署网站
服务器故障率
数据库完整性分为几种
网络安全基础白国强答案5
机器学习服务器安装教程
马甲网络安全黑板报
防火墙内部网络安全
中科曙光定制化服务器
语音聊天服务器
沃讯网络技术有限公司
河南微创网络技术有限公司
上海推广网络技术价格咨询
南昌app软件开发价钱
网络安全的威胁分为
学校网络安全宣传周制度
生物大分子结构数据库的简称
网络技术qc成果