dataframe - 找不到表或视图 - Spark Scala
问题描述
我是大数据的初学者,我正在使用 spark-scala。我使用数据框并让我清楚地了解我使用多个 scala 对象来编写我的代码。所有类都有运行代码的主要方法。第一个 scala 对象用于将文件加载到数据帧中,其他 scala 对象进行统计计算。这是第一个的一些代码
object LoadFiles {
//classes for datasets
case class T(X: Option[String], P: Option[String],Y:Option[String])
println("Load File 1 into dataframe")
def main(args: Array[String]){
val sc = new SparkContext("local[*]", "LoadFiles1")
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
val warehouseLocation = new File("spark-warehouse").getAbsolutePath
val spark = SparkSession
.builder()
.appName("Spark Hive Example")
.config("spark.sql.warehouse.dir", warehouseLocation)
.enableHiveSupport()
.getOrCreate()
import sqlContext.implicits._
import org.apache.spark.sql._
import org.apache.spark.sql.Row;
import org.apache.spark.sql.types.{StructType,StructField,StringType};
val dataframe1 = sc.textFile("file1.ttl").map(_.split(" |\\ . ")).map(p =>
T(Try(p(0).toString()).toOption,Try(p(1).toString()).toOption,Try(p(2).toString()).toOption)).toDF()
dataframe1
.write
.partitionBy("Predicate")
.mode(SaveMode.Overwrite)
.saveAsTable("dataframe1")
}}
其他 scala 对象用于从加载的数据帧进行许多计算并创建其他数据帧
这是第二个
object Statistics1 {
def main(args: Array[String]) {
val sc = new SparkContext("local[*]", "LoadFiles1")
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
val warehouseLocation = new File("spark-warehouse").getAbsolutePath
val spark = SparkSession
.builder()
.appName("Spark Hive Example")
.config("spark.sql.warehouse.dir", warehouseLocation)
.enableHiveSupport()
.getOrCreate()
import sqlContext.implicits._
import org.apache.spark.sql._
import org.apache.spark.sql.Row;
import org.apache.spark.sql.types.{StructType,StructField,StringType};
// subject query
val Query1 = spark.sql("SELECT X As Res, P as Pred, COUNT(Y) As nbrFROM dataframe1 GROUP BY X, P")
.write
.mode(SaveMode.Overwrite)
.saveAsTable("stat1") }}
我得到了错误Exception in thread "main" org.apache.spark.sql.AnalysisException: Table or view not found: dataframe1; line 1 pos 75
我怎样才能解决这个问题 ?
解决方案
推荐阅读
- windows - 将窗口句柄分配给cmd中的变量以脚本移动窗口
- typescript - 如何使用文字类型值作为区分联合的判别式?
- python - 获取列的类型为 jsonb[],但表达式的类型为 text[],当尝试使用 psycopg2 插入时
- ubuntu - 无法使用新的 Vagrant 安装 - 连接到 libvirt 时出错
- typescript - Typescript 函数参数作为集合的并集
和数组 - spring - SPRING JPA 延迟加载数据以在其他类中使用
- react-native - 如何在 React Native 项目中使用符号链接?
- css-position - 如何将图形位置设置为绝对?
- python - 我可以在 Python 中创建一个可构造的 SimpleNamespace 吗?
- sqlite - 在 shell 中运行 sqlite 命令