Hbase 创建表 插入数据Hb

Hbase 创建表 插入数据

创建表

public static void main(String[] args) throws IOException {

   // Instantiating configuration class 初始化配置文件
   Configuration con = HBaseConfiguration.create();

   // Instantiating HbaseAdmin class  初始化HbaseAdmin
   HBaseAdmin admin = new HBaseAdmin(con);

   // Instantiating table descriptor class  设置表名
   HTableDescriptor tableDescriptor = new
   TableDescriptor(TableName.valueOf("member"));

   // Adding column families to table descriptor  设置列族名(可设置多个)
   tableDescriptor.addFamily(new HColumnDescriptor("personal"));
   tableDescriptor.addFamily(new HColumnDescriptor("professional"));

   // Execute the table through admin
   admin.createTable(tableDescriptor);
   System.out.println(" Table created ");

   }

  

插入数据

 public static void main(String[] args) throws IOException {
        //第一步,设置HBsae配置信息
        Configuration configuration = HBaseConfiguration.create();
        //注意。这里这行目前没有注释掉的,这行和问题3有关系  是要根据自己zookeeper.znode.parent的配置信息进行修改。
        configuration.set("hbase.zookeeper.quorum", "192.168.222.128");  //hbase 服务地址
        configuration.set("hbase.zookeeper.property.clientPort", "2181"); //端口号
        //这里使用的是接口Admin   该接口有一个实现类HBaseAdmin   也可以直接使用这个实现类
        Admin admin = ConnectionFactory.createConnection(configuration).getAdmin();

        conn = ConnectionFactory.createConnection(configuration);

        if (admin != null) {
            try {
                //获取到数据库所有表信息
                HTableDescriptor[] allTable = admin.listTables();
                for (HTableDescriptor hTableDescriptor : allTable) {
                    System.out.println(hTableDescriptor.getNameAsString());
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

        String id = "001828";
        String name = "Paul_Smith";

        //2、创建数据对象
        String rowKey = "101" + "_" + id + "_" + name ;
        Put put = new Put(Bytes.toBytes(rowKey));
        byte[] family = Bytes.toBytes("personal");

        put.addColumn(family, Bytes.toBytes("key"), Bytes.toBytes(id));
        put.addColumn(family, Bytes.toBytes("value"), Bytes.toBytes(name));

        List<Put> puts = new ArrayList<Put>();
        puts.add(put);

        Table table = conn.getTable(TableName.valueOf("member"));
        table.put(puts);
        table.close();

        System.out.println("sucsssss");
    }

  

原文地址:https://www.cnblogs.com/Jomini/p/12247765.html

时间: 2024-07-28 23:21:36

Hbase 创建表 插入数据Hb的相关文章

Hbase创建表插入查询数据案例

package org.test; import java.io.IOException; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.HashSet; import java.util.List; import java.util.NavigableMap; import ja

数据库创建表,插入数据练习

create table shangpin("商品名称" varchar2(30), "商品种类" varchar2(30), "商品单价" number(30) )insert into shangpin values('手机','电子产品',6600)insert into shangpin values('苹果','水果',5)insert into shangpin values('花椒','调料',1)insert into shang

python数据库操作常用功能使用详解(创建表/插入数据/获取数据)

实例1.取得MYSQL版本 # -*- coding: UTF-8 -*- #安装MYSQL DB for python import MySQLdb as mdb con = None try: #连接mysql的方法:connect(host='localhost',user='root',passwd='root',db='test',port=3306) con = mdb.connect('localhost', 'root', 'root', 'test'); #所有的查询,都在连接

向oracle中的表插入数据的方法

向oracle中的表插入数据的方法有以下几种: 假设表名为User 第一种方法:select t.*,rowid from User t;-->点击钥匙那个标记就可向表中添加数据 第二种方法:select t.*,rowid from User t for update;-->点击钥匙那个标记就可向表中添加数据 第三种方法:在oracle中的table表中选中你要添加数据的那个表-->点击右键-->选中Edit data-->就可向表中添加数据 第四种方法:通过DAO层来添加

创建ACCESS数据库,并且创建表和数据。重点:关闭ACCESS数据库引用

/// <summary> /// 创建ACCESS数据库,并且创建表和数据 /// </summary> /// <param name="dictTable"></param> /// <param name="filePath"></param> /// <returns></returns> public int DataTableToAccess(Diction

SQL-Oracle存储过程-循环A表,向B表插入数据

--存储过程,查询A表,向B表插入数据 create or replace procedure prc_sg_sjtj_config(p_flag out varchar2) IS BEGIN FOR c_row IN (SELECT T.UNIT_NAME, T.DATA_NAME, T.TABLE_NAME, T.UPDATE_ODR, DECODE(T.DATA_METHODS, '文件', '拷贝', '接口', '服务接口', '交换平台') AS DATA_METHODS FROM

JS 向web sql数据表插入数据

var strSQL = "insert into tableName values (?,?,?)"; var info=[1,1,1]; //向web sql数据表插入数据. function insertInfo(strSQL,info){ //连接数据库(http://www.cnblogs.com/nb08611033/p/8227560.html) db = openDB(); if (db) { db.transaction(function(tr) { tr.execu

inserted触发器,一张表插入数据时,同时向另外一张表插入数据

有时候,一个服务器上有多个数据库,需要向其中一个数据库的表中插入数据时, 同时向另外一个数据的表里插入数据. 可以利用触发器和同义词(建立同义词的方法省略), 在一个数据库的表里插入数据时,同时向另外一个数据库的表里插入数据. 触发器代码如下: create trigger userInsertTrigger on [user] for insert as begin begin insert into usertab(UserID,UserAccount,UserPassword,UserNa

sql往主键自增的表插入数据

1.建立索引 -- Create sequence  create sequence SEQ_NEW_OLD_MGE minvalue 1400 maxvalue 999999999999999999999999999 start with 1420 increment by 1 cache 20; 注解:创建序列SEQ_NEW_OLD_MGE,最小值1400,最大值999999999999999999(我也不知道是几个9,根据实际随便填),从1420开始,每一次+1,缓冲区20个. 2.使用索