Я полагаю, что сканер фактически запрашивает только один элемент за раз, если вы не установите кэширование. Вы можете проверить это просто с помощью getCaching ()
Каждый раз, когда вы вызываете ResultScanner # next (), он извлекает следующий элемент. Вы также можете использовать ResultScanner # next (int) для одновременного получения нескольких результатов.
При настройке сканера вы можете использовать Scan # setCaching для предварительного получения результатов.
http://hadoop.apache.org/hbase/docs/r0.20.4/api/org/apache/hadoop/hbase/client/Scan.html#setCaching(int)
Скорее всего, ваш сканер работает медленно, потому что вы читаете только одну запись за раз (которая включает в себя все взад и вперед протокола RPC и еще много чего). Поэтому, если вы собираетесь много читать, пусть система заранее кеширует несколько результатов.