0

我正在尝试使用 spark-sql 从配置单元表中加载数据。但是,它不会给我任何回报。我试图在 hive 中执行相同的查询并打印出结果。下面是我试图在 scala 中执行的代码。

sc.setLogLevel("ERROR")
import org.apache.spark.sql.DataFrame
import org.apache.spark.sql.Row
import org.apache.spark.sql.types.{StructField, StructType, LongType}
import org.apache.spark.sql.hive.HiveContext
import sqlContext.implicits._
val sqlContext = new HiveContext(sc)
sqlContext.setConf("spark.sql.hive.convertMetastoreOrc", "false")
val data = sqlContext.sql("select `websitename` from db1.table1 limit 10").toDF

请让我知道可能的原因。

  • Spark-版本:1.6.2
  • 斯卡拉 - 2.10
4

1 回答 1

1

取决于首先如何创建表。如果它是由外部应用程序创建的,并且您将 hive 作为单独的服务运行,请确保SPARK_HOME/conf/hive-site.xml中的设置正确。

如果它是内部 spark-sql 表,它将在主节点上的文件夹中设置元存储,在您的情况下,该文件夹可能已被删除或移动。

于 2017-04-06T00:50:53.347 回答