gpt4 book ai didi

hadoop - NIFI:使用卡夫卡并将数据存储到配置单元中的正确方法

转载 作者:行者123 更新时间:2023-12-02 18:49:09 26 4
gpt4 key购买 nike

我的任务是创建应该从kafka提取消息,从中转换消息并存储到Hive表中的kafka使用者。

因此,在kafka主题中,有很多消息作为json对象。

我喜欢添加一些字段并将其插入到 hive 中。

我使用以下Nifi处理器创建流程:

  • ConsumeKafka_2_0
  • JoltTransformJSON-用于转换json
  • ConvertRecord-将json转换为配置单元
  • 的插入查询
  • PutHiveQL

  • 该主题将足够加载,并且每天处理大约5Gb数据。

    因此,有什么方法可以优化我的流程(我认为向Hive提供大量插入查询是一个坏主意)?也许最好使用外部表和putHDFS Processor(通过这种方式将分区与输入json合并到一个文件中?)

    最佳答案

    您可能怀疑,使用PutHiveQL执行大量单个INSERT的性能不是很高。使用外部表方法可能会更好。如果表为ORC格式,则可以使用ConvertAvroToORC(对于Hive 1.2)或PutORC(对于Hive 3),它们都会生成Hive DDL以帮助创建外部表。

    也有Hive流处理器,但是如果您使用的是Hive 1.2,那么PutHiveStreaming也不是很出色(但仍应优于具有INSERT的PutHiveQL)。对于Hive 3,PutHive3Streaming应该具有更高的性能,这是我推荐的解决方案。

    关于hadoop - NIFI:使用卡夫卡并将数据存储到配置单元中的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61894902/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com