1    :举例子说明HBase相对简单

1.1

1.2     回答

2    :设计HBase存储站内短信

2.1

2.2     回答

书面作业1:举例子说明HBase相对简单

请举出一例子,使用关系型数据库较难进行数据建模,而采用HBase则相对简单

1.2  回答

HBase的应用场景

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

l  需要很高的写吞吐量

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

l  需要进行优雅的数据扩展

l  结构化和半结构化的数据

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

相关例子

l  淘宝的交易历史记录。数据量巨大无容置疑,面向普通用户的请求需即时响应;捕获增量数据、网络爬虫、广告效果和点击流等等。

l  动态扩展系统容量,例如:webPage DB。

书面作业2:设计HBase存储站内短信

用HBase存储社交网站站内短信信息,要求记录发送者、接受者、时间、内容,有关的查询是发送者可以列出他所有(或按时间段)发出的信息列表(按时间降序排列),接收者可以列出他所有(或按时间段)收到的信息列表(按时间降序排列)。请进行数据建模。

2.2  回答

两种方法:

方法一:建两个表,发送者表,接收者表

:发送者表:

行键:发送者id

列族和列:接收者,短信内容,时间戳(系统自动生成)

:接收者表:

行键:接收者id

列族和列:发送者,短信内容,时间戳(系统自动生成)

)查询是发送者可以列出他所有(或按时间段)发出的信息列表,通过在发送者表查询。

)查询是接收者可以列出他所有(或按时间段)收到的信息列表(按时间降序排列),通过接受者表查询,结合时间戳。

方法二:建一个表,使用复合行键

为发送,标识1为接收,

是,表示发送,复合行健为:标识-发送者id-接收者id。

是,表示接收,复合行健为:标识-接收者id- 发送者id。

这样设计的目的是方便使用hbase的范围查询功能,列族和列:短信内容,时间戳(系统自动生成)

)查询是发送者可以列出他所有(或按时间段)发出的信息列表,通过使用范围查询,查询“0-发送者id-%”的复合行健。

)查询是接收者可以列出他所有(或按时间段)收到的信息列表(按时间降序排列),查询“1-接收者id-%”的复合行健,并结合时间戳。

Hadoop第13周练习—HBase作业的更多相关文章

  1. Hadoop第12周练习—HBase安装部署

    1  1.1 1.2 :安装HBase 2.1 内容 运行环境说明 1.1 硬软件环境 线程,主频2.2G,6G内存 l  虚拟软件:VMware® Workstation 9.0.0 build-8 ...

  2. Hadoop第11周练习—HBase基础知识

    1 :数据即日志 内容 2 :HBase合并过程 内容 3 :HBase一致性 内容 书面作业1:数据即日志 内容 我们常说HBase是“数据即日志”的数据库,它是怎样修改和删除数据的?和Oracle ...

  3. 《OD学hadoop》第一周0625 LINUX作业一:Linux系统基本命令(一)

    1. 1) vim /etc/udev/rules.d/-persistent-net.rules vi /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE= ...

  4. Hadoop第6周练习—在Eclipse中安装Hadoop插件及测试(Linux操作系统)

    1    运行环境说明 1.1     硬软件环境 1.2     机器网络环境 2    :安装Eclipse并测试 2.1     内容 2.2     实现过程 2.2.1   2.2.2   ...

  5. 201521123082 《Java程序设计》第13周学习总结

    201521123082 <Java程序设计>第13周学习总结 标签(空格分隔): java 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. ...

  6. 201521123107 《Java程序设计》第13周学习总结

    第13周-网络 1.本周学习总结 2.书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? ...

  7. 201521123067 《Java程序设计》第13周学习总结

    201521123067 <Java程序设计>第13周学习总结 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 Q1. 网络基 ...

  8. 201521123073 《Java程序设计》第13周学习总结

    1. 13周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jm ...

  9. 大数据Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

    微信公众号[程序员江湖] 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于 2018 年秋招拿到 BAT 头条.网易.滴滴等 8 个大厂 offer,目前致力于分享这几年的学习经验. ...

随机推荐

  1. Android布局优化

    前言 本篇文章为Android优化的布局部分,该部分应该是Android中很重要的,无论是在自定义控件中,还是在简单的书写布局时,都应该尽量遵循一些优化原则,这样布局的绘制效率才会更高,体验才能更好. ...

  2. 通过boundingRectWithSize:options:attributes:context:计算文本尺寸

    转:http://blog.csdn.net/iunion/article/details/12185077   之前用Text Kit写Reader的时候,在分页时要计算一段文本的尺寸大小,之前使用 ...

  3. NGUI 减少drawcall规则

    前置说明一: Unity中的drawcall定义: 每次引擎准备数据并通知GPU的过程称为一次Draw Call. Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:引擎 ...

  4. count有关

    1.count有两个作用:统计某个字段有值的记录数:统计结果集的记录数.2.count括号内的表达式不为null,就是统计结果集的记录数.也就是说,count(1),count(*),count(10 ...

  5. P2P资料

    常用链接 openstack创建实例的方法 http://www.cnblogs.com/popsuper1982/p/3800426.html qemu官网 http://wiki.qemu.org ...

  6. Codeforces Round #384 (Div. 2) E. Vladik and cards 状压dp

    E. Vladik and cards 题目链接 http://codeforces.com/contest/743/problem/E 题面 Vladik was bored on his way ...

  7. IT技术团队行而有效的管理之道

    在博客园看到的一份读书笔记,如果日后有机会去管理一个技术团队,那么下面这些经验可能会让你更好地实施工作. IT技术团队员工的特点 高学历,知识密集型,技术立身. 人际关系简单,摩擦大多数由技术产生,相 ...

  8. 将w3cplus网站中的文章页面提取并导出为pdf文档

    最近在看一些关于CSS3方面的知识,主要是平时看到网页中有很多用CSS3实现的很炫的效果,所以就打算系统的学习一下.在网上找到很多的文章,但都没有一个好的整理性,比较凌乱.昨天看到w3cplus网站中 ...

  9. Make it run, make it right, make it fast

    如果问我工作十多年后相比刚毕业参加的时候,学到了哪些重要的经验,那么"Make it work, make it right, make it fast"一定是其中最重要的经验之一 ...

  10. Hadoop2.x源码-编译剖析

    1.概述 最近,有小伙伴涉及到源码编译.然而,在编译期间也是遇到各种坑,在求助于搜索引擎,技术博客,也是难以解决自身所遇到的问题.笔者在被询问多次的情况下,今天打算为大家来写一篇文章来剖析下编译的细节 ...