HBase as web app backend

2020-06-25 04:16发布

问题:

Can anyone advise if it is a good idea to have HBase as primary data source for web-based application? My primary concern is HBase's response time to queries. Is it possible to have sub-second response?

edit: more details about the app itself.

  • Amount of data: ~500GB of text data, expect to reach 1TB soon
  • Number of concurrent users using the app: up to 50

The app will be used to present reports about data stored in HBase, like how many times keyword "X" occured in last 24h. For ~80% of requests from that app I will know the exact key, 20% will be scans (I'm looking into HBase schema design related topics to make it run fast)

回答1:

You can use HBase as a backend for a webapp (see for example Gap's presentation here or EBay's presentation here).

As you noted yourself the point is to get the right schema and key design



回答2:

Yes building a web app on Hbase which responds in real time is not unrealistic. Take a look at Opentsdb which exposes timeseries stored in hbase though a web frontend. Although Opentsdb has optimized the storage schema a little and used caching underneath. But the key to faster access in Hbase application lies on the RowKey design. see http://hbase.apache.org/book/rowkey.design.html



标签: hadoop hbase