Apache spark 批处理层:Spark如何从主数据读取和处理新数据?
我正在构建一个lambda架构,我对流媒体层进行了编码,现在我正在做批处理层。为此,我使用Spark 2作为批处理程序,使用HDFS作为主数据 为了从HDFS读取数据,我编写了以下代码:Apache spark 批处理层:Spark如何从主数据读取和处理新数据?,apache-spark,lambda-architecture,Apache Spark,Lambda Architecture,我正在构建一个lambda架构,我对流媒体层进行了编码,现在我正在做批处理层。为此,我使用Spark 2作为批处理程序,使用HDFS作为主数据 为了从HDFS读取数据,我编写了以下代码: SparkSession spark = SparkSession .builder() .appName("JavaWordCount") .master("local")
SparkSession spark = SparkSession
.builder()
.appName("JavaWordCount")
.master("local")
.config("spark.sql.warehouse.dir", "file:///c:/tmp/spark-warehouse")
.getOrCreate();
JavaRDD<String> msg = spark.read().textFile("HDFS://mypath/*").javaRDD();
SparkSession spark=SparkSession
.builder()
.appName(“JavaWordCount”)
.master(“本地”)
.config(“spark.sql.warehouse.dir”file:///c:/tmp/spark-仓库“)
.getOrCreate();
JavaRDD msg=spark.read().textFile(“HDFS://mypath/*”).JavaRDD();
但是,使用此代码,在运行Spark之后插入HDFS中的新数据不会被读取。我想知道我怎么可能做到这一点
是否只有结构化流媒体的解决方案()或有其他解决方案?是的,在我看来,Spark 2.x Structure streaming能够做到这一点 我建议您观看2017年Spark峰会上的演示: