Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 应用程序服务器日志进程_Apache Spark_Apache Kafka_Hadoop2_Flume_Hadoop Streaming - Fatal编程技术网

Apache spark 应用程序服务器日志进程

Apache spark 应用程序服务器日志进程,apache-spark,apache-kafka,hadoop2,flume,hadoop-streaming,Apache Spark,Apache Kafka,Hadoop2,Flume,Hadoop Streaming,我的客户端要求为部署在集群上的基于REST的后端应用程序服务器处理应用程序(Tomcat)服务器日志文件。Clint希望从具有不同参数的数据生成“访问”和“频率”报告 我最初的计划是从App server日志中获取这些数据-->使用kafka推送火花流并处理这些数据-->将这些数据存储到HIVE-->使用齐柏林飞艇返回这些已处理和集中的日志数据,并根据客户端要求生成报告 但据我所知,Kafka没有任何可以从日志文件中读取数据并将其发布到Kafka broker中的功能,在这种情况下,我们编写了一

我的客户端要求为部署在集群上的基于REST的后端应用程序服务器处理应用程序(Tomcat)服务器日志文件。Clint希望从具有不同参数的数据生成“访问”和“频率”报告

我最初的计划是从App server日志中获取这些数据-->使用kafka推送火花流并处理这些数据-->将这些数据存储到HIVE-->使用齐柏林飞艇返回这些已处理和集中的日志数据,并根据客户端要求生成报告

但据我所知,Kafka没有任何可以从日志文件中读取数据并将其发布到Kafka broker中的功能,在这种情况下,我们编写了一个调度程序作业流程,该流程将不时读取日志并将其发送到Kafka broker中,我不喜欢这样做,在这种情况下,它将不会是实时的,并且可能会有同步问题,我们不得不担心,因为我们有4个ApplicationServer实例

另一个选择,我认为在这个例子中我们有ApacheFlume

有谁能告诉我,在这种情况下,哪种方法更好?如果在卡夫卡,我们有自己的从日志文件读取数据的过程,那么在这两种情况下,我们在功能上的优势或劣势是什么

我想另一个选择是Flume+kakfa,但我不能推测会发生什么,因为我几乎不知道Flume

任何帮助都将不胜感激……:)

非常感谢……

您可以使用Kafka Connect(文件源连接器)读取/使用Tomcat日志文件并将其推送到Kafka。Spark Streaming可以使用卡夫卡主题并搅动数据


tomcat->logs->kafka connect->kafka->spark->Hive

我想kafka connect不会是我正在研究的,因为它不适合。我使用flume与kafka同步来解决此问题。非常感谢您的回复。