package com.bfd.util; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.KeyValue; import org.apache.hadoop.hbase.client.HTable; import org.apache.hadoop.hbase.io.ImmutableBytesWritable; import org.apache.hadoop.hbase.mapreduce.HFileOutputFormat; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.lib.input.TextInputFormat; public class CopyOfGidAddCartTemp { public static final String TABLE_NAME = "_AddCart_TEMP"; public static final String COLUMN_FAMILY = "ci"; private static Configuration conf = null; static { conf = HBaseConfiguration.create(); conf.set("hbase.zookeeper.quorum", Const.ZOOKEEPER_QUORAM); conf.set("zookeeper.znode.parent", Const.ZOOKEEPER_ZNODE_PARENT); } static class Mapper extends org.apache.hadoop.mapreduce.Mapper<LongWritable, Text, ImmutableBytesWritable, LongWritable> { private ImmutableBytesWritable outKey = new ImmutableBytesWritable(); private LongWritable outValue = new LongWritable(); @Override protected void map( LongWritable key, Text value, org.apache.hadoop.mapreduce.Mapper<LongWritable, Text, ImmutableBytesWritable, LongWritable>.Context context) throws IOException, InterruptedException { context.write(new ImmutableBytesWritable(), new LongWritable()); } } static class Reducer extends org.apache.hadoop.mapreduce.Reducer<ImmutableBytesWritable, LongWritable, ImmutableBytesWritable, KeyValue> { public void reduce(ImmutableBytesWritable key, Iterable<LongWritable> values, Context context) throws IOException, InterruptedException { context.write(key,new KeyValue()); } } public static void main(String[] args) throws IOException, InterruptedException, ClassNotFoundException { Configuration conf = new Configuration(); Job job = new Job(conf, "_AddCart_TEMP"); job.setJarByClass(CopyOfGidAddCartTemp.class); job.setMapOutputKeyClass(ImmutableBytesWritable.class); job.setMapOutputValueClass(LongWritable.class); job.setOutputKeyClass(ImmutableBytesWritable.class); job.setOutputValueClass(KeyValue.class); job.setMapperClass(com.bfd.util.CopyOfGidAddCartTemp.Mapper.class); job.setReducerClass(com.bfd.util.CopyOfGidAddCartTemp.Reducer.class); job.setInputFormatClass(TextInputFormat.class); job.setOutputFormatClass(HFileOutputFormat.class); job.setNumReduceTasks(4); /* 本地执行 */ // ((JobConf) job.getConfiguration()).setJar(jarFile.toString()); TextInputFormat.setInputPaths(job, Const.HDFS_BASE_INPUT + "/l_date=" + args[0] + "/*"); HFileOutputFormat.setOutputPath(job, new Path(Const.HDFS_BASE_OUTPUT + "/addcart")); Configuration HBASE_CONFIG = new Configuration(); HBASE_CONFIG.set("hbase.zookeeper.quorum", Const.ZOOKEEPER_QUORAM); HBASE_CONFIG.set("zookeeper.znode.parent", Const.ZOOKEEPER_ZNODE_PARENT); HBASE_CONFIG.set("date2", args[0]); Configuration cfg = HBaseConfiguration.create(HBASE_CONFIG); HTable htable = new HTable(cfg, TABLE_NAME); HFileOutputFormat.configureIncrementalLoad(job, htable); System.exit(job.waitForCompletion(true) ? 0 : 1); } }
相关推荐
MapReduce是Hadoop的核心组件之一,它是一种编程模型,用于大规模数据集(大于1TB)的并行计算。在本场景中,Map阶段将原始数据分割成小块,并在集群的不同节点上并行处理。Reduce阶段则负责聚合这些处理结果,生成...
因此,通过 MapReduce 这种并行计算框架,可以从 HDFS 中将数据导入到 HBase,或者将 HBase 中的数据导出到 HDFS。 MapReduce 包含 Map 和 Reduce 两个主要阶段,Map 阶段将输入数据分片并进行并行处理,Reduce ...
mapreduce方式入库hbase hive hdfs,速度很快,里面详细讲述了代码的编写过程,值得下载
在Java编程环境中,操作HBase并将其数据写入HDFS(Hadoop Distributed File System)是一项常见的任务,特别是在大数据处理和分析的场景下。本篇将详细介绍如何使用Java API实现这一功能,以及涉及到的关键技术和...
源代码可能包括了数据预处理的MapReduce作业,HBase表的创建逻辑,以及使用HBase Java API的导入功能。通过阅读和理解这段代码,可以深入学习如何在实际项目中将HDFS数据导入HBase,这对于大数据平台的开发和运维...
对Hadoop中的HDFS、MapReduce、Hbase系列知识的介绍。如果想初略了解Hadoop 可下载观看
通过以上详细的分析和解释,我们可以清晰地了解到从Hadoop向HBase进行数据迁移的具体步骤和技术要点,包括MapReduce的使用、数据插入机制、HBase表的创建以及Mapper类的实现细节。这对于理解和实施Hadoop与HBase之间...
### 大数据技术 Hadoop开发者第二期 MapReduce HDFS Hive Mahout HBase 相关知识点解析 #### 一、Hadoop 业界资讯 - **InfoWorld 授予 Apache Hadoop 年度技术创新奖章** - **背景**:2010年1月,InfoWorld 授予 ...
* hbase org.apache.hadoop.hbase.mapreduce.Import <outputdir> <tablename>:将 HDFS 文件插入到 HBase 表中 * snapshot 'test', 'snap_test':创建名为 snap_test 的快照 * hbase org.apache.hadoop.hbase....
本文将详细讨论如何使用Java编程语言实现从Hive到HBase的快速数据导入方案。 首先,Hive是一个基于Hadoop的数据仓库工具,它可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,适合大规模数据的离线...
标题中的“MR程序Bulkload数据到hbase”指的是使用MapReduce(MR)程序批量加载(Bulkload)数据到HBase数据库的过程。MapReduce是Apache Hadoop框架中的一个关键组件,用于处理和生成大规模数据集。而HBase是一个...
接下来,Hadoop是HDFS的基础框架,它不仅包括HDFS,还包括MapReduce编程模型,用于并行处理数据。MapReduce将大型任务分解为小的Map任务和Reduce任务,在集群中的不同节点上并行执行,极大地提高了处理效率。开发者...
HBase的表模型和列族设计使其能够在保持高性能的同时,支持灵活的数据模型。 这六个组件共同构成了一个完整的Hadoop生态系统,它们相互配合,从数据采集(Nutch)、存储(HDFS)、计算(MapReduce)、分析(Hive)...
### 从冷备份的HDFS数据中恢复到原来的HBase表 #### 概述 本文档详细介绍了一种从HDFS中的冷备份数据恢复至HBase表的方法。此过程适用于使用了HBase 1.1.x 和 Hadoop 2.7.x版本的环境。通过以下步骤,可以有效地将...
系统的设计基于Hadoop和HBase的架构,充分利用了Hadoop的分布式文件系统HDFS和MapReduce的快速计算能力,以及HBase的高效数据存储和查询能力。该系统可以实现对海量网络数据的可靠存储、快速解析和高效查询。 系统...
1. HBase的数据模型:HBase是基于列族的NoSQL数据库,数据以行键、列族、列限定符和时间戳的形式存储。理解这一模型对备份策略至关重要。 2. 备份方法: - HBase的快照功能:HBase支持在线快照,通过创建快照可以...
在大数据处理领域,Hadoop生态系统中的HDFS(Hadoop Distributed File System)、MapReduce、Hive和HBase是四个至关重要的组件。本资料“HDFS+MapReduce+Hive+HBase十分钟快速入门”旨在帮助初学者迅速理解这些技术...
通过对Hadoop分布式计算平台最核心的分布式文件系统HDFS、MapReduce处理过程,以及数据仓库工具Hive和分布式数据库Hbase的介绍,基本涵盖了Hadoop分布式平台的所有技术核心。通过这一阶段的调研总结,从内部机理的...
1. 准备阶段:配置HBase的环境,包括设置HBase的表结构、索引和数据模型。 2. Map阶段:定义Map函数,该函数将从HBase表中读取数据,并对数据进行预处理,形成键值对(key-value pairs)。 3. Shuffle阶段:...