• HBase 学习之一 <<HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行>>


    HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行

                          ----首先感谢网络能够给我提供一个开放的学习平台,如果没有网上的技术爱好者提供的帮助,很难学好hbase。

    一、hbase简介

           官方:HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构存储集群。

           自己的理解:hbase其实就是一个在hadoop基础上的一个数据库,运行在HDFS文件系统之上,特点是一个基于内存面向列的数据库。

            hbase架构图

           

    二、Hbase数据模型

      1、概念图

      基于Google的bigtable模型(key-value对)

      

      2、逻辑视图

      网上查了一些资料,举一个例子来说说我的理解吧。

    row key data
    wangsan

    info:{'height:178','sex:boy'}

    message:{'tpl:18363636363','email:1@qq.com'}

    lisi

    info:{'height:176','sex:gril'}

    message:{'tpl:18363636364','email:2@qq.com'}

          

      3、hbase的key和列族

          与nosql数据库们一样,row key是用来检索记录的主键。

      

      1)每行都有row key。

      2)每条记录分隔成列族集合。

      3)每个列族由若干列组成。

    三、API操作

    创建一个表test,首先导入jar包,在hive的安装目录下的lib中去找就可以了。

    public static void main(String[] args) throws MasterNotRunningException, ZooKeeperConnectionException, IOException {
            // TODO Auto-generated method stub
            Configuration con = HBaseConfiguration.create();
            HBaseAdmin admin = new HBaseAdmin(con);
            
            TableName name = TableName.valueOf("test");
            
            HTableDescriptor descriptor = new HTableDescriptor(name);
            
            HColumnDescriptor columnDescriptor = new HColumnDescriptor("data");
            descriptor.addFamily(columnDescriptor);
            
            admin.createTable(descriptor);
            
            System.out.println("create ok");
        }

    将程序导出成jar文件,放到Linux系统中的新建目录/opt/bin/hbase中吧。

    首先:执行下面两部操作。

    执行jar文件。

    test表创建成功。

    hbase shell指令。

    执行list指令,就可以看到hbase下面新建号的test表。

  • 相关阅读:
    C# 多态的实现
    资料整理工具篇
    轻量级ORMPetaPoco及改进
    偶然路过,所以就留点东西吧。
    Sencha Touch 提高篇 组件选择器
    Sencha Touch 数据层篇 Proxy(上)
    Sencha Touch 数据层篇 Model
    Sencha Touch 2.0 威老的自定义组件:CardPanel
    Sencha Touch 2.0 有哪些新特征? Sencha Touch 官方指南系列
    Sencha Touch 数据层篇 Store
  • 原文地址:https://www.cnblogs.com/invban/p/5522643.html
Copyright © 2020-2023  润新知