代码之家  ›  专栏  ›  技术社区  ›  Praveenks

Spark SQL:Truncate table获取失败

  •  0
  • Praveenks  · 技术社区  · 6 年前

    我试图在Databricks平台上执行一些命令来了解Spark SQL,我从Pandas Dataframe创建了Spark Dataframe并将其注册为temp视图来执行SQL查询。我可以执行Select,但不能执行Truncate。

    import pandas as pd
    import numpy as np
    
    #create Pandas DataFrame
    pd_temp = pd.DataFrame(np.random.random(10))
    
    #convert it into Spark DataFrame
    spark_temp = spark.createDataFrame(pd_temp)
    
    #register Spark DataFrame as table to run sql query
    spark_temp.createOrReplaceTempView("temp")
    
    #checking catalog list
    print(spark.catalog.listTables())
    
    **Output :**
    (1) Spark Jobs
     spark_temp:pyspark.sql.dataframe.DataFrame = [0: double]
     [Table(name='temp', database=None, description=None, 
     tableType='TEMPORARY', isTemporary=True)]
    

    现在,我可以在此临时视图上执行查询:

    # Now, query temp table
    query = 'select * from temp'
    result = spark.sql(query)
    result.show()
    

    这是执行罚款,我得到的输出。 但是,下面的执行失败了。。

    query = 'truncate table temp'
    result = spark.sql(query)
    result.show()
    

    输出:

    "Table or view 'temp' not found in database 'default';"
    

    但是,我们把那个临时工注册为view。

    0 回复  |  直到 6 年前
    推荐文章