Я создал новую бесплатную стандартную учетную запись снежинки "xxxxx". Мне удалось получить доступ к базе данных, схеме и таблицам по умолчанию из веб-интерфейса Snowflake.
И попытался подключиться к Snowflake из Spark
val spark = SparkSession.builder()
.master("local[1]")
.appName("SparkByExamples.com")
.getOrCreate();
var sfOptions = Map(
"sfURL" -> "https://xxxxxx.us-east-1.snowflakecomputing.com/",
"sfAccount" -> "xxxxxx",
"sfUser" -> "xxxxx",
"sfPassword" -> "#########",
"sfDatabase" -> "snowflake_sample_data",
"sfSchema" -> "tpch_sf1"
)
val df: DataFrame = spark.read
.format("net.snowflake.spark.snowflake")
.options(sfOptions)
.option("query", "SELECT l_returnflag,l_linestatus,sum(l_quantity) as sum_qty FROM lineitem GROUP BY l_returnflag,l_linestatus")
.load()
После запуска выдается сообщение об ошибке «Недостаточно прав для работы с схемой TPCH_SF1». Может кто-нибудь, пожалуйста, помогите.
20/02/23 19:35:12 WARN SnowflakeStrategy: Ошибка при нажатии: SQL Ошибка управления доступом: Недостаточно прав для работы со схемой 'TPCH_SF1' 20/02/23 19: 35:13 ИНФОРМАЦИЯ SnowflakeSQLStatement: Мастер Spark Connector: выполнить запрос с переменной связывания: создать временный этап, если идентификатор не существует (?) 20/02/23 19:35:13 ПРЕДУПРЕЖДЕНИЕ SnowflakeStrategy: Сбой при нажатии: SQL Ошибка управления доступом: недостаточно привилегии для работы со схемой 'TPCH_SF1' 20/02/23 19:35:14 INFO SnowflakeSQLStatement: Spark Connector Master: выполнить запрос с переменной bind: создать временный этап, если не существует идентификатора (?) Исключение в потоке "main" net .snowflake.client.jdb c .SnowflakeSQLException: SQL Ошибка управления доступом: недостаточно прав для работы со схемой 'TPCH_SF1' в net .snowflake.client.jdb c .SnowflakeUtil.checkErrorAndThrow6keUtil (Snow Snow6keUtil. *: 152) в net .snowflake.client.jdb c .SnowflakeUtil.checkErrorAndThrowException (Snowfla keUtil. java: 77) в net .snowflake.client.core.StmtUtil.pollForOutput (StmtUtil. java: 495) в net .snowflake.client.core.StmtUtil.execute (StmtUtil. java: 372) в net .snowflake.client.core.SFStatement.executeHelper (SFStatement. java: 575) в net .snowflake.client.core.SFStatement.executeQueryInternal (SFStatement. java: 265) в net .snowflake.client.core.SFStatement.executeQuery (SFStatement. java: 203) в net .snowflake.client.core.SFStatement.execute (SFStatement. java: 874)