问题
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
来源:https://stackoverflow.com/questions/13111820/hbase-as-web-app-backend