我是hadoop的新手。请帮帮我。
我有一个不断更新的日志文件,我需要将这个日志文件存储到hive中的一个表中。是否有可能在我想要或定期时将日志文件中生成的新行添加到此表中间隔l
答案 0 :(得分:0)
Hive支持插入语句,所以它应该是可能的。在同一时间 - 我不会推荐这种使用蜂巢的方式。我会假设我们谈论严重的日志流 - 否则我们不会使用Hive。
当我们简单地将附加文件复制到某个HDFS目录(定义为Hive的外部表)时,Hive的数据加载速度更高
所以我的建议是使用日志旋转(或其他技术)来创建每X分钟或Y兆字节的新文件,然后简单地将它们复制到HDFS。
答案 1 :(得分:0)
Hive并不能真正支持这一点。我建议使用Flume将日志文件存储到HDFS中,然后让Hive表只指向该位置并使用适当的SerDe来访问它。
或者,或者旋转日志文件,只有在完成写入后才将其存储到Hive中。