我想使用CURL.Please将.csv文件或mysql表从本地计算机(GetFile)发送到Apache Nifi中的Hive(PutHiveql),让我知道是否有使用Curl执行此操作的命令。
发布于 2017-06-28 06:20:30
这个问题在形式上没有意义。如果您想要将CSV文件的内容摄取到Apache NiFi中,对其进行路由和转换,并最终将其写入Hive表,您的流程将如下所示:
GetFile -> ConvertRecord (CSVReader to AvroRecordSetWriter) -> [Optional processors] -> PutHiveStreamingPutHiveStreaming期望传入的流文件内容是Avro格式,因此ConvertRecord处理器会将摄取的数据转换为正确的语法。
我根本不确定cURL是如何解决这个问题的。NiFi确实提供了允许任意传出HTTP请求的InvokeHTTP处理器,以及调用任意命令行活动(包括cURL )的ExecuteStreamCommand处理器。我不知道为什么您需要在此流程中调用其中任何一个。如果您正在询问如何通过外部cURL命令触发整个流程,NiFi提供了ListenHTTP和HandleHTTPRequest处理器,它们可以启动本地web服务器并侦听传入的HTTP请求。您可以将这些处理器连接到一对Wait/Notify处理器,以控制摄取的文件数据流,因为GetFile是源处理器,不允许传入的流文件触发它。
https://stackoverflow.com/questions/44788459
复制相似问题