充分利用有序性

1.1 如果要scan操作,且不是很频繁,可以利用rowkey的有序性将需要一起扫描的数据放到一起。例如直接用时间戳。这样就可以按时间scan了。这个只要是简单的全表扫描都行。

1.2 同样是scan,还可以利用rowkey的有序性实现数据本地化,设同一类别的数据需要一起扫描,那就可以给rowkey加一个类别前缀。(为了节约磁盘空间,需将类别名称编码)  这个不如垂直爬虫,我要扫描新闻类,或者BBS类,就可以为rowkey加个编码后的新闻,bbs类别id,实现同一类别的url本地化。

1.3  组合rowkey

多个字段组合出rowkey,实现多字段排序以满足我们的程序设计需求,例如爬虫系统的需求有根据host ,优先级,等排序。这个完全可以是使用 hostid_pid(优先级)_urlid(哈希,或者md5)

2.1 避免热点
频繁按时间段查询,如果用时间戳作为rowkey会造成热点,所以这里需要将rowkey打散到各个节点,将压力分配到各个节点。例如人民币冠字号查询,如果rowkey是冠字号,hbase会将临近的冠字号作为rowkey放到同一个region。这样当频繁查询的时候,就会造成某个regionserver压力过大,形成热点,影响整体性能。

最新文章

  1. innobackupex 重启MySQL
  2. 在windows 下使用git
  3. mysql 导入大数据的秘籍
  4. 如何选择分类器?LR、SVM、Ensemble、Deep learning
  5. BZOJ1996 合唱队 区间DP
  6. 优惠书价计算---c++--软件工程
  7. 自定义枚举类型的常用操作-附源码(xjl456852原创)
  8. freemarker报错之八
  9. MyBatis 源码分析——介绍
  10. 利用KindEditor实现公司通讯录的维护
  11. 利用shell脚本实现对mysql数据库的备份
  12. 用IDEA生成javadoc文档
  13. mongoDB创建windows服务启动解决
  14. Snapshot Types
  15. 容器概念与Linux Container原理
  16. iOS - 统计代码行数
  17. c#中@标志的作用 C#通过序列化实现深表复制 细说并发编程-TPL 大数据量下DataTable To List效率对比 【转载】C#工具类:实现文件操作File的工具类 异步多线程 Async .net 多线程 Thread ThreadPool Task .Net 反射学习
  18. (5)ps详解 (每周一个linux命令系列)
  19. 第一模块:python基础语法
  20. XGB 调参基本方法

热门文章

  1. css实现基础几何图形
  2. MVC小系列(十五)【MVC+ZTree实现对树的CURD及拖拽操作】
  3. AppDelegate 方法详解
  4. js控制文本框输入数字和小数点等
  5. 当传递具有已修改行的 DataRow 集合时,更新要求有效的 UpdateCommand问题解决
  6. 删除Windows右键不用的选项
  7. Codevs 1064 虫食算 2004年NOIP全国联赛提高组
  8. caffe源码阅读(2)-Layer
  9. HOW TO: Creating your MSI installer using Microsoft Visual Studio* 2008
  10. Qt 之 QtScript