Apache Zeppelin with Java error: ';' expected but 'class' found
Apache Zeppelin with Java error: ';' expected but 'class' found
我使用 Apache Spark 的 Java API 从某些来源(如 Cassandra 和 HDFS)加载数据,以便在 Apache Zeppelin 中进行可视化。该代码使用 SparkSql
和 SparkSession
,而不是 SparkContext
,并在 IDE 中测试成功。我将完整代码(包含我在 IDE 中 运行 的所有代码)粘贴到 Zeppelin 笔记本中,并在 运行 通过错误 error: ';' expected but 'class' found
将其粘贴后。我认为这个错误是 Scala 错误,我怀疑 Zeppelin 是否支持 Spark Java API?!如果是,我该如何解决?
Apache Zeppelin 版本:0.7.3
以下是代码:
import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
import org.apache.spark.sql.SparkSession;
import java.util.HashMap;
public class LoadCSV {
public static void main(String[] args) {
HashMap<String, String> ops = new HashMap();
ops.put("table", "grades");
ops.put("keyspace", "zeppline");
SparkSession spark = SparkSession
.builder()
.master("local[*]")
.appName("Java Spark SQL basic example")
.config("spark.cassandra.connection.host", "127.0.0.1")
.config("spark.cassandra.connection.port", "9042")
.getOrCreate();
Dataset<Row> df1 = spark.read()
.format("csv")
.option("header", true)
.option("inferSchema", true)
.csv("hdfs://localhost:54310/Data/Zeppline/grades.csv");
Dataset<Row> df2 = spark.read()
.format("org.apache.spark.sql.cassandra")
.options(ops)
.load()
.select("id","first_name", "last_name", "ssn", "test1", "test2", "test3", "test4", "final", "grade");
df1.union(df2).createOrReplaceTempView("grades");
}
}
I suspect does Zeppelin support Spark JAVA API?
没有。您可以在 Zeppelin 网站 (https://zeppelin.apache.org/docs/latest/manual/interpreters.html) 上找到可用解释器的完整列表,但那里没有 Java 解释器。
我使用 Apache Spark 的 Java API 从某些来源(如 Cassandra 和 HDFS)加载数据,以便在 Apache Zeppelin 中进行可视化。该代码使用 SparkSql
和 SparkSession
,而不是 SparkContext
,并在 IDE 中测试成功。我将完整代码(包含我在 IDE 中 运行 的所有代码)粘贴到 Zeppelin 笔记本中,并在 运行 通过错误 error: ';' expected but 'class' found
将其粘贴后。我认为这个错误是 Scala 错误,我怀疑 Zeppelin 是否支持 Spark Java API?!如果是,我该如何解决?
Apache Zeppelin 版本:0.7.3
以下是代码:
import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
import org.apache.spark.sql.SparkSession;
import java.util.HashMap;
public class LoadCSV {
public static void main(String[] args) {
HashMap<String, String> ops = new HashMap();
ops.put("table", "grades");
ops.put("keyspace", "zeppline");
SparkSession spark = SparkSession
.builder()
.master("local[*]")
.appName("Java Spark SQL basic example")
.config("spark.cassandra.connection.host", "127.0.0.1")
.config("spark.cassandra.connection.port", "9042")
.getOrCreate();
Dataset<Row> df1 = spark.read()
.format("csv")
.option("header", true)
.option("inferSchema", true)
.csv("hdfs://localhost:54310/Data/Zeppline/grades.csv");
Dataset<Row> df2 = spark.read()
.format("org.apache.spark.sql.cassandra")
.options(ops)
.load()
.select("id","first_name", "last_name", "ssn", "test1", "test2", "test3", "test4", "final", "grade");
df1.union(df2).createOrReplaceTempView("grades");
}
}
I suspect does Zeppelin support Spark JAVA API?
没有。您可以在 Zeppelin 网站 (https://zeppelin.apache.org/docs/latest/manual/interpreters.html) 上找到可用解释器的完整列表,但那里没有 Java 解释器。