-
关于hbase的java客户端操作。百度不到。0
配置文件,在src下
hbase-site.xml<configuration> <property> <name>hbase.rootdir</name> <value>hdfs://sun247:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>*.*.*.*, *.*.*.*, *.*.*.*</value> </property> <property skipInDoc="true"> <name>hbase.defaults.for.version</name> <value>0.94.8</value> </property> </configuration>
hbase的工具类static{ HBaseConfiguration.create(); } public static Result selectRow(String tableName, String rowKey) throws IOException{ if(StringUtils.isBlank(tableName) || StringUtils.isBlank(rowKey)) return null; Result result = null; try { HTable table = new HTable(config, tableName); Get get = new Get(rowKey.getBytes()); result = table.get(get); } catch (IOException e) { log.error("查询错误", e); new Throwable("at HbaseUtil.selectRow() error"); } return result; }
junit测试类public void testSelectRow(){ try { Result result = HbaseUtil.selectRow("H_User", "100"); for(KeyValue keyValue : result.raw()){ System.out.println(keyValue.getRow()); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
报错java.lang.NullPointerException at org.apache.hadoop.hbase.client.ServerCallable.withRetries(ServerCallable.java:153) at org.apache.hadoop.hbase.client.HTable.get(HTable.java:677) at cn.duduniu.fj.util.HbaseUtil.selectRow(HbaseUtil.java:51) at cn.duduniu.fj.util.TestHbaseUtil.testSelectRow(TestHbaseUtil.java:14) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at junit.framework.TestCase.runTest(TestCase.java:168) at junit.framework.TestCase.runBare(TestCase.java:134) at junit.framework.TestResult$1.protect(TestResult.java:110) at junit.framework.TestResult.runProtected(TestResult.java:128) at junit.framework.TestResult.run(TestResult.java:113) at junit.framework.TestCase.run(TestCase.java:124) at junit.framework.TestSuite.runTest(TestSuite.java:243) at junit.framework.TestSuite.run(TestSuite.java:238) at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
第一次操作,代码参考网络的。但是报错了。百度不到。2013年7月04日 17:36
目前还没有答案
相关推荐
在Java客户端上连接HBase集群时,需要配置一系列的环境和依赖,其中包括了`winutils`工具。`winutils-2.2.0.zip`这个压缩包就是针对Windows用户提供的,用于配置Hadoop环境,以便于与HBase交互。 首先,`winutils....
本文将详细介绍一个专为HBase设计的可视化客户端工具,该工具不依赖于Phoenix连接,而是直接与HBase服务器通信,支持Hbase 1.x版本,提供类似于PL/SQL的友好界面,使得数据管理和查询变得更加便捷。 首先,这个可视...
整个流程就是这样,它涉及到了Java I/O操作、HBase连接与表操作、以及数据的读取和写入。在实际应用中,可能还需要考虑错误处理、性能优化、并发控制等问题。对于大型文件,可能需要使用多线程或者Hadoop MapReduce...
此外,HBase的监控和故障排查也是客户端使用中不可忽视的部分。HBase提供了一套完整的监控工具,如HBase Master Web UI和Region Server Web UI,可以通过这些界面查看集群状态、表信息、Region分布等,帮助我们及时...
在Java中操作HBase是一种常见的任务,特别是在大数据处理和存储的场景中。HBase是一个分布式的、基于列族的NoSQL数据库,它构建在Hadoop之上,提供了高性能、低延迟的数据存储和访问能力。本教程将详细介绍如何使用...
接着,jackson-databind-2.12.4.jar是Jackson JSON库的数据绑定模块,它允许将JSON对象映射到Java对象,反之亦然,这对于HBase中的数据序列化和反序列化至关重要。同时,jackson-core-2.12.4.jar是Jackson库的基础...
Java连接HBase主要依赖于Apache HBase提供的Java客户端库,这个库包含了所有必要的类和接口,使得Java应用程序能够与HBase进行交互。HBase是一个分布式、版本化的NoSQL数据库,基于Google的Bigtable设计,运行在...
在Java中,HBase的客户端操作通常涉及以下几个关键类: 1. **HBase Configuration**:配置对象,用于设置HBase连接参数,如Zookeeper地址、HBase集群地址等。`HBaseConfiguration.create()`可创建一个默认配置。 2...
`hbase-server.jar`是HBase服务器端的组件,包含了RegionServer和Master等服务的实现,但如果你只是开发Java客户端应用,可能不需要直接引入这个包。 `hadoop-common.jar`和`hadoop-hdfs.jar`是Hadoop的核心库和...
2. **HBase客户端API**:HBase提供了Java客户端API,支持线程安全的`HTablePool`,这个池可以管理多个`HTable`实例,每个实例对应一个HBase表,允许多线程共享和复用这些实例,减少创建和销毁HTable对象的开销。...
在HBase Java API使用方面,HBaseConfiguration对象是每个HBase客户端都需要使用的,它代表了HBase的配置信息。可以通过默认构造函数来创建HBaseConfiguration对象,它会尝试从类路径中的hbase-default.xml和hbase-...
导入数据到HBase通常通过HBase的客户端API实现,这些API提供了连接到HBase集群、创建表、插入数据等功能。例如,在Java中,我们可以使用HBase的Admin API创建表,然后使用Put对象添加数据。在导入过程中,需要将JSON...
Phoenix使用Java存根(stub)和服务器端的元数据服务来处理SQL到HBase的映射,从而减轻了客户端的负担。 在Squirrel SQL Client中,要使用"phoenix-5.0.0-HBase-2.0-client.jar",你需要首先将其添加到Squirrel的驱动...
对于编程实现,可以通过Java API来执行相同的操作,这要求对HBase的Java客户端库有深入了解,包括连接HBase集群、创建表、写入和读取数据等方法。 对于实验要求,除了列出所有表的信息,还需要实现其他功能,如创建...
以上只是HBase Java API的基本操作,实际应用中还涉及到多线程、批量操作、数据同步、性能优化等复杂场景。理解并熟练运用这些API,可以帮助开发者高效地进行HBase的数据操作。在实践中,需要注意数据模型的设计,...
hbase phoenix 客户端连接jdbc的jar包,SQuirreL SQL Client,DbVisualizer 等客户端连接hbase配置使用
在 HBase 中,客户端(如 `HbaseClient.java` 文件所示)是应用程序与 HBase 交互的接口。客户端通过连接到 ZooKeeper 获取 Master Server 的位置,然后与 RegionServer 进行通信,执行 CRUD(创建、读取、更新和...
因此,通过Thrift接口访问HBase时,会感觉到与Java客户端API有所区别。 目前,HBase Thrift API仍在不断发展中,尽管在HBase 0.94版本中可以使用一个早期版本的Thrift API,但它缺少了一些关键特性,例如过滤器...
gohbase是一个使用Go语言编写的HBase客户端,它完全用Go语言实现,并且在设计上受到了AsyncHBase Java客户端的启发。gohbase的特点在于其简单和轻量级的代码库,并且不需要Java环境支持,即不依赖于任何Java抽象工厂...
- **第6章:替代HBase客户端**:介绍除了Java API之外的其他语言接口(如Thrift、RESTful API等),以及如何使用这些客户端进行开发。 - **第三部分:示例应用程序** - **第7章:构建实际应用**:通过一系列具体...