本篇内容介绍了“怎么往Hbase表添加测试数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
目前成都创新互联已为1000多家的企业提供了网站建设、域名、雅安服务器托管、网站运营、企业网站设计、林周网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
创建一张表,往Hbase表添加测试数据,然后将数据写入HDFS文件。
public class HBaseAndMapReduce1 {
public static void main(String[] args) throws Exception {
//测试数据
testData();
System.exit(run());
}
public static int run() throws IOException, ClassNotFoundException, InterruptedException{
//初始化HBase配置
Configuration conf = new Configuration();
conf = HBaseConfiguration.create(conf);
conf.set("hbase.zookeeper.quorum", "192.168.226.129");
Job job = Job.getInstance(conf,"searchPerson");
job.setJarByClass(HBaseAndMapReduce1.class);
//实例化scan对象。
Scan scan = new Scan();
//限定列,只读取关键数据,比如:article,author
scan.addColumn(Bytes.toBytes("article"), Bytes.toBytes("tags"));
scan.addColumn(Bytes.toBytes("author"), Bytes.toBytes("nickname"));
/**
* 参照源码如下:
* TableMapper //对输出hbase数据来格式分割的处理类
* public static void initTableMapperJob(String table, Scan scan,
* Class extends TableMapper> mapper,
* Class> outputKeyClass,
* Class> outputValueClass, Job job) throws IOException {
* initTableMapperJob(table, scan, mapper, outputKeyClass, outputValueClass,job, true);
* }
* */
/**
* Result类中有个静态方法getFamilyMap()可以获得以列名为key,值为value,这刚好与hadoop中map结果是一样的。
*
*/
TableMapReduceUtil.initTableMapperJob( "blog",scan, FindFriendMapper.class,
ImmutableBytesWritable.class, Result.class, job);
DateFormat df = new SimpleDateFormat( "yyyyMMddHHmmssS" );
FileOutputFormat.setOutputPath(job, new Path("hdfs://192.168.226.129:9000/hbasemapreduce/" + df.format( new Date() )+"/"));
return job.waitForCompletion(true) ? 0 : 1;
}
public static class FindFriendMapper extends TableMapper{
//key是hbase中的行键
//value是hbase中的所行键的所有数据
@Override
protected void map(ImmutableBytesWritable key,Result value,
Mapper.Context context)
throws IOException, InterruptedException {
//System.out.println("key-->" + Bytes.toString(key.get()) + "---> " + key );
/*
* Cell (存储单元)
* 由{row key, column(= +
“怎么往Hbase表添加测试数据”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
网站栏目:怎么往Hbase表添加测试数据
文章分享:
http://hbruida.cn/article/gigejp.html