`
sunasheng
  • 浏览: 123884 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Hbase基本API的使用

阅读更多
package test;

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;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Result;


public class HbaseDemo 
{
    //HBase是基于Hadoop的开源数据库,他以Google的BigTable为原型实现的
    //Region服务器
    //HBase在行的方向上将表分成多个Region,每个Region包含一定范围内的数据。随着表中的数据不断的增加    
    //一个Region会被分成多个新的Region
    //Region是HBase中分布式存储和负载均衡的最小单位,即一个表所有的Region会被分到多个Region服务器上
    //每个Region由一个或多个Store组成,每个Store保存一个列族的所有的数据,
    //每个Store由一个或多个memStore组成
     
    //主服务器
    //HBase每个时刻只有一个HMaster(主服务器程序)在运行HMaster将Region分配给Region服务器
    public static void main(String[] args) throws Exception{
    Configuration conf = HBaseConfiguration.create(); //初始化HBase的配置文件
    conf.set("hbase.zookeeper.quorum", "UbubtuSlave1,UbuntuSlave2,UbuntuSlave3");//指定HBase使用的Zookeeper的地址
    HBaseAdmin admin = new HBaseAdmin(conf);//实例化HBaseAdmin(该类用于对表的元数据进行操作并提供了基本的管理操作)

    HTableDescriptor tableDescriptor = new HTableDescriptor("tab1".getBytes());
    tableDescriptor.addFamily(new HColumnDescriptor("fam1"));
    admin.createTable(tableDescriptor);//创建一张新表,参数为类HTableDescriptor,其中是对表名和相关的列族的描述
    HTable table = new HTable(conf,"tab1"); //可对表进行相关操作的类

    Put putRow1 = new Put("row1".getBytes());//可以向表中插入数据,初始化时可以传递一个行键,表示向那一行插入数据
    putRow1.add("fam1".getBytes(), "coll".getBytes(),"vall".getBytes());//插入数据
    table.put(putRow1);

    System.out.println("add row2");
    Put putRow2 = new Put("row2".getBytes());
    putRow2.add("fam1".getBytes(), "col2".getBytes(), "val2".getBytes());
    putRow2.add("fam1".getBytes(), "col3".getBytes(), "val3".getBytes());
    table.put(putRow2);

    for(Result row:table.getScanner("fam1".getBytes()))//table.getScanner获得某一列族的所有数据,方法返回Result类
    {
        System.out.format("ROW\t%s\n", new String(row.getRow()));
        for(Map.Entry<byte[],byte[]> entry :row.getFamilyMap("fam1".getBytes()).entrySet())
        {
            //Result.getFamilyMap()可以获得以列名为key值为value的映射表
            String column = new String(entry.getKey());
            String value = new String(entry.getValue());
            System.out.format("COLUMN\tfam1:%s\t%s\n", column,value);
        }
      }

    admin.disableTable("tab1");//删除表tab1
    admin.deleteTable("tab1");//删除表tab1
    }
}
 

 

分享到:
评论

相关推荐

    HBase Java API类介绍

    HBase提供了Java API供开发者使用,以便更方便地与HBase进行交互。本文将详细介绍HBase Java API中的几个核心类及其功能。 #### 二、HBase Java API类介绍 ##### 1. HBaseConfiguration **关系**:`org.apache....

    hbase java api 所需最精简 jar

    "hbase java api 所需最精简 jar"这个标题意味着我们将探讨的是为了在Java环境中最小化依赖,但仍能实现基本HBase操作所需的JAR文件。 首先,我们需要理解HBase Java API的核心组件。HBase的Java客户端API提供了一...

    Hbase Java API

    HBase Java API HBase 是 Hadoop 的数据库,能够对大数据提供随机、实时读写访问。他是开源的,分布式的,多版本的,面向列的,存储模型。HBase 的整体结构主要包括 HBase Master、HRegion 服务器和 HRegion Server...

    hbase java api 访问 增加修改删除(一)

    在本文中,我们将深入探讨如何使用HBase的Java API进行数据的增加、修改和删除操作。HBase是一个基于Google Bigtable设计的开源分布式数据库,它属于Apache Hadoop生态系统的一部分,适用于处理大规模数据存储。通过...

    nosql实验四-HBaseShell API操作.docx

    在本实验中,我们将使用 HBase Shell API 来实现基本的数据操作,包括创建表、查看所有表、插入数据等。 HBase 配置和连接 在使用 HBase Shell API 之前,需要首先配置 HBase 的连接信息。在本实验中,我们使用的...

    scala API 操作hbase表

    以下是一些关键的Scala API操作HBase的基本步骤: 1. 引入必要的库: 首先,在你的Scala源代码文件中引入所需的库。例如: ```scala import org.apache.hadoop.conf.Configuration import org.apache.hadoop....

    HBase中文API

    HBase中文API为开发者提供了在中文环境中操作HBase的便利。 1. **入门** - **介绍**: HBase为大数据处理提供了实时读写能力,特别适合于存储海量稀疏数据。 - **快速开始**: 开发者通常需要了解如何创建表、插入...

    hbase java api 访问 查询、分页

    本文将深入探讨如何使用HBase Java API进行数据访问和分页查询。 首先,我们要了解HBase的基本结构,它是由行(Row)、列族(Column Family)、列(Column)和时间戳(Timestamp)组成。在Java API中,我们主要通过...

    hbase API

    学习HBase API,不仅需要理解其基本概念,还需要熟悉Java编程,因为HBase的官方API是用Java实现的。同时,了解Hadoop生态系统和分布式计算原理也有助于更好地运用HBase。通过实践和实验,可以逐步掌握如何利用HBase ...

    Hbase基本用法简介

    Hbase shell 、Hbase api、Hbase 配置

    使用Java API连接虚拟机HBase并进行数据库操作,Java源代码

    这就是使用Java API连接虚拟机上HBase的基本步骤。实际应用中可能需要处理更多的细节,比如错误处理、连接池管理以及更复杂的查询操作。了解这些基础后,你可以根据具体需求对代码进行扩展,以满足各种数据处理场景...

    Hbase 安装与基本使用

    **四、HBase基本操作** 1. **创建表**:使用HBase shell或Java API,通过`create '表名', '列族'`命令创建表,例如`create 'users', 'info'`创建名为users的表,列族为info。 2. **插入数据**:插入数据通过`put '...

    Hbase笔记 —— 利用JavaAPI的方式操作Hbase数据库(往hbase的表中批量插入数据).pdf

    在本文档中,我们将深入探讨如何使用Java API与HBase数据库进行交互,特别是关于如何创建表、修改表结构以及批量插入数据。...理解这些基本操作对于高效地使用HBase至关重要,特别是在大数据处理和分析的场景下。

    Hbase的JavaAPI

    在Java环境中,HBase提供了丰富的Java API供开发者进行数据操作,包括创建表、删除表、更新表以及查询表等基本功能。下面我们将深入探讨HBase的Java API及其在实际应用中的使用。 1. **HBase连接** 在Java中使用...

    hbase的java client实例

    本主题将深入探讨如何使用Java客户端API与HBase进行交互,包括集成Spring、MapReduce实例以及协处理器的使用。 首先,让我们从HBase的基础开始。HBase是构建在Hadoop文件系统(HDFS)之上的开源NoSQL数据库,它为非...

    hbase常用JAVA API

    HBase是一种分布式、高性能、...以上就是HBase常用Java API的基本操作。在实际应用中,还需要考虑并发控制、性能优化、错误处理等高级话题。通过熟练掌握这些API,你可以灵活地在Java应用程序中实现对HBase的数据操作。

    java api 访问hbase demo(Maven)

    在Java API中访问HBase是大数据处理中常见的一项任务,HBase作为一个分布式、列式存储的NoSQL数据库,常用于海量数据的实时读写。...通过这些基本操作,你将能够使用Java API高效地访问和管理HBase中的数据。

    Hbase的安装过程及基本操作

    在本文中,我们将详细讲解Hbase的安装过程以及基本操作,特别针对在Linux环境下使用清华大学镜像进行下载的情况。Hbase是一个分布式的、面向列的数据库,常用于大数据存储,是Apache Hadoop生态系统的一部分。以下是...

    HBASE API

    使用HBase API的`HTableDescriptor`类来定义表结构,然后调用`Admin`接口的`createTable()`方法来创建表。 2. **管理表** HBase提供了丰富的表管理功能,如修改表结构、删除表、禁用/启用表等。`Admin`接口提供了...

    如何使用Java API操作Hbase(基于0.96新的api)

    在Java中操作HBase,尤其是基于0.96版本的...以上就是使用Java API操作HBase的基本步骤。理解这些概念和方法对于有效管理和处理HBase中的数据至关重要。实际应用中,还需要考虑性能优化、并发控制以及错误处理等细节。

Global site tag (gtag.js) - Google Analytics