HBase Java API编程实践

这篇具有很好参考价值的文章主要介绍了HBase Java API编程实践。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本实例采用Eclipse开发工具。
启动Eclipse,启动以后,出现如下图所示界面,点击ok按钮。
HBase Java API编程实践,hbase,java,python
启动进入Eclipse以后的程序开发界面如下图所示。
HBase Java API编程实践,hbase,java,python
点击界面顶部的“File”菜单,在弹出的子菜单(如下图所示)中选择“New”,再选择子菜单中的“Project”。
HBase Java API编程实践,hbase,java,python
这时会弹出一个Java工程创建对话框(如下图所示),在“Project name”文本框中输入“HBaseTest”,在“JRE”选项卡中选中第2项“Use a project specific JRE”,然后点击界面底部的“Next”按钮。
HBase Java API编程实践,hbase,java,python
在弹出的界面中(如下图所示),用鼠标点击“Libraries”选项卡,然后,点击界面右侧的“Add External JARs…”按钮。
HBase Java API编程实践,hbase,java,python
在弹出的“JAR Selection”界面中(如下图所示),进入到“/home/hadoop/hbase/lib”目录,选中该目录下的所有jar文件,一共有111个jar文件(注意,不要选中ruby目录),然后,点击界面底部的“确定”按钮。
HBase Java API编程实践,hbase,java,python
HBase Java API编程实践,hbase,java,python

HBase Java API编程实践,hbase,java,python
然后可以看到jar包都添加进去了,再点击界面(如下图所示)底部的“Finish”按钮。
HBase Java API编程实践,hbase,java,python
如果弹出这个对话框,点击“yes”。
HBase Java API编程实践,hbase,java,python
在界面(如下图所示)左侧的“HBaseTest”工程名称上单击鼠标右键,在弹出的菜单中选择“New”,再在弹出的子菜单中选择“Class”。
HBase Java API编程实践,hbase,java,python
在弹出的“New Java Class”对话框(如下图所示)中,在“Name”文本框中输入“HBaseTest”,然后,点击界面底部的“Finish”按钮。
在代码窗口中(如下图所示),HBaseTest.java代码内容输入。
HBase Java API编程实践,hbase,java,python
HBaseTest.java代码内容具体如下:

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
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.Put;
import org.apache.hadoop.hbase.client.Table;


public class HbaseTest {
	 public static Configuration configuration;
	    public static Connection connection;
	    public static Admin admin;
	    public static void main(String[] args)throws IOException{
	        init();
	        createTable("HbaseTest",new String[]{"score"});
	        insterRow("HbaseTest","zhangsan","score","English","69");
	        insterRow("HbaseTest","zhangsan","score","Math","86");
	        close();
	    }


	    //建立连接
	    public static void init(){
	        configuration  = HBaseConfiguration.create();
	        configuration.set("hbase.rootdir","hdfs://localhost/hbase");
	        try{
	            connection = ConnectionFactory.createConnection(configuration);
	            admin = connection.getAdmin();
	        }catch (IOException e){
	            e.printStackTrace();
	        }
	    }
	    //关闭连接
	    public static void close(){
	        try{
	            if(admin != null){
	                admin.close();
	            }
	            if(null != connection){
	                connection.close();
	            }
	        }catch (IOException e){
	            e.printStackTrace();
	        }
	    }
	    /*
		 *  创建表,参数tableName为表的名称,字符串数组fields为存储记录各个域名称的数组。
		 * 要求当HBase已经存在名为tableName的表的时候,先删除原有的表,然后再创建新的表。
		 */
		public static void createTable(String tableName, String[] fields) throws IOException {
			init();
			TableName tablename = TableName.valueOf(tableName);
			if (admin.tableExists(tablename)) {
				System.out.println("该表已存在,删除后重建。");
				admin.disableTable(tablename);
				admin.deleteTable(tablename);
			}
	 
			HTableDescriptor htd = new HTableDescriptor(tablename);
			for (String str : fields) {
				HColumnDescriptor hcd = new HColumnDescriptor(str);
				htd.addFamily(hcd);
			}
			admin.createTable(htd);
			close();
		}
		
		 //向表添加数据
	    public static void insterRow(String tableName,String rowKey,String colFamily,String col,String val) throws IOException {
	        init();
	        Table table = connection.getTable(TableName.valueOf(tableName));
	        Put put = new Put(rowKey.getBytes());
	        put.addColumn(colFamily.getBytes(), col.getBytes(), val.getBytes());
	        table.put(put);
	        table.close();
	        close();
	    }
}

在开始运行程序之前,需要启动HDFS和HBase。
HBase Java API编程实践,hbase,java,python

然后,如下图所示,点击界面中的运行图标右侧的“倒三角”,在弹出的菜单中选择“Run As”,再在弹出的菜单中点击“1 Java Application”,开始运行程序。
HBase Java API编程实践,hbase,java,python
运行结束后,可以到HBase Shell交互式环境中,使用如下命令查看HbaseTest表是否创建成功:
HBase Java API编程实践,hbase,java,python

或者在eclipse右侧可以看到创建成功的表:
HBase Java API编程实践,hbase,java,python文章来源地址https://www.toymoban.com/news/detail-754057.html

到了这里,关于HBase Java API编程实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HBase Java API 开发:批量操作 第2关:批量删除数据

    删除单行数据 删除一行数据很简单,我们来看个示例: 这段代码就可以删除行键为 row1 的行。 删除多行数据 如何删除多行数据呢? 相信你已经猜到了,既然 get() 方法有重载方法,那应该 delete() 方法也有,确实: 这样就可以删除多行数据啦。 编程要求 还等啥,亲自试一试

    2024年02月05日
    浏览(46)
  • HBase的编程实践(实验3_熟悉常用的HBase操作)

    一、Hbase中使用Shell命令: ① HBase中创建表:(create 命令:第一个变量是表名,然后是列族名) 语法:create \\\'表名称\\\',\\\'列族名称1\\\',\\\'列族名称2\\\',\\\'列族名称N\\\' 通过命令 describe \\\'student\\\'  进行查看表的结构: (desc ‘表名’,查看表的结构) ✿ 增加数据 ② put: (put 命令:第一

    2024年02月01日
    浏览(32)
  • HBase开发: Java API 管理表 第1关:JavaAPI获取表的列表

    本关我们来使用 JavaApi 对 HBase 中的表进行管理,第一关我们来学习如何列出所有的表。 获取表的列表 如何使用 Java 列出 HBase 中所有的表呢? 在HBase中我们要获取一张表的基本信息需要用到一个类: TableDescriptor ; 通过 TableDescriptor 我们可以获取表的名字,列族等信息; 好了

    2024年02月07日
    浏览(31)
  • 大数据实验三-HBase编程实践

    目录 一.实验内容 二.实验目的 三.实验过程截图及说明 1、安装HBase 2、配置伪分布式模式: 3、使用hbase的shell命令来操作表: 4、使用hbase提供的javaAPI来编程实现类似操作: 5、实验总结及心得体会 6、完整报告在文章开头,挂载。 HBase编程实践: 1)在Hadoop基础上安装H

    2024年04月12日
    浏览(55)
  • 大数据开源框架之HBase编程实践

    HBase的安装部署请看: (30条消息) 大数据开源框架环境搭建(五)——Hbase完全分布式集群的安装部署_木子一个Lee的博客-CSDN博客 目录 任务1:用HBase提供的HBase Shell命令实现以下指定功能: 1.列出HBase所有的表的相关信息 2.在终端打印出指定的表的所有记录数据; 3.向已经创建好

    2024年02月01日
    浏览(35)
  • HBase Java API 开发:表的扫描与扫描的缓存和批量处理 第1关:批量处理

    批量操作 如果我们去查看 HBaseAPI 的源码会发现,在上次实训中我们使用的 delete、get,put 这些批量操作,实际上都是调用了 batch() 方法。 查看 put(ListPut puts) 函数源码: 我们可以发现 put(ListPut puts) 方法最终还是调用的 batch(final List? extends Row actions, final Object[] results, int rpcTi

    2024年02月09日
    浏览(31)
  • HBase2.2.2安装和编程实践

    如果你正在安装,请用hadoop用户 HBase介绍 HBase是一个分布式的、面向列的开源数据库,源于Google的一篇论文《BigTable:一个结构化数据的分布式存储系统》。HBase以表的形式存储数据,表有行和列组成,列划分为若干个列族/列簇(column family)。欲了解HBase的官方资讯,请访问(htt

    2024年02月04日
    浏览(36)
  • 大数据技术原理与应用实验指南——HBase编程实践

    一、 实验目的 (1) 熟练使用HBase操作常用的Shell命令。 (2) 熟悉HBase操作常用的Java API。 二、 实验内容 (1) 安装HBase软件。 (2) 编程实现指定功能,并利用Hadoop提供的Shell命令完成相同的任务(实现增、删、改、查基本操作,统计表的行数,打印表的记录等操作)。

    2024年02月21日
    浏览(30)
  • 3、HBase的java API基本操作(创建、删除表以及对数据的添加、删除、查询以及多条件查询)

    1、hbase-2.1.0介绍及分布式集群部署、HA集群部署、验证、硬件配置推荐 2、hbase-2.1.0 shell基本操作详解 3、HBase的java API基本操作(创建、删除表以及对数据的添加、删除、查询以及多条件查询) 4、HBase使用(namespace、数据分区、rowkey设计、原生api访问hbase) 5、Apache Phoenix(5.0.0-5.

    2024年02月08日
    浏览(48)
  • Hadoop(05) HBase2.5.5安装和编程实践指南

    HBase是一个基于Apache Hadoop的 分布式、可扩展、面向列的NoSQL数据库系统 。它被设计用于处理大规模数据集,并提供快速的读写访问性能。 以下是HBase的一些关键特点和概念: 列存储结构:HBase使用列存储结构,意味着数据被组织成行和列的形式。每个表可以有灵活的列族定义

    2024年02月03日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包