Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.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 单日志文件的Spark累积处理_Apache Spark_Spark Streaming - Fatal编程技术网

Apache spark 单日志文件的Spark累积处理

Apache spark 单日志文件的Spark累积处理,apache-spark,spark-streaming,Apache Spark,Spark Streaming,对于使用spark streaming的日志处理,我使用了socketStream和textFileStreamapi。通过socketStream,在特定端口上使用nc-lk,我们可以读取附加的日志文件,通过textFileStream,可以读取目录中添加的任何新文件并进行累积处理 我要找的是一个单个日志文件,它会随着时间的推移而增长,我如何将同一个日志文件读入到say:DStream或任何Spark RDD句柄中,然后进行累积处理。我不打算使用nc-lk,因为它可能不是一种通用方法。Spar

对于使用
spark streaming
的日志处理,我使用了
socketStream
textFileStream
api。通过socketStream,在特定端口上使用
nc-lk
,我们可以读取附加的日志文件,通过textFileStream,可以读取目录中添加的任何新文件并进行累积处理


我要找的是一个单个日志文件,它会随着时间的推移而增长,我如何将同一个日志文件读入到say:DStream或任何
Spark RDD
句柄中,然后进行累积处理。我不打算使用
nc-lk
,因为它可能不是一种通用方法。Spark中是否有任何方法或API,我们可以在其中侦听日志文件,并将其任何添加内容读取并处理为
RDD
格式?

我认为Spark中没有本地API来监控
单个
日志文件并获得连续增量日志内容(1.6版本之前)
但netcat模式(接收连续增量日志的tail和netnet管道)似乎在socket流和Kafka流中都很流行。
使用火花插座流连接到管道化netcat

tail -f xxx.log | nc -lk 9999
或者使用spark Kafka流连接到流水线kafkacat

kafkacat是ApacheKafka的通用非JVM生产者和消费者 0.8,将其视为卡夫卡的网络猫


注意:阅读stdin中的消息,使用快速压缩生成“syslog”主题。

您可能想查看卡夫卡。使用
nc
是一种聪明的方法。。。但是,我想我在2.0中看到了一些地方,您实际上可以监视一个文件。但我对此并不乐观。需要更多的研究。:)
tail -f /var/log/syslog | kafkacat -b mybroker -t syslog -z snappy