如何使用Apache Drill显示镶木地板文件的列数据类型?

时间:2017-04-28 15:24:44

标签: parquet apache-drill

我正在尝试比较镶木地板文件的差异。一套是使用Apache Drill创建的,另一套是使用Apache Spark创建的。使用Drill创建的集合具有已知类型,因为转换使用create table作为显式转换类型。 Spark创建的集合使用RDD到镶木地板的简单保存并且更大。我想从Spark创建的镶木地板文件中获取类型,但无法使用Drill查询其架构。

所有镶木地板文件都移入或创建在/ tmp

我尝试过这样的事情:

use dfs.tmp; 
SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = `tweet` AND TABLE_SCHEMA = `dfs.tmp`;

这些表没有以这种方式显示,但在我发出show files命令时会显示。我对文档的理解是可以预期的,但我不知道如何查看镶木地板文件的数据类型。

1 个答案:

答案 0 :(得分:1)

目前INFORMATION_SCHEMA可以显示视图和表but not for file-based data sources的数据类型。

  

TABLES表返回数据库中每个表或视图的表名和类型。 (类型表示TABLE或VIEW。)请注意,Drill不返回可用于在基于文件的数据源中查询的文件。相反,请使用SHOW FILES来探索这些数据源。

要比较类型,您可以在每列上使用typeOf函数(选择typeof(col1),...从t)或parquet tools来检查镶木地板文件。