使用 SQLContext 从 pyspark 创建雪花 table
Create a snowflake table from pyspark using SQLContext
我想从我的 pyspark 代码创建雪花 table,如下所示:
import pyspark.sql import SparkSession
import pyspark.sql.context import SQLContext
from pyspark import SparkContext
sc = SparkContext.getOrCreate()
sqlContext = SQLContext(sc)
sqlContext.sql("create or replace table NEW_TABLE (id integer, desc varchar)")
我收到这个错误
您的代码将创建 Hive table 而不是 Snowflake table。你必须像这样按数据框写
sfOptions = {
'sfUrl': '...',
'sfUser': '...',
'sfPassword': '...',
...
}
(df
.write
.format('snowflake')
.mode(mode)
.options(**sfOptions)
.save()
)
或者,如果你真的想从 Spark 触发单个 Snowflake 查询,你可以使用 Snowflake runQuery
API
query = "create or replace table NEW_TABLE (id integer, desc varchar)"
spark._jvm.net.snowflake.spark.snowflake.Utils.runQuery(sfOptions, query)
我想从我的 pyspark 代码创建雪花 table,如下所示:
import pyspark.sql import SparkSession
import pyspark.sql.context import SQLContext
from pyspark import SparkContext
sc = SparkContext.getOrCreate()
sqlContext = SQLContext(sc)
sqlContext.sql("create or replace table NEW_TABLE (id integer, desc varchar)")
我收到这个错误
您的代码将创建 Hive table 而不是 Snowflake table。你必须像这样按数据框写
sfOptions = {
'sfUrl': '...',
'sfUser': '...',
'sfPassword': '...',
...
}
(df
.write
.format('snowflake')
.mode(mode)
.options(**sfOptions)
.save()
)
或者,如果你真的想从 Spark 触发单个 Snowflake 查询,你可以使用 Snowflake runQuery
API
query = "create or replace table NEW_TABLE (id integer, desc varchar)"
spark._jvm.net.snowflake.spark.snowflake.Utils.runQuery(sfOptions, query)