CDH5.4.2 spark可以在spark-shell中使用HiveContent但无法打开spark-sql

时间:2016-07-26 06:53:09

标签: apache-spark cloudera-cdh hivecontext

我正在使用CDH5.4.2的spark(独立版)

hive-site.xml复制到$SPARK_HOME/conf后,我可以在spark-shell中的hive中查询,如下所示:

  

阶> val hiveContext = new org.apache.spark.sql.hive.HiveContext(sc);   hiveContext:org.apache.spark.sql.hive.HiveContext = org.apache.spark.sql.hive.HiveContext@6c6f3a15   阶> hiveContext.sql(“show tables”)。show();

但是当我打开spark-sql时,它显示错误:

  

java.lang.ClassNotFoundException:org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver    无法加载主类org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver。

     

您需要使用-Phive和-Phive-thriftserver构建Spark。

spark-shellspark-sql之间有何不同?如果cdh的spark不支持hive,为什么我可以使用HiveConext

1 个答案:

答案 0 :(得分:0)

Cloudera 在此处列出了不受支持的功能:

https://docs.cloudera.com/runtime/7.2.6/spark-overview/topics/spark-unsupported-features.html

不支持 Thrift 服务器。

这是 7.2.6 列表的副本:

  • 除非另有说明,否则不支持 Apache Spark 实验性功能/API。
  • 不支持使用 JDBC 数据源 API 访问 Hive 或 Impala
  • 并非所有 Spark 组件都支持 ADLS。 Microsoft Azure Data Lake Store (ADLS) 是一个基于云的文件系统,您可以通过 Spark 应用程序访问它。 ADLS 数据目前不支持 Spark with Kudu。 (Hive on Spark 可用于 ADLS。)
  • 不支持 IPython / Jupyter 笔记本。不支持 IPython 笔记本系统(从 IPython 4.0 起重命名为 Jupyter)。
  • 不支持某些 Spark Streaming 功能,例如 mapWithState 方法。
  • 不支持 Thrift JDBC/ODBC 服务器
  • 不支持 Spark SQL CLI
  • 不支持 GraphX
  • 不支持 SparkR
  • 支持结构化流媒体,但不支持以下功能:
  • 不支持仍处于试验阶段的连续处理。
  • 与 HBase 的流静态连接尚未经过测试,因此不受支持。
  • 不支持基于 Spark 成本的优化器 (CBO)。