我们如何使用nifi hive流处理器将数据加载到hive中

我们如何使用nifi hive流处理器将数据加载到hive中,hive,apache-nifi,orc,Hive,Apache Nifi,Orc,我有orc文件和它们的模式我已经尝试在本地配置单元中加载这个orc文件,并且工作正常,现在我将生成多个orc文件,需要使用nifi put配置单元流线处理器将这个orc文件加载到配置单元表 PutHiveStreaming希望传入的流文件采用Avro格式。如果您使用PutHive3Streaming,您将有更大的灵活性,但它不接受ORC格式的流文件;相反,这两个处理器都将输入转换为ORC,并将其写入配置单元中的托管表中 如果您的文件已经是ORC格式,则可以使用PutHDFS将其直接放入HDFS中

我有orc文件和它们的模式我已经尝试在本地配置单元中加载这个orc文件,并且工作正常,现在我将生成多个orc文件,需要使用nifi put配置单元流线处理器将这个orc文件加载到配置单元表

PutHiveStreaming希望传入的流文件采用Avro格式。如果您使用PutHive3Streaming,您将有更大的灵活性,但它不接受ORC格式的流文件;相反,这两个处理器都将输入转换为ORC,并将其写入配置单元中的托管表中


如果您的文件已经是ORC格式,则可以使用PutHDFS将其直接放入HDFS中。如果您没有直接写入托管表位置的权限,可以写入临时位置,在其上创建外部表,然后使用
INSERT-into-myTable from SELECT*from externalTable
或其他方法从那里加载到托管表中。

是否有关于PutHiveStreaming与PutHive3Streaming的更深入讨论?我不知道。除了针对Hive 1.2.x进行PutHiveStreaming和针对Hive 3.x进行PutHive3Streaming之外,前者使用Hive Streaming API v1(),后者使用Hive Streaming API v2()