【发布时间】:2016-10-30 10:18:08
【问题描述】:
我使用 Phoenix JDBC Driver 在以下代码 sn-p 中创建了一个 HBase 表:
Class.forName("org.apache.phoenix.jdbc.PhoenixDriver");
Connection conn = DriverManager.getConnection("jdbc:phoenix:serverurl:/hbase-unsecure");
System.out.println("got connection");
conn.createStatement().execute("CREATE TABLE IF NOT EXISTS phoenixtest (id BIGINT not null primary key, test VARCHAR)");
int inserted = conn.createStatement().executeUpdate("UPSERT INTO phoenixtest VALUES (5, '13%')");
conn.commit();
System.out.println("Inserted or updated " + inserted + " rows");
ResultSet rst = conn.createStatement().executeQuery("select * from phoenixtest");
while (rst.next()) {
System.out.println(rst.getString(1) + " " + rst.getString(2));
}
表已创建并且表循环工作正常。
现在我尝试通过 HBase REST 服务获取表数据,因为我从“本机”HBase 编程中知道它。
url http://server-url:12345/PHOENIXTEST/schema 工作正常,并返回请求的表信息。
但是当我尝试例如http://server-url:12345/PHOENIXTEST/5(5 是第一个插入行的键,请参见上面的代码),我收到了 Not found 消息。
如何通过 HBase REST 服务获取数据?
【问题讨论】:
标签: rest hadoop jdbc hbase phoenix