如何使用sparksql和hive为maven创建pom.xml?

czfnxgou  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(543)

我为sparksql和hive连接创建了一个maven项目,并编写了以下示例代码:

SparkSession spark = SparkSession
            .builder()
            .appName("Java Spark Hive Example")
            .master("local[*]")
            .config("hive.metastore.uris", "thrift://localhost:9083")
            .enableHiveSupport()
            .getOrCreate();
try{
    spark.sql("select * from health").show();
} catch(Exception AnalysisException) {
    System.out.println("table not found");
}

我正在使用spark 2.1.0和hive 1.2.1
为了运行上述代码,我从spark文件夹导入jar文件并将其包含在项目中。我还没有将maven pom.xml用于这个特定的工作。但是当我移动到更大的集群时,比如在aws上,我需要运行jar文件。
我无法运行,因为maven无法找到依赖项。所以我想添加依赖项。我试过这个:

<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-core_2.10</artifactId>
    <version>2.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-sql_2.10</artifactId>
    <version>1.2.1</version>
</dependency>
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-hive_2.10</artifactId>
    <version>1.2.1</version>
</dependency>

但是它没有工作,我无法看到以前通过添加jar文件得到的输出。
我想知道我是否做错了什么,如果是的话请建议我怎么做?即使按照文档中的spark说明,如何添加 hive-site.xml 以及 hdfs-site.xml 在pom.xml中处理我的项目?当前正在使用intellij。请让我知道我能做些什么来解决我的问题?

pbgvytdp

pbgvytdp1#

我看到有一个错误的配置依赖。
在你的maven依赖中 spark-sql & spark-hive 是版本的 1.2.1 但是 spark-core 是版本的 2.1.0 将所有依赖项更改为相同的版本号,这样就可以了

<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-core_2.10</artifactId>
    <version>2.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-sql_2.10</artifactId>
    <version>2.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-hive_2.10</artifactId>
    <version>2.1.0</version>
</dependency>
``` `spark-core` 附属国http://mvnrepository.com/artifact/org.apache.spark/spark-core_2.10/2.1.0 `spark-sql` 附属国http://mvnrepository.com/artifact/org.apache.spark/spark-sql_2.10/2.1.0 `spark-hive` 附属国http://mvnrepository.com/artifact/org.apache.spark/spark-hive_2.10/2.1.0

相关问题