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

1.1     书面作业题目1

1.2     回答

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

2.1     书面作业题目2

2.2     回答

 

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

1.1

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

1.2

HBase的应用场景

l

l

l

l

l

l

相关例子

l

l

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

2.1

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

2.2

两种方法:

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

表1:发送者表:

行键:发送者id

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

表2:接收者表:

行键:接收者id

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

 

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

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

 

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

通过使用标识、发送者id、接收者id做成复合行健,其中:标识用来区分发送还是接收,标识0为发送,标识1为接收,

l

l

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

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

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