对于spark的典型应用场景为批处理,一般由基本数据源(文件系统如:hdfs)或者高级数据源(flume、kafka)作为spark的数据接入端。输出一样可以是文件系统或数据库等等。本文介绍一个用java写的demo程序,功能是从本地接收数据,经过spark处理之后输出到Elasticsearch。
先上代码:
maven
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.11</artifactId>
<version>2.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_2.11</artifactId>
<version>2.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.elasticsearch<