怎么查看spark使用的metastore是哪一个?
时间: 2023-05-28 11:02:25 浏览: 177
本地使用scala操作spark示例.doc
可以通过以下步骤查看spark使用的metastore:
1. 登录到Spark集群的主节点上,打开spark-shell或者使用spark-submit提交一个应用程序。
2. 在spark-shell或者应用程序中输入以下代码:
```scala
val hiveContext = new org.apache.spark.sql.hive.HiveContext(sc)
hiveContext.sql("show tables").show()
```
这个命令会列出当前使用的metastore中的所有表。
3. 查看输出结果中的INFO日志,可以看到spark使用的metastore的URL地址。如果使用的是Hive Metastore,会输出metastore thrift地址。例如:
```
+------------+---------+
| tableName|isTemporary|
+------------+---------+
|sample_table| false|
+------------+---------+
20/11/05 16:18:46 INFO HiveMetaStore: 0: Opening raw store with implementation class:org.apache.hadoop.hive.metastore.ObjectStore
...
20/11/05 16:18:50 INFO HiveMetaStore: 0: Get schema version result={ version=2.3.0,
...
20/11/05 16:18:50 INFO HiveMetaStore: 1: New partition added to metadata {partitionName=dt=20201105,
...
20/11/05 16:18:50 INFO HiveMetaStore: 1: Completed partition metadata refresh on default.sample_table
```
在这个例子中,可以看到Spark使用的metastore是Hive Metastore,地址是默认的thrift地址(通常是localhost:9083)。
如果使用的是其他类型的metastore,例如AWS Glue或Databricks Metastore,输出结果会显示对应的URL地址。
阅读全文