分享

hive构建数据仓库的架构

各位大佬,大家能否分享一下自己了解的使用hive构建数据仓库的大概架构和流程。

1. 数据都是从哪里来?

2. 数据是怎么到hive中的?

3. hive中都是使用什么方式进行处理?都是是写SQL语句从一个表A到表B,再从表B到表C,以此类推,最后到一个目标表面?

4. 生成最终数据后,这些数据会一直在hive表中吗?如果不在hive表中,数据一般会流向哪里?

5. 以什么样的方式流转到目标地方?

6. hive中的最后生成的数据,有放到hbase中的吗?

已有(4)人评论

跳转到指定楼层
nextuser 发表于 2018-5-10 07:19:43
其实1楼回答的很不错。这里在这个基础上补充下

1. 数据都是从哪里来?
数据从哪里来这个其实跟业务有关系。看你干什么了。比如1楼是从hbase来。当然有的还可以从关系数据库。总之作为数据仓库,只要有能导入hive的,都可以作为hive的源数据。

2. 数据是怎么到hive中的?
映射一张表,然后load,这个估计是hbase,hive整合。当然【科学小黑屋】看到可以具体说说。也可能是在hive中创建对应的表。
怎么导入方式当然有多种,比如datax,sqoop,自己定义等。


3. hive中都是使用什么方式进行处理?都是是写SQL语句从一个表A到表B,再从表B到表C,以此类推,最后到一个目标表面?
基本都是sql分层次的。对于分层查询,推荐参考
http://blog.itpub.net/24945919/viewspace-748595/

4. 生成最终数据后,这些数据会一直在hive表中吗?如果不在hive表中,数据一般会流向哪里?
hive中,如果是统计结果,可能会流向关系数据库,比如mysql。这样方便展示。

5. 以什么样的方式流转到目标地方?
如果是hbase,其实常用的是Phoenix。对于其它的当然还有像上面的说的方式。datax,sqoop,自己定义等。

6. hive中的最后生成的数据,有放到hbase中的吗?
最后生成,一般来说不放入到hbase。因为统计处理的结果一般来说不会太大,放到关系数据库中,更好的展示和编程。

欢迎大家补充

回复

使用道具 举报

科学小黑屋 发表于 2018-5-9 18:34:13
1我们是数据从hbase来
2.映射一张表,然后load
3.我们基本都是sql分层次的
4.结果数据我们是通过Phoenix导入到mysql
5.Phoenix
6.可以放入hbase,也可以放入mysql看需求
回复

使用道具 举报

恋枫缩影 发表于 2018-5-10 09:05:05
1. 数据都是从哪里来?
文件、关系型数据库 都可以
2. 数据是怎么到hive中的?
文件的话load进去,关系型数据库的话用sqoop导入
3. hive中都是使用什么方式进行处理?都是是写SQL语句从一个表A到表B,再从表B到表C,以此类推,最后到一个目标表面?
一般通过mr处理
4. 生成最终数据后,这些数据会一直在hive表中吗?如果不在hive表中,数据一般会流向哪里?
数据以hdfs文件形式存在hive表中,也可以通过sqoop导入到关系型数据库
5. 以什么样的方式流转到目标地方?
用sqoop等工具
6. hive中的最后生成的数据,有放到hbase中的吗?
不一定
回复

使用道具 举报

javaanddonet 发表于 2018-5-11 17:03:50
东陆炸洋芋 发表于 2018-5-11 14:38
正好前天有朋友分享了《自己动手做大数据系统》这本书,我正好看了一大半了。这本书正好cover了你的问题, ...

多谢分享,下载下来看一看。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条