ImageVerifierCode 换一换
格式:DOC , 页数:5 ,大小:29.67KB ,
资源ID:3192630      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-3192630.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于Java的HBase客户端编程.doc)为本站会员(j****9)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于Java的HBase客户端编程.doc

1、基于 Java 的 HBase 客户端编程本文以 HBase 0.90.2 为例,介绍如何在 Windows 系统,Eclipse IDE 集成环境下,使用Java 语言,进行 HBase 客户端编程,包含建立表、删除表、插入记录、删除记录、各种方式下的查询操作等。 AD: 本文以 HBase 0.90.2 为例,介绍如何在 Windows 系统,Eclipse IDE 集成环境下,使用 Java 语言,进行HBase 客户端编程,包含建立表、删除表、插入记录、删除记录、各种方式下的查询操作等。1. 准备工作1. 下载后安装 jdk 包(这里使用的是 jdk-6u10-rc2-bin-b32-

2、windows-i586-p-12_sep_2008); 2. 下载 eclipse,解压到本地(这里使用的是 eclipse-java-helios-SR2-win32); 3. 下载 HBase 包,解压安装包到本地(这里使用的是 hbase-0.90.2)。 2. 搭建开发环境1. 运行 Eclipse,创建一个新的 Java 工程“HBaseClient”,右键项目根目录,选择 “Properties”-“Java Build Path”-“Library”-“Add External JARs”,将 HBase 解压后根目录下的 hbase-0.90.2.jar、hbase-0.90

3、.2-tests.jar 和 lib 子目录下所有 jar 包添加到本工程的 Classpath 下。 2. 按照步骤 1 中的操作,将自己所连接的 HBase 的配置文件 hbase-site.xml 添加到本工程的Classpath 中,如下所示为配置文件的一个示例: 1. 2. 3. hbase.rootdir 4. hdfs:/hostname:9000/hbase 5. 6. 7. hbase.cluster.distributed 8. true 9. 10. 11.hbase.zookeeper.quorum 12.*.*.*.*, *.*.*.*, *.*.*.* 13. 14

4、. 15.hbase.defaults.for.version 16.0.90.2 17. 18. 3. 下面可以在 Eclipse 环境下进行 HBase 编程了。 3. HBase 基本操作代码示例3.1 初始化配置1. private static Configuration conf = null; 2. /* 3. * 初始化配置 4. */ 5. static 6. conf = HBaseConfiguration.create(); 7. 3.2 创建表1. /* 2. * 创建表操作 3. * throws IOException 4. */ 5. public void c

5、reateTable(String tablename, String cfs) throws IOException 6. HBaseAdmin admin = new HBaseAdmin(conf); 7. if (admin.tableExists(tablename) 8. System.out.println(“表已经存在!“); 9. 10. else 11. HTableDescriptor tableDesc = new HTableDescriptor(tablename); 12. for (int i = 0; i cfs.length; i+) 13. tableDe

6、sc.addFamily(new HColumnDescriptor(cfsi); 14. 15. admin.createTable(tableDesc); 16. System.out.println(“表创建成功!“); 17. 18. 3.3 删除表1. /* 2. * 删除表操作 3. * param tablename 4. * throws IOException 5. */ 6. public void deleteTable(String tablename) throws IOException 7. try 8. HBaseAdmin admin = new HBaseA

7、dmin(conf); 9. admin.disableTable(tablename); 10. admin.deleteTable(tablename); 11. System.out.println(“表删除成功!“); 12. catch (MasterNotRunningException e) 13. e.printStackTrace(); 14. catch (ZooKeeperConnectionException e) 15. e.printStackTrace(); 16. 17. 3.4 插入一行记录1. /* 2. * 插入一行记录 3. * param tablen

8、ame 4. * param cfs 5. */ 6. public void writeRow(String tablename, String cfs) 7. try 8. HTable table = new HTable(conf, tablename); 9. Put put = new Put(Bytes.toBytes(“rows1“); 10. for (int j = 0; j cfs.length; j+) 11. put.add(Bytes.toBytes(cfsj), 12. Bytes.toBytes(String.valueOf(1), 13. Bytes.toBy

9、tes(“value_1“); 14. table.put(put); 15. 16. catch (IOException e) 17. e.printStackTrace(); 18. 19. 3.5 删除一行记录1. /* 2. * 删除一行记录 3. * param tablename 4. * param rowkey 5. * throws IOException 6. */ 7. public void deleteRow(String tablename, String rowkey) throws IOException 8. HTable table = new HTabl

10、e(conf, tablename); 9. List list = new ArrayList(); 10. Delete d1 = new Delete(rowkey.getBytes(); 11. list.add(d1); 12. table.delete(list); 13. System.out.println(“删除行成功!“); 14. 3.6 查找一行记录1. /* 2. * 查找一行记录 3. * param tablename 4. * param rowkey 5. */ 6. public static void selectRow(String tablename,

11、 String rowKey) 7. throws IOException 8. HTable table = new HTable(conf, tablename); 9. Get g = new Get(rowKey.getBytes(); 10. Result rs = table.get(g); 11. for (KeyValue kv : rs.raw() 12. System.out.print(new String(kv.getRow() + “ “); 13. System.out.print(new String(kv.getFamily() + “:“); 14. Syst

12、em.out.print(new String(kv.getQualifier() + “ “); 15. System.out.print(kv.getTimestamp() + “ “); 16. System.out.println(new String(kv.getValue(); 17. 18. 3.7 查询表中所有行1. /* 2. * 查询表中所有行 3. * param tablename 4. */ 5. public void scaner(String tablename) 6. try 7. HTable table = new HTable(conf, tablena

13、me); 8. Scan s = new Scan(); 9. ResultScanner rs = table.getScanner(s); 10. for (Result r : rs) 11. KeyValue kv = r.raw(); 12. for (int i = 0; i kv.length; i+) 13. System.out.print(new String(kvi.getRow() + “ “); 14. System.out.print(new String(kvi.getFamily() + “:“);15. System.out.print(new String(kvi.getQualifier() + “ “); 16. System.out.print(kvi.getTimestamp() + “ “); 17. System.out.println(new String(kvi.getValue(); 18. 19. 20. catch (IOException e) 21. e.printStackTrace(); 22. 23.

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。