educoder平臺(tái)HBase開發(fā):批量操作_第1頁
educoder平臺(tái)HBase開發(fā):批量操作_第2頁
educoder平臺(tái)HBase開發(fā):批量操作_第3頁
educoder平臺(tái)HBase開發(fā):批量操作_第4頁
educoder平臺(tái)HBase開發(fā):批量操作_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第 1 關(guān):批量獲取數(shù)據(jù)package step1;import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.Cell;import org.apache.hadoop.hbase.CellScanner;import org.apache.hadoop.hbase.CellUtil;import org.apache.hadoop.hbase.HBas

2、eConfiguration;import org.apache.hadoop.hbase.TableName;import org.apache.hadoop.hbase.client.Admin;import org.apache.hadoop.hbase.client.Connection;import org.apache.hadoop.hbase.client.ConnectionFactory;import org.apache.hadoop.hbase.client.Get;import org.apache.hadoop.hbase.client.HTable;import o

3、rg.apache.hadoop.hbase.client.Result;import org.apache.hadoop.hbase.client.ResultScanner;import org.apache.hadoop.hbase.client.Scan;import org.apache.hadoop.hbase.client.Table;import org.apache.hadoop.hbase.client.TableDescriptor;import org.apache.hadoop.hbase.generated.rest.rest_jsp;import org.apac

4、he.hadoop.hbase.util.Bytes; public class Task public void batchGet() throws Exception *Begin*Configuration config = HBaseConfiguration.create();Connection Connection = ConnectionFactory.createConnection(config);List<String> rows = new ArrayList<>();rows.add("2018");/rows.add(&q

5、uot;2019");rows.add("2020");TableName tableName =TableName.valueOf(Bytes.toBytes("step1_student");Table table = Connection.getTable(tableName);getData(table,rows);/* 匸r" */public List<String> getData(Table table, List<String> rows) throws Exception List<G

6、et> gets = new ArrayList<>();for (String str : rows) Get get = new Get(Bytes.toBytes(str);gets.add(get);List<String> values = new ArrayList<>();Result results = table.get(gets);for (Result result : results) System.out.println("Row:" + Bytes.toString(result.getRow();for

7、 (Cell kv : result.rawCells() String family = Bytes.toString(CellUtil.cloneFamily(kv);String qualifire = Bytes.toString(CellUtil.cloneQualifier(kv);String value = Bytes.toString(CellUtil.cloneValue(kv);values.add(value);System.out.println(family + ":" + qualifire + "t" + value);r

8、eturn values;命令行:HBase點(diǎn)擊測(cè)評(píng)之前,請(qǐng)先開啟 Hadoop (start-dfs.sh)和HBase(start- hbase.sh),并且需要等待HBase初始化完成(20秒左右),否則無法在 中創(chuàng)建表。第 2 關(guān):批量刪除數(shù)據(jù)package step2;import java.io.IOException;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import org.apache.hadoop.conf.Configur

9、ation;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;import org.apache.hadoop.hbase.TableDescriptors;import org.apache.hadoop.hbase.TableName;import org.apache.hadoop.hbase.client.*;import org.apache.

10、hadoop.hbase.util.Bytes; public class Task public void batchDelete()throws Exception9/ 9*Begin*Configuration conf = HBaseConfiguration.create();Connection conn = ConnectionFactory.createConnection(conf);TableName tableName = TableName.valueOf("step2_table");Table table = conn.getTable(tabl

11、eName);List<String> rows1 = new ArrayList(); for(int i = 1; i<6;i+)String row = "row" + i; rows1.add(row);delete(table,rows1);List<String> rows2 = new ArrayList<>(); for(int i = 7;i<11;i+)String row = "row" + i; rows2.add(row);delete(table,rows2);* End*pub

12、lic void delete(Table table,List<String> rows)throws IOException List<Delete> deletes = new ArrayList<>();for(String str : rows)byte row = Bytes.toBytes(str);Delete delete = new Delete(row);deletes.add(delete);table.delete(deletes);第 3 關(guān):批量導(dǎo)入數(shù)據(jù)至 HBasepackage step3;import java.io.IO

13、Exception;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;impo

14、rt org.apache.hadoop.hbase.TableDescriptors;import org.apache.hadoop.hbase.TableName;import org.apache.hadoop.hbase.client.Admin;import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;import org.apache.hadoop.hbase.client.Conn

15、ection;import org.apache.hadoop.hbase.client.ConnectionFactory;import org.apache.hadoop.hbase.client.Get;import org.apache.hadoop.hbase.client.Put;import org.apache.hadoop.hbase.client.Result;import org.apache.hadoop.hbase.client.ResultScanner;import org.apache.hadoop.hbase.client.Scan;import org.ap

16、ache.hadoop.hbase.client.Table;import org.apache.hadoop.hbase.client.TableDescriptor;import org.apache.hadoop.hbase.client.TableDescriptorBuilder;import org.apache.hadoop.hbase.util.Bytes;public class Task public void batchPut()throws Exception*Begin*Configuration config = new Configuration();Connec

17、tion conn = ConnectionFactory.createConnection(config);Admin admin = conn.getAdmin();/ 建表TableName tableName = TableName.valueOf(Bytes.toBytes("stu");TableDescriptorBuilder builder =TableDescriptorBuilder.newBuilder(tableName);ColumnFamilyDescriptorfamilyColumnFamilyDescriptorBuilder.newBu

18、ilder(Bytes.toBytes("basic_info").build();ColumnFamilyDescriptorfamily2ColumnFamilyDescriptorBuilder.newBuilder(Bytes.toBytes("school_info").build( );=builder.setColumnFamily(family);builder.setColumnFamily(family2); admin.createTable(builder.build();List<Put> puts = new Ar

19、rayList<>();String rows = "20181122","20181123"Strin gbasic_i nfos二"阿克蒙",”male","1987-05- 23","telquot;,"HUNan-ChangSha","F格拉","male","1986-05- 23","telquot;,"HUNan-Cha

20、ngSha"String basic_colums = "name","gender","birthday","connect","address"Stringschool_infos="ChengXing","class12","Software","ChengXing","class 2 grade 2","Software"String school_colums = "college","class",&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論