真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Mapreduce構(gòu)建hbase二級索引-創(chuàng)新互聯(lián)

import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Set; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.client.Put; import org.apache.hadoop.hbase.client.Result; import org.apache.hadoop.hbase.client.Scan; import org.apache.hadoop.hbase.io.ImmutableBytesWritable; import org.apache.hadoop.hbase.mapreduce.MultiTableOutputFormat; import org.apache.hadoop.hbase.mapreduce.TableInputFormat; import org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil; import org.apache.hadoop.hbase.mapreduce.TableMapper; import org.apache.hadoop.hbase.util.Bytes; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.util.GenericOptionsParser; public class IndexBuilder {     private class MyMapper extends TableMapper {         private Map indexes = new HashMap();         private String columnFamily;         @Override         protected void map(ImmutableBytesWritable key, Result value,                 Context context) throws IOException, InterruptedException {             Set keys = indexes.keySet();             for (byte[] k : keys) {                 ImmutableBytesWritable indexTableName = indexes.get(k);                 byte[] val = value.getValue(Bytes.toBytes(columnFamily), k);                 Put put = new Put(val);// 索引表的rowkey為原始表的值                 put.add(Bytes.toBytes("f1"), Bytes.toBytes("id"), key.get());// 索引表的內(nèi)容為原始表的rowkey                 context.write(indexTableName, put);             }         }         @Override         protected void setup(Context context) throws IOException,                 InterruptedException {             Configuration conf = context.getConfiguration();             String tableName = conf.get("tableName");             columnFamily = conf.get("columnFamily");             String[] qualifiers = conf.getStrings("qualifiers");             // indexes的key為列名,value為索引表名             for (String q : qualifiers) {                 indexes.put(                         Bytes.toBytes(q),                         new ImmutableBytesWritable(Bytes.toBytes(tableName                                 + "-" + q)));             }         }     }     public static void main(String[] args) throws IOException,             ClassNotFoundException, InterruptedException {         Configuration conf = HBaseConfiguration.create();         String[] otherargs = new GenericOptionsParser(conf, args)                 .getRemainingArgs();// 去除掉沒有用的命令行參數(shù)         // 輸入?yún)?shù):表名,列族名,列名         if (otherargs.length < 3) {             System.exit(-1);         }         String tableName = otherargs[0];         String columnFamily = otherargs[1];         conf.set("tableName", tableName);         conf.set("columnFamily", columnFamily);         String[] qualifiers = new String[otherargs.length - 2];         for (int i = 0; i < qualifiers.length; i++) {             qualifiers[i] = otherargs[i + 2];         }         conf.setStrings("qualifiers", qualifiers);         Job job = new Job(conf, tableName);         job.setJarByClass(IndexBuilder.class);         job.setMapperClass(MyMapper.class);         job.setNumReduceTasks(0);         job.setInputFormatClass(TableInputFormat.class);         // 可以輸出多張表         job.setOutputFormatClass(MultiTableOutputFormat.class);         Scan scan = new Scan();         scan.setCaching(1000);         TableMapReduceUtil.initTableMapperJob(tableName, scan, MyMapper.class,                 ImmutableBytesWritable.class, Put.class, job);         job.waitForCompletion(true);     } }

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比大同網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式大同網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋大同地區(qū)。費用合理售后完善,10多年實體公司更值得信賴。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


網(wǎng)頁名稱:Mapreduce構(gòu)建hbase二級索引-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://weahome.cn/article/pisjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部