一、数据格式

A、文件格式

1、面向行

1、txt 可切分 查看简单 不易压缩占用空间大

2、seq 可切分 自带、支持二进制k.v存储,

2、面向列

1、rc 可切分 数据加载快、查询快空间利用率高、高负载能力 总体优秀,但是每一项都不是最好

2、orc 可切分 rc的升级版

B、压缩格式

1、lzo 不是原生 速度快,合理的压缩率 文件较大时使用

2、bzip2 原生 速度慢 高压缩率

3、gz 原生 速度快 吃CPU

C、设置输出压缩格式

yarn jar jar_path main_class_path -Dk1=v1参数列表

二、设置MR

1、自定义Partitioner

public static class MyHashPartitioner extends Partitioner 然后覆写getPartiton方法

2、自定Reduce数量

-Dmapred.reduce.tasks=2 \

3、读取外部配置文件

// 1.1 将gop加入当中
GenericOptionsParser gop = new GenericOptionsParser(conf, args);
//获取路径参数
String[] remainingArgs = gop.getRemainingArgs();
//读取本地文件
String configContent=readLocalFile(remainingArgs[2],”utf-8”);
//放入到配置文件中
conf.set(“whitelist”, configContent);