Spark SQL 在不配置 Hive 的情况下加载数据?

Posted

技术标签:

【中文标题】Spark SQL 在不配置 Hive 的情况下加载数据?【英文标题】:Spark SQL loads data without configuring Hive? 【发布时间】:2022-01-21 07:55:05 【问题描述】:

我在 Spark 中阅读了 JSON,但是,我收到了一些关于 Hive 的警告。我没有在笔记本电脑上设置 Hive。我使用的代码是:

scala> val dfs = spark.sql("SELECT * FROM json.`/Users/name/Desktop/constituents.json`")
21/12/18 23:48:08 WARN HiveConf: HiveConf of name hive.stats.jdbc.timeout does not exist
21/12/18 23:48:08 WARN HiveConf: HiveConf of name hive.stats.retries.wait does not exist
21/12/18 23:48:13 WARN ObjectStore: Version information not found in metastore. hive.metastore.schema.verification is not enabled so recording the schema version 2.3.0
21/12/18 23:48:13 WARN ObjectStore: setMetaStoreSchemaVersion called but recording version is disabled: version = 2.3.0, comment = Set by MetaStore shashanksathish@127.0.0.1
21/12/18 23:48:13 WARN ObjectStore: Failed to get database default, returning NoSuchObjectException
21/12/18 23:48:14 WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException
21/12/18 23:48:14 WARN ObjectStore: Failed to get database json, returning NoSuchObjectException
dfs: org.apache.spark.sql.DataFrame = [Name: string, Sector: string ... 1 more field]

我无法理解数据是如何加载到我的变量中的。

【问题讨论】:

【参考方案1】:

许多站点将 Spark 与 Spark 创建/仅表或仅 HDFS 目录一起使用。 Spark 不需要 Hive,这只是一个警告。这与不需要 Hadoop 不同。

对于 parquet 和 delta,就 Hive Metastore 而言,不需要 Hive 元数据方面。

如果您需要 Ranger Security st 行级别,您将需要 Hive 外部表。

【讨论】:

以上是关于Spark SQL 在不配置 Hive 的情况下加载数据?的主要内容,如果未能解决你的问题,请参考以下文章

hive使用spark引擎的几种情况

如何在不使用 HDP 3.1 中的仓库连接器的情况下将表从 spark 中写入 hive

CSS:在不改变容器大小的情况下加粗一些文本

第57课:Spark SQL on Hive配置及实战

spark sql应该如何配置访问hive metastore? [复制]

Spark: Spark-sql 读hbase