相关疑难解决方法(0)

如何列出hbase表中的所有行键?

任何人都可以告诉我,如何列出hbase表中的所有行键?

hbase

23
推荐指数
3
解决办法
3万
查看次数

从hbase行检索时间戳

使用Hbase API(Get/Put)或HBQL API,是否可以检索特定列的时间戳?

java hbase flume

6
推荐指数
1
解决办法
1万
查看次数

在HBase中高效发送许多获取请求

我正在尝试创建Java用于查询的通用方法hbase

我目前有一篇写有3个论点的书

  • A Range(扫描表)
  • A Column(要退货)...和
  • A Condition(即browser==Chrome

因此,一条语句(如果使用SQLish语言编写)可能看起来像

SELECT OS FROM TABLE WHERE BROWSER==CHROME IN RANGE (5 WEEKS AGO -> 2 WEEKS AGO)
Run Code Online (Sandbox Code Playgroud)

现在,我知道我没有HBase正确使用(对rowkey使用常见的列查询等),但是为了进行实验,我想尝试一下以帮助我学习。

因此,我要做的第一件事是在Range上设置Scan。(5周到2周前),由于rowkeytimestamp,因此非常有效。

然后设置一个SingleColumnValueFilterbrowser = Chrome)(在范围过滤器之后,这非常快)

然后,将所有rowkeys(来自扫描)存储到array

对于每个rowkey(在数组中),我执行一个GET操作以获取对应的OS

我尝试使用MultiGet,这大大加快了过程。

然后GET,我尝试使用普通请求,每个请求都产生一个新线程,这些线程同时运行,从而将查询时间减少了一半!但是仍然不够快。

我考虑过使用与数据库的单个连接来限制线程数。即-每个连接100个线程。

考虑到我的情况,执行这些GETs 的最有效方法是什么,还是我完全不正确地采用它?

任何帮助深表感谢。

编辑(这是我的线程GET尝试)

List<String> …
Run Code Online (Sandbox Code Playgroud)

java multithreading hadoop hbase

1
推荐指数
1
解决办法
1195
查看次数

标签 统计

hbase ×3

java ×2

flume ×1

hadoop ×1

multithreading ×1