编辑: 霜天盈月祭 2017-10-02

2015 华为技术有限公司 目录 1. HBase常用接口介绍 2. 常用Shell接口 3. 常用Java接口 第12页 版权所有?

2015 华为技术有限公司 在开始使用HBase Java API之前,需要做几项准备工作: ? 要求JDK版本1.7及以上版本. ? HBase开发相关的jar包(包括ZooKeeper、HDFS、MapReduce等)需要和 HBase集群节点上的版本保持一致. ? 在hosts文件中添加HBase服务器节点的IP和HostName的映射关系. ? HBase采用的接口与Apache HBase保持一致,请参见: http://hbase.apache.org/apidocs/index.html 工程搭建 C 准备工作 第13页 版权所有?

2015 华为技术有限公司 1. 获取客户端安装包中的配置文件core-site.xml、hbase-site.xml、hdfs- site.xml并放置在到Java工程中的conf目录下.并将conf目录添加到classpath下. 2. 获取客户端安装包中的HBase开发依赖的jar文件,并添加到工程的classpath路 径下. 3. 具体操作请参考CPI文档中开发环境准备的章节. 在Eclipse工具中,单击 New >

Java Project ,输入工程名,单击 Finish 即可创建Java工程. 下载客户端安装包 配置开发环境 创建Java工程 开发应用 编译运行 // 初始化配置信息 Configuration conf = HBaseConfiguration.create();

// 创建表 HBaseAdmin admin = new HBaseAdmin(conf);

admin.createTable(htd);

// 插入一行数据 HTable table = new HTable(conf, tableName);

Put put = new Put(Bytes.toBytes(

012005000201 ));

put.add(FAMILIES, Bytes.toBytes( name ), Bytes.toBytes( 张三 ));

put.add(FAMILIES, Bytes.toBytes( gender ), Bytes.toBytes( 男 ));

put.add(FAMILIES, Bytes.toBytes( address ), Bytes.toBytes( 广东省深圳市 ));

table.put(put);

工程搭建 C 准备工作 第14页 版权所有?

2015 华为技术有限公司 // 安全版本 Configuration conf = HBaseConfiguration.create();

conf.addResource( user-hbase.xml );

if (User.isHBaseSecurityEnabled(conf)) { conf.set(HBASE_KEYTAB_FILE, System.getProperty( user.dir ) + File.separator + conf + File.separator + conf.get(HBASE_KEYTAB_FILE));

String krbfilepath = System.getProperty( user.dir ) + File.separator + conf + File.separator + krb5.conf ;

System.setProperty( java.security.krb5.conf , krbfilepath);

try { ZKUtil.loginClient(conf, HBASE_KEYTAB_FILE, HBASE_KERBEROS_PRINCIPAL, InetAddress.getLocalHost().getCanonicalHostName());

User.login(conf, HBASE_KEYTAB_FILE, HBASE_KERBEROS_PRINCIPAL, InetAddress.getLocalHost().getCanonicalHostName());

} catch (IOException e) { e.printStackTrace();

} } 通过调用HBaseConfiguration的create()方法来实例化.否则,将 无法正确加载HBase中的相关配置 项 常用Java接口 C 创建安全版本的 Configuration实例 第15页 版权所有?

2015 华为技术有限公司 通过HBaseAdmin的createTable方法来创 建一张表,指定表名、列族名称. 创建表分为快速建表和预分Region建表,前 者表示创建表后整张表只有一个Region,随 着数据量的增加会自动分裂成多个Region;

后者表示,创建表时预先分配多个Region, 此种方法建表可以提高写入大量数据初期的 数据写入速度 示例: // 表名和列族名称 String tableName = myTable ;

String[........

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题