创建数据库火花sql
Posted
技术标签:
【中文标题】创建数据库火花sql【英文标题】:Create database spark sql 【发布时间】:2020-11-24 06:07:48 【问题描述】:我正在使用带有 AWS 胶水目录的 spark 2.4.4。
在我的 spark 工作中,如果它不存在,我需要用胶水创建一个数据库。我在 spark sql 中使用以下语句来执行此操作。
spark.sql("CREATE DATABASE IF NOT EXISTS %s".format(hiveDatabase));
它在spark-shell
中按预期工作,在 Glue 中创建了一个数据库。
但是,当我使用spark-submit
运行同一段代码时,并没有创建数据库。使用 spark-submit 时是否需要执行提交/刷新?
编辑
我在spark-shell
和spark-submit
中为show databases
得到不同的结果:
+---------------------+
|databaseName |
+---------------------+
|all |
|default |
|hive-db |
|navi-database-account|
|navi-par |
|testdb |
+---------------------+
+------------+
|databaseName|
+------------+
|default |
+------------+
看起来 spark-submit 正在某处创建数据库,但不是在胶水中。
【问题讨论】:
您能否提供更多详细信息?您是否使用 AWS EMR 运行 Spark 作业? spark-submit、client 或 cluster 使用哪种部署模式? 【参考方案1】:需要添加以下配置:
("spark.sql.catalogImplementation", "hive")
【讨论】:
以上是关于创建数据库火花sql的主要内容,如果未能解决你的问题,请参考以下文章