0x01 需求背景
将Kafka中的JSON数据持久化存储到Hive表中,以供后期有查找的需求。
(看了很多讲解的博文,出了各种bug!饶了很多弯路!总结出来的经验就是一定要仔细看Flume的官方文档!!!!!!)
Kafka中的数据示例:
>{"id":1,"name":"snowty","age":25}
Hive表示例:
hive> desc hivetable;
OK
id int
name string
age int
Time taken: 0.162 seconds, Fetched: 3 row(s)
0x02 环境搭建
0x03 Kafka2Hive
1、hive配置
建表时要进行分桶、赋予事务性,需要对hive进行配置
- 修改hive-site.xml文件:
<property>
<name>hive.txn.manager</name>
<value>org.apache.hadoop.hive.ql.lockmgr.DbTxnManager</value>
<description>
Set to org.apache.hadoop.hive.ql.lockmgr.DbTxnManager as part of turning on Hive
transactions, which also requires appropriate settings for hive.compactor.initiator.on,
hive.compactor.worker.threads, hive.support.concurrency (true),
and hive.exec.d