hbase应用场景以及优化

摘自facebook的相关文档

1 storing large amounts of data(100s of TBs)

   存储大量的数据(100s TB级数据)

2 need high write throughput

    需要很高的写吞吐量

3 need efficient random access (key lookups) within large data sets

  在大规模数据集中进行很好性能的随机访问(按列)

4 need to scale gracefully with data

  需要进行优雅的数据扩展

5 for structured and semi-strured data

  结构化和半结构化的数据

6 don‘t need full RDFS capabilites(cross row/cross table transactions,joins etc.)

  不需要全部的 关系数据库特性,例如交叉列、交叉表,事务,连接等等

来自淘宝的使用场景总结:


1 瞬间写入量很大,数据库不好支撑或需要很高成本支撑的场景。

2 数据需要长久保存,且量会持久增长到比较大的场景

3 hbase不适用与有join,多级索引,表关系复杂的数据模型

4 合理设计rowkey,非常重要

5 数据最好是可恢复的

6 生产环境关闭split,region数不要太多。

网友的回答:hbase的应用场景

hbase ,我们拿它做 webPage DB,存放大数量级的网页原始数据。

同样也作为从网页中提取信息的信息存储平台。 其他好像没有了,感觉有的话,hdfs 就满足了

整理总结:

1 大数据量 (100s TB级数据) 且有快速随机访问的需求。

例如淘宝的交易历史记录。数据量巨大无容置疑,面向普通用户的请求必然要即时响应。

2 容量的优雅扩展

大数据的驱使,动态扩展系统容量的必须的。例如:webPage DB。

3  业务场景简单,不需要关系数据库中很多特性(例如交叉列、交叉表,事务,连接等等

4 优化方面:合理设计rowkey。因为hbase的查询用rowkey是最高效的,也几乎的唯一生产环境可行的方式。所以把你的查询请求转换为查询rowkey的请求吧。


你可能感兴趣的:(hbase应用场景以及优化)