【hive】hive项目调研

【hive】hive项目调研,第1张

【hive】hive项目调研

从调研的两个项目来看,hive主要作为离线数据库进行存储,一般不能进行实时的插入和更新,也就是对于单条的数据的插入和更新都需要启动一个mapreduce的task进行执行,无疑带来长时间的影响。

1. 地铁大数据客流分析系统

一般将离线数据进行批量导入到hive进行存储,一般使用的方法是sql语句直接将文件的内容导入到hive仓库中

1.1 在该项目中,首先对数据集从网上进行下载,再将数据集读取,然后通过flink进行实时处理后导入到redis中。
1.2 然后从redis中读取数据通过flink处理放到kafka、hbase、es和hdfs文件中
1.3 对于项目中使用的hive就是将上面处理过后的hdfs csv文件进行load到数据库中,然后再根据我们的需要对数据进行sql查询并生成新的hive表,最后再通过spark中的sql执行对这些表进行查询和展示。
综上:该项目中对hive的处理主要是通过对本地文件进行load,并通过sql生成需要的数据表,再通过spark进行展示

2. 电影推荐系统

2.1 项目对hive数据库的存储主要是通过spark对hdfs文件进行读取和处理,然后将处理后的数据将数据存储到hdfs上,并直接将数据load到hive仓库中
2.2 在hive仓库中的数据进行sql读取并在kafka中进行生产,再由sparkstream进行消费并进行处理

综上:hive在项目中使用的是一个离线数据库的角色,对于数据的更新和查询都需要通过mapreduce进行处理,所以从这个方面来讲我们需要进行毫秒级每条的处理速度,可能只能通过批量处理的方式,或者使用其他数据库进行对其进行替代如hbase等。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5718729.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存