在Spark 2.2.0中查询Hive表

时间:2019-06-29 07:32:05

标签: apache-spark hadoop hive apache-spark-sql

我有一个具有1900列的avro文件格式的配置单元表(例如table1)。当我在蜂巢中查询表时-我能够获取数据,但是当我在spark sql中查询同一表时,我会遇到Metastore Client失去连接的情况。尝试重新连接

我还查询了另一个avro文件格式的蜂巢表(例如table2),其中有130列,它正在同时获取hive和spark中的数据。

我观察到的是我可以在table2的hdfs位置中看到数据,但是在table1的hdfs位置中看不到任何数据(但是当我仅在蜂巢中查询时,它正在缓存数据)

2 个答案:

答案 0 :(得分:0)

以下内容将帮助您检查Table1的数据存储在HDFS中的位置。

对于表1:您可以通过在Mapiveuce作为执行引擎的Hive中运行带有WHERE条件的SELECT查询来检查HDFS中的数据位置。作业完成后,您可以检查YARN应用程序的地图任务日志(特别是文本“ 处理文件”),并查找从何处获取输入数据文件。

此外,尝试通过运行“ SHOW CREATE TABLE;”检查HiveMetastore中存在的两个表的数据位置。在Hive中的两个表中。从结果中,尝试检查“ LOCATION”的详细信息。

答案 1 :(得分:0)

  1. 拆分将告诉您有关MR作业中映射器的数量。
  2. 它不会向您显示提取数据的确切位置。