- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Hbase 表设计
HBase与RDBMS的区别在于:HBase的Cell(每条数据记录中的数据项)是具有版本描述的(versioned),行是有序的,列(qualifier)在所属列簇(Column families)存在的情况下,由客户端自由添加。以下的几个因素是Hbase Schema设计需要考虑的问题:
1、 Hbase中没有joins的概念
大表的结构可以使得不需要joins,而解决这一问题。
2、Row keys 设计
主键,在Region里按字母顺序来排序(byte数组存储)。124 12345
写入要分散(不能使用递增的写入),如订单表: order_id做reverse逆排序后做rowkey,以便分布式存储,避免数据只保存在个别节点上。
201101 逆排序后 101102 201102 逆排序后 201102 多条件查询时,设为组合row key,左匹配
注:读取数据只能按row key(及其range)或scan全表扫描,确保查询高效
3、列族CF设计
尽量少,建议CF数量在1-2个。
设计Hbase schema的时候,要尽量只有一个column family。
flush和compaction触发的基本单位都是Region级别。当一个CF有大量的数据的时候会触发整个region里面的其他CF的memstore(其实这些memstore可能仅有少量的数据,还不需要flush的)也发生flush动作;
另外compaction触发的条件是当store file的个数(不是总的store file的大小)达到一定数量的时候会发生,而flush产生的大量store file通常会导致compaction,flush/compaction会发生很多IO相关的负载,这对Hbase的整体性能有很大影响,所以选择合适的column family个数很重要。
案例1、学生表和课程表,多对多
关系数据库中设计:
HBase中:
Student 表
Row Key CF CF Student_id(reverse逆排序) info course Info:name Course:c1 Info:age Course:c2 Info:sex ...... Course表
Row Key CF CF Course_id(reverse逆排序) info Student Info:title Student:t1=student_id Info:introduction Student:t2 Info:teacher_id ...... 案例2、person 和 身份证card表
关系数据库:
Person表 Pserson_id Name sex Card
Card表 ID City_id HBase中:
Person表
Row Key CF ? info Person_id Info:name
Info:sex
Info:age
Info:card ……
案例2、订单order 和 订单明细表order_item,一对多
关系数据库中:
Order表
Order_Id Order_mount User_id City_id …. Order_item 表
Item_Id Order_Id Product_id Unit_price Order_num ….. HBase 中:
方案一:
Order表
Row key CF ? info Order_Id Info: Order_mount
Info:user_id
Info:city_id
….. Order_item 表
Row key CF ? info Order_id-item_id Info: Order_mount
Info:user_id
Info:city_id
Info:order_id
….. 方案二:
Order表
Row key CF CF ? info item Order_Id Info: Order_mount
Info:user_id
Info:city_id
Info:create_time
….. Item:i1item_id
Item:i2
….. Order_item 表
Row key CF ? info item_id Info: Order_mount
Info:user_id
Info:city_id
Info:order_id
….. 多条件查询时,需要增加一个index表
Row key为查询条件组合
Row key CF ? info [create_time]_[order_id]_[city_id] Info:order_id
您可能关注的文档
- 第三次数据结构上机实验报告.doc
- 了解SpringDataJPA.docx
- CHOLESTYRAMINE 考来烯胺(可林斯提拉明酯)台湾 ,用药 ,说明.doc
- 老人与海英文版读后感.docx
- 主持人串词(贵士暨G-TR上市活动).doc
- 外贸函电A卷(统本)-周瑞芳.doc
- 魔王语言报告(带有完整程序).doc
- Limit指南.doc
- 数据结构循环队列操作源代码.doc
- TSM管理指南.doc
- 2025年教师资格证考试《教育公共基础知识》题库及答案(共400题).doc
- 2024年教师招聘考试教育综合理论知识复习题库及答案(共300题).doc
- 2024年教师招聘考试必考教育学重点知识汇总(精选).doc
- 2024年教师编制考试教育理论综合基础知识复习题库及答案(共250题).doc
- 2024年教师编制考试教育理论基础知识必考的260个重点知识汇总(精编版).doc
- 2025年教师资格证考试《教育公共基础知识》题库及答案(共300题).doc
- 2025年教师资格证考试《小学教育教学知识与能力》冲刺试卷题库及答案(共五套).doc
- 2025年全国幼儿园教师编制考试教育理论基础知识仿真模拟试卷及答案(共五套).doc
- 2025年最新教师编制考试理论知识复习题库(精心整理).doc
- 2024年教师编制考试教育学判断题库及答案(全册).doc
最近下载
- 全国重点高中黄冈中学2021年自主招生理科实验班预录考试语文模拟.pdf VIP
- 意念高尔夫之技术篇(一)体能与力道之锻炼.doc
- 课件:危重新生儿监护.ppt
- 在线网课学习课堂《智能制造与数字化工厂( 陕西工业职业技术学)》单元测试考核答案.docx
- 国开电大传感器与测试技术实验 2:位移测量.doc VIP
- ACS880卷曲机控制程序(选件 N5000)固件手册revA.pdf VIP
- 2023年湖南省娄底市中考物理试题(含答案解析).doc
- 河北石家庄新华区2022--2023学年五年级下学期期末数学试题(有答案).pdf VIP
- 全自动超声波清洗机作业指导书.docx VIP
- 重庆市九龙坡区、綦江区2022-2023学年八年级下学期期末质量监测语文试题.docx VIP
文档评论(0)