We have a table split across multiple regions(approx 50-60 regions for 64 MB
split size) with rowid schema as
[ReverseTimestamp/itemtimestamp/customerid/itemid].This stores the
activities for an item for a customer.We have lots of data for lots of item
for a custoer in this table.
When we try to lookup activities for an item for the last 30 days from this
table , we are using a Scan with RowFilter and RegexComparator.The scan
takes a lot of time ( almost 15-20 secs) to get us the activities for an
We are hooked up to HBase tables directly from a web application,so this
response time of around 20 secs is unacceptable.We also noticed that
whenever we do any scan kind of operation it is never in acceptable ranges
for a web application.
Are we doing something wrong ? If Hbase scans are so slow then it would be
real hard to hook it up directly with any web application.
Could somebody please suggest how to improve this or some other
options(design,architectural) to remedy this kind of issues dealing with lot
Note: We have tried with setCaching,SingleColumnValueFilter to no
Thanks & Regards