博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MapReduce编程实现txt文件中的内容导入HBase
阅读量:4122 次
发布时间:2019-05-25

本文共 2271 字,大约阅读时间需要 7 分钟。

一、创建java项目。

写入代码,如下:
package translate1;import java.io.IOException;import org.apache.hadoop.conf.*;import org.apache.hadoop.fs.Path;import  org.apache.hadoop.mapreduce.*;import org.apache.hadoop.io.LongWritable;import  org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.lib.input.*;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.io.*;import org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil;import org.apache.hadoop.hbase.client.Put;import org.apache.hadoop.hbase.util.Bytes;public class translate1 {	        public static Job createSubmittableJob(Configuration conf, String[] args)throws IOException {                       String tableName = args[0];                       Path inputDir = new Path(args[1]);                       @SuppressWarnings("deprecation")                       Job job = new Job (conf, "hac_chapter2_recipe3");                       job.setJarByClass(HourlyImporter.class);                       FileInputFormat.setInputPaths(job, inputDir);                       job.setMapperClass(HourlyImporter.class);                      TableMapReduceUtil.initTableReducerJob(tableName, null, job);                       job.setNumReduceTasks(0);                      TableMapReduceUtil.addDependencyJars(job);                      return job;                               }        public static void main(String[] args)throws Exception {                      Configuration conf = HBaseConfiguration.create();                      Job job = createSubmittableJob(conf, args);                      System.exit (job.waitForCompletion(true) ? 0 : 1);                              }                     }      class HourlyImporter extends Mapper
{ private long ts; static byte[] family = Bytes.toBytes("n"); @Override protected void setup(Context context) { ts = System.currentTimeMillis(); } public static String change(String str,int n,boolean j){ if(str==null||str.length()>=n) return str; String s=""; for(int i=str.length();i

二、上传txt文件到HDFS系统

HDFS中的文件内容为:

三、在HBase终端上创建HBase表格

创建时只需指定要创建表格的表名和列族名

四、配置java项目执行的参数

配置内容如图:

五、执行结果

如图:
你可能感兴趣的文章
C++ 调用json
查看>>
nano中设置脚本开机自启动
查看>>
动态库调动态库
查看>>
Kubernetes集群搭建之CNI-Flanneld部署篇
查看>>
k8s web终端连接工具
查看>>
手绘VS码绘(一):静态图绘制(码绘使用P5.js)
查看>>
手绘VS码绘(二):动态图绘制(码绘使用Processing)
查看>>
基于P5.js的“绘画系统”
查看>>
《达芬奇的人生密码》观后感
查看>>
论文翻译:《一个包容性设计的具体例子:聋人导向可访问性》
查看>>
基于“分形”编写的交互应用
查看>>
《融入动画技术的交互应用》主题博文推荐
查看>>
链睿和家乐福合作推出下一代零售业隐私保护技术
查看>>
Unifrax宣布新建SiFAB™生产线
查看>>
艾默生纪念谷轮™在空调和制冷领域的百年创新成就
查看>>
NEXO代币持有者获得20,428,359.89美元股息
查看>>
Piper Sandler为EverArc收购Perimeter Solutions提供咨询服务
查看>>
RMRK筹集600万美元,用于在Polkadot上建立先进的NFT系统标准
查看>>
JavaSE_day12 集合
查看>>
JavaSE_day14 集合中的Map集合_键值映射关系
查看>>