Sparksql操作ES读取数据并生成中间表写SQL进行统计分析示例:ES如果已经开启auth,需要设置es.net.http.auth.user和es.net.http.auth.pass,因为使用的9200端口非tcp9300端口,所以不需要设置ssl证书。
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
import org.apache.spark.sql.SQLContext;
import java.util.HashMap;
import java.util.Map;
/**
* @Auther: zxl
* @Date: 2019/2/12 17:59
* @Description:
*/
public class SparkSqlTest {
public static void main(String[] args) {
SparkConf conf = new SparkConf().setAppName("test")
//.setMaster("spark://192.168.207.28:7077");
.setMaster("local[*]");
JavaSparkContext sc = new JavaSparkContext(conf);
SQLContext sqlContext =