首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

如何使用Java连接Kerberos的HBase

在Linux下使用HBase客户端访问HBase数据时需要先kinit初始化Kerberos账号,认证完成后我们就可以直接使用HBase shell操作HBase了。...通过Linux的Kinit命令可以方便的完成Kerberos的认证,那么在Java开发中如何完成Kerberos的登录认证呢?本篇文章主要讲述如何使用Java连接Kerberos环境的HBase。...] 3.创建Java工程 ---- 1.使用Intellij创建Java Maven工程 [e5xdb4edj6.jpeg] 2.在工程下创建kerberos-conf目录,将下载的客户端配置文件拷贝至此目录...; import java.io.IOException; /** * Java访问Kerberos环境的HBase数据库 * @Date 2107-10-25 22:22:58 */ publicclass...在使用Kerberos账号进登录行认证时,如果使用的是普通账号(fayson),则需要为fayson账号授权,否则fayson用户无权限访问HBase库的表。

5.6K80

HBase使用

2、HBase使用场景和成功案例 互联网搜索问题:爬虫收集网页,存储到BigTable里,MapReduce计算作业扫描全表生成搜索索引,从BigTable中查询搜索结果,展示给用户。...现在只是对hbase使用。 就先从使用开始入门。 二、 HBase使用 hbase是数据库, 数据库那就是存储数据的, 那就离不开curd....DDL命令 命令 命令含义 命令使用示例 alter 修改表的列族的描述属性 aliter 't1',NAME => 'f1',VERSIONS => 5 alter_async 异步修改表的列族的描述属性...=> true} hbase> scan 't1', {METRICS => ['RPC_RETRIES', 'ROWS_FILTERED']} // 使用过滤器, show_filters...查看所有可以使用的过滤器 hbase> scan 't1', {ROWPREFIXFILTER => 'row2', FILTER => " (QualifierFilter (>=, 'binary

1.6K30

使用 HBase - HBase Shell 命令

数人之道原创文章,转载请关注本公众号联系我们 HBase Shell 命令文章大纲 HBase 数据库默认的客户端程序是 HBase Shell,它是一个封装了 Java 客户端 API 的 JRuby...使用 quit 或 exit 命令可退出 HBase 命令行环境。 [hadoop@hadoop100 ~]$ hbase shell 下面介绍部分常用的 HBase Shell 操作命令。...插入数据 HBase 使用 put 命令可以向数据表中插入一行新的数据,或者覆盖指定行的数据。...查看用户 查看当前 HBase 使用的用户: whoami 此命令返回 HBase 当前用户的详细信息。 2.2 命名空间管理 2.2.1....使用 show_filters 命令可以查看当前 HBase 支持的过滤器类型: 图3-1:查看 HBase 过滤器类型 使用过滤器的命令语法格式如下: scan 'namespace:table',

10.9K31

如何使用Java访问非Kerberos环境的HBase

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。...Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1 文档编写目的 在前面的文章Fayson介绍了《如何使用Java...连接Kerberos的HBase》,虽然非Kerberos环境下访问HBase比较简单,本篇文章Fayson还是主要介绍使用Java访问非Kerberos环境的HBase。...2.在开发环境下为本机配置集群hosts信息,因为下载的HBase客户端配置使用的为hostname ?...5 总结 1.Java开发访问HBase时,注意Connection对象不要重复创建,在使用完成后记得进行close操作,以避免频繁操作时将Zookeeper的连接数占满。

1.5K40

Java 操作 HBase 教程

一、简介 在上一篇文章 HBase 基础入门 中,我们已经介绍了 HBase 的一些基本概念,以及如何安装使用的方法。...那么,作为一名 Javaer,自然是希望用 Java 的方式来与 HBase 进行对话了。所幸的是,HBase 本身就是用 Java 编写的,天生自带了 Java 原生API。...在使用 hbase-client 之前,有几个要点需要注意: 客户端需要能访问 Zoopkeeper,再获得 HMaster、RegionServer 实例进行操作 客户端需运行在HBase/Hadoop...集群内,HBase使用 hostname 来定位节点,因此要求客户端能访问到对应的主机名(或子域名) 如果是远程客户端则需要配置本地的hosts文件。...下面这个图,有助于理解 Client 与 HBase 集群的交互架构: ? 下面开始介绍 client 的使用

3.8K10

HBase Java Client API

概述 在这篇文章中,我们看一下 HBase Java 客户端 API 如何使用HBaseJava 编写,并提供 Java API 与之通信。...因此,我们学习一下如何使用 HBaseJava 客户端 API 对 HBase 表进行 CRUD 操作。 2. Put 使用 Put 向表中插入数据。...最后使用 Table 的 put() 方法向 HBase 中存储数据,使用如下方法进行调用: void put(Put put) throws IOException 如下代码所示向 HBase 表中插入单行数据...当用户使用 get() 方法获取数据时,HBase 返回的结果包含所有匹配的单元格数据,这些数据被封装在一个 Result 实例中返回给用户。...Delete 下面我们介绍使用客户端 API 删除已存储数据的方法。Table 类的 delete() 方法可以从 HBase 表中删除数据。delete() 方法需要 Delete 类的实例。

2.3K10

如何优雅地使用 java 连接 HBase 客户端

放弃不难,但坚持很酷~ HBase 版本:1.2.0-cdh5.7.0 一、客户端的长短连接 java 远程连接 HBase 客户端,大体分为两种方式。一种是长连接,一种是短连接。...二、使用单例模式来初始化 HBase 客户端 以 HBase 为例,如果使用长连接,那就得需要确保 connection 唯一(不唯一的话,有可能造成资源浪费或者连接数过多报错),所有的操作都使用这一个...但我们也可以使用静态内部类的形式实现上述场景。静态内部类也是实现单例模式的一种,保证只加载一次,懒加载并且线程安全。...因为 HBaseUtil.java 的实例化是靠静态内部类的静态常量 instance 实例化的。instance 是常量,因此只能赋值一次;它还是静态的,因此随着内部类一起加载。...3、不只是 HBase 可以这样初始化客户端,Elasticsearch 等等的长连接也都可以,这样,你学会了吗?

3.2K30

科学使用HBase Connection

这个问题的答案简单而不简单:HBase客户端是不需要维护连接池的,或者说,Connection对象已经帮我们做好了。...但是,对Connection使用不当是HBase新手(包括很久很久之前的我自己)最容易犯的错误之一,常见错误用法有: 每个线程开一个连接,线程结束时关闭; 每次读写HBase时开一个连接,读写完毕后关闭...; 自行实现Connection对象的池化,每次使用时取出一个。...之前已经多次提到过,创建HBase连接是非常“贵”(expensive)的操作,并且创建过多的Connection会导致HBase拒绝连接。...AbstractRpcClient中使用了一个名为PoolMap的结构来维护ConnectionId与连接池之间的映射关系,在构造方法中初始化。

4.1K30

HBaseJava API操作

Java API操作 1、导jar包     导入开发包。     将hbase安装包中lib下所有jar包导入java项目。...2、API javaHBase数据模型 HBaseAdmin 数据库(DataBase) HBaseConfiguration HTable 表(Table) HTableDescriptor 列族...一般情况下,HBaseConfiguration会使用构造函数进行初始化,然后在使用其他方法。 3.HTable     可以用来和HBase表直接通信。此方法对于更新操作来说是非线程安全的。...它通常在创建表或者为表添加列族的时候使用。列族被创建后不能直接修改,只能通过删除然后重新创建的方式。列族被删除的时候,列族里面的数据也会同时被删除。...使用此类提供的方法可以直接获取值或者各种Map结构(key-value对)。

4K60
领券