Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.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齐柏林飞艇,Java错误:'';预期但';类别';建立_Java_Apache Spark_Apache Zeppelin - Fatal编程技术网

Apache齐柏林飞艇,Java错误:'';预期但';类别';建立

Apache齐柏林飞艇,Java错误:'';预期但';类别';建立,java,apache-spark,apache-zeppelin,Java,Apache Spark,Apache Zeppelin,我使用ApacheSpark的JavaAPI从一些源(如Cassandra和HDFS)加载数据,以便在ApacheZeppelin中实现可视化。代码正在使用SparkSql和SparkSession,而不是SparkContext,并在IDE中成功测试。我将完整的代码(包含我在IDE中运行的所有代码)粘贴到齐柏林飞艇笔记本中,并在运行完一个错误error:';'应为,但找到“类”。我认为这个错误是Scala错误,我怀疑齐柏林飞艇是否支持Spark Java API?!如果是,我如何解决问题 Ap

我使用ApacheSpark的JavaAPI从一些源(如Cassandra和HDFS)加载数据,以便在ApacheZeppelin中实现可视化。代码正在使用
SparkSql
SparkSession
,而不是
SparkContext
,并在IDE中成功测试。我将完整的代码(包含我在IDE中运行的所有代码)粘贴到齐柏林飞艇笔记本中,并在运行完一个错误
error:';'应为,但找到“类”
。我认为这个错误是Scala错误,我怀疑齐柏林飞艇是否支持Spark Java API?!如果是,我如何解决问题

Apache齐柏林飞艇版本:
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");

    }
}
import org.apache.spark.sql.Dataset;
导入org.apache.spark.sql.Row;
导入org.apache.spark.sql.SparkSession;
导入java.util.HashMap;
公共类LoadCSV{
公共静态void main(字符串[]args){
HashMap ops=新的HashMap();
经营权(“表”、“等级”);
ops.put(“键空间”、“zeppline”);
火花会话火花=火花会话
.builder()
.master(“本地[*]”)
.appName(“Java Spark SQL基本示例”)
.config(“spark.cassandra.connection.host”,“127.0.0.1”)
.config(“spark.cassandra.connection.port”,“9042”)
.getOrCreate();
数据集df1=spark.read()
.格式(“csv”)
.选项(“标题”,真)
.option(“推断模式”,true)
.csv(“hdfs://localhost:54310/Data/Zeppline/grades.csv");
数据集df2=spark.read()
.format(“org.apache.spark.sql.cassandra”)
.方案(ops)
.load()
。选择(“id”、“名字”、“姓氏”、“ssn”、“测试1”、“测试2”、“测试3”、“测试4”、“最终”、“等级”);
df1.联合(df2).createOrReplaceTempView(“等级”);
}
}
我怀疑齐柏林飞艇是否支持Spark JAVA API

事实并非如此。您可以在齐柏林飞艇网站()上找到一个完整的可导航解释器列表,但那里没有Java解释器

我怀疑齐柏林飞艇是否支持Spark JAVA API


事实并非如此。您可以在齐柏林飞艇网站()上找到一个完整的可导航解释器列表,但那里没有Java解释器。

我可以定义一个支持Spark Java API的自定义解释器吗?@SoheilPourbafrani您可能可以做到这一点,但实际上您需要JDK9或更高版本(及其REPL),这在Spark中不受支持。而且Java在设计时并没有考虑到交互性,所以为什么要麻烦呢?你知道我希望最终在Thread cluster中运行齐柏林飞艇Spark代码,如果是这样的话,我需要将API更改为Scala或Python,但?我能定义一个支持Spark Java API的自定义解释器吗?@SoheilPourbafrani你也许可以这样做,但实际上,您需要JDK9或更高版本(及其REPL),这在Spark中不受支持。而且Java在设计时并没有考虑到交互性,所以为什么要麻烦呢?你知道我希望最终在Thread cluster中运行齐柏林飞艇Spark代码,如果是这样的话,我需要将API更改为Scala或Python,是吗?