- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
单元8HBase综合实战
18.2商品订单表设计目录8.1MySQL数据迁移到HBase2
8.1MySQL数据迁移到HBase本案例的数据以学生课程成绩为例,在MySQL数据库中将实体和实体间的关系都存储在数据库中,本例中的实体有学生和课程,分别对应学生信息表studentInfo和课程信息表courseInfo,实体之间的关系为选课及成绩,对应成绩表gradeInfo,这三张表的结构如图8-1所示。
8.1MySQL数据迁移到HBaseHBase表将MySQL三张表的数据聚合到同一张表中,将studentInfo表映射到HBase的StuInfo列族,将gradeInfo和courseInfo表信息映射到Grades列族中,使用HBase列族形式将数据整合到一起,用户查询起来会更加方便,同时对出现大量空值的场景,可以节约大量的存储空间。步骤1:创建coursesel.sql文件。2.登陆MySQL,创建数据库,如下。createdatabasecoursesel;
8.1MySQL数据迁移到HBase步骤2:通过JavaAPI读取MySQL数据中学生信息表studentInfo内容1.注册数据库的驱动2.打开数据库链接。3.获取学生表studentinfo基本信息。4.获取课程信息。
8.1MySQL数据迁移到HBase步骤3:将MySQL数据导入HBase表。1.创建HBase表,通过JavaAPI连接HBase,创建表courseGrade2将MySQL数据导入HBase的courseGrade表向列族中插入数据。连接MySQL数据库读取结果集,将查询到的studentinfo表的学号信息作为rowKey,表中的姓名、年龄、性别作为列族StuInfo的列。通过MySQL连接查询语句,指定查询条件为学号,查询到对应的课程名和成绩作为列族Grades的列名和对应的单元格值。执行完成后,执行hbaseshellhbase:003:0scancourseGrade
8.1MySQL数据迁移到HBase步骤3:将MySQL数据导入HBase表。3查询数据可获取某个学生所选课程的成绩。以下示例表示获取学号为1的学生的所有课程信息。执行完成后,执行结果如图所示。
8.1MySQL数据迁移到HBase步骤3:将MySQL数据导入HBase表。1.创建HBase表,通过JavaAPI连接HBase,创建表courseGrade2将MySQL数据导入HBase的courseGrade表向列族中插入数据。连接MySQL数据库读取结果集,将查询到的studentinfo表的学号信息作为rowKey,表中的姓名、年龄、性别作为列族StuInfo的列。通过MySQL连接查询语句,指定查询条件为学号,查询到对应的课程名和成绩作为列族Grades的列名和对应的单元格值。执行完成后,执行hbaseshellhbase:003:0scancourseGrade
8.2商品订单表设计8.2.1生成商品订单表数据步骤1:生产电商订单数据,这里通过python脚本生成数据。步骤2:将python脚本上传到集群系统/opt目录下,通过pyhon命名执行,具体命令如下。其中/opt/data.py为脚本,/opt/datas/goods.log为产生文件,1000为goods.log产生的文本记录数。python/opt/data.py/opt/datas/goods.log1000步骤3:将产生的goods.log分别传输到本地文件E:\\data目录下以及上传HDFS文件系统。Hdfsdfs-putgoods.log/hbase/input步骤4:通过HBaseshell创建表goods
8.2商品订单表设计8.2.2HBase的JavaAPI方式写入HBase步骤1:新建Maven工程,步骤参考第五章内容。新建PutGoods类,在PutGoods中设置字符数组形式,将除rowkey外其他的字段表示为“列族:列名”形式。通过BufferedReader对象读取文件每一行数据,调用Put对象将读取到的一个字段依次放入到HBase表。步骤2:此时通过hbaseshell计算goods的行数,结果如下所示。通过统计发现python脚本生成的1000条记录全部加载到HBase表中。hbase:005:0countgoodsCurrentcount:1000,row:9991714394607
您可能关注的文档
- 数字营销实务教学课件项目四.pptx
- 数字营销实务教学课件项目三.pptx
- 数字营销实务教学课件项目七.pptx
- 数字营销实务教学课件项目九.pptx
- 数字营销实务教学课件项目二.pptx
- 数字营销实务教学课件项目八.pptx
- 教学课件完整版货币银行学(第五版) PPT课件.pptx
- 分布式数据库HBase PPT课件单元7 MapReduce On HBase.pptx
- 分布式数据库HBase PPT课件单元6 HBase模式设计与优化.pptx
- 分布式数据库HBase PPT课件单元5 HBaseAPI.pptx
- 分布式数据库HBase PPT课件单元4 HBaseShell.pptx
- 分布式数据库HBase PPT课件单元3 HBase的原理与架构.pptx
- 分布式数据库HBase PPT课件单元1 数据库概述.pptx
- 婴幼儿营养与膳食管理(第二版) PPT课件项目一 婴幼儿的能量及营养素需求 PPT课件.pptx
- 婴幼儿营养与膳食管理(第二版) PPT课件项目五 学龄前儿童的膳食 PPT课件.pptx
- 婴幼儿营养与膳食管理(第二版) PPT课件项目四 7~24月龄婴幼儿的喂养 PPT课件.pptx
- 婴幼儿营养与膳食管理(第二版) PPT课件项目三 0~6月龄婴儿的喂养 PPT课件.pptx
最近下载
- 人教版(PEP)小学六年级英语上册第四单元Unit 4 A Let’s talk精品课件.pptx VIP
- 2025中级保育师资格考试题库资料及答案(浓缩400题).pdf VIP
- 革命圣地西柏坡七言诗句.docx VIP
- (必会)中级保育师资格近年考试真题题库汇总(300题).docx VIP
- FSSC22000 V6食品安全管理体系管理手册 .pdf VIP
- 建筑工程图集 16J914-1:公用建筑卫生间.pdf VIP
- 外研版(2021)中职英语基础模块1 Unit 5 We Have Only One Earth For Better Performance 教案.docx VIP
- 07J912-1变配电所图集.pdf VIP
- 耳鼻咽喉科专科护士授权理论考试试题.docx VIP
- 工程项目保修期的工作安排措施.doc VIP
文档评论(0)