摘要:
1、load data 2、insert 3、多表插入,在单表插入的时候,from子句可以放在前面,这个特性在多表插入的时候被应用 4、使用CTAS创建表并导入数据,create table ... as select ... 阅读全文
摘要:
1、创建分区表 修改表: 1.1、加载数据 partition的分区字段体现在存储目录上,与文件中的实际存储字段没有关系。 1.2、显示分区信息 1.3、分区列属于表的正式列,但是文件中没有存储分区列信息。分区列的信息是从目录中读取的。 2、分桶表 2.1、检查分桶属性,设置分桶属性是为了使用hiv 阅读全文
摘要:
use information_schema;查看所有 select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;查看指定数据库 select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table... 阅读全文
摘要:
1、下载地址:http://mirrors.hust.edu.cn/apache/ 2、conf配置 解压后进入hive的conf目录,新建配置文件,设定hive元数据存储的数据库等 因为用的是mysql作为元数据存储,将mysql连接jar包放入hive的lib目录下:mysql-connecto 阅读全文
摘要:
在上例中,使用Avro框架求出数据的最大值,本例使用Avro对数据排序,输入依然是之前的样本,输出使用文本(也可以输出Avro格式)。 1、在Avro的Schema中直接设置排序方向。 原常量类: 2、mapper 3、reducer 4、job 阅读全文
摘要:
在上例中:hadoop MapReduce辅助排序解析,为了求每年的最大数据使用了mapreduce辅助排序的方法。 本例中介绍利用Avro这个序列化框架的mapreduce功能来实现求取最大值。Avro的优点在这里不做扩展。 1、依赖引入,不使用插件 2、定义Avro数据结构,样本依然使用上例的数 阅读全文
摘要:
1、数据样本,w1.csv到w5.csv,每个文件数据样本2000条,第一列是年份从1990到2000随机,第二列数据从1-100随机,本例辅助排序目标是找出每年最大值,实际上结果每年最大就是100,但是这里通过mapreduce辅助排序方式来找。 2、核心概念: 3、IntPair,本例把整行数据 阅读全文
摘要:
上例中将HDFS里小文件通过mapper压缩到一个文件中,本例将这些小文件解压出来。 mapreduce可以按SequenceFile的key进行分片。 1、mapper 2、job 3、验证,压入SequenceFile和解压后的文件完全相同。 阅读全文
摘要:
上一例是直接用SequenceFile的createWriter来实现,本例采用mapreduce的方式。 1、把小文件整体读入需要自定义InputFormat格式,自定义InputFormat格式需要先定义RecordReader读取方式,为了整体读入,RecordReader使用一次性读入所有字 阅读全文
摘要:
背景:hdfs上的文件最好和hdfs的块大小的N倍。如果文件太小,浪费namnode的元数据存储空间以及内存,如果文件分块不合理也会影响mapreduce中map的效率。 本例中将小文件的文件名作为key,其内容作为value生成SequenceFile 1、生成文件 查找文件: 2、还原压缩的Se 阅读全文