具有日期分区的HdInsight Azure DW Polybase到Hive表(ORC)失败

时间:2017-06-05 21:06:01

标签: azure hiveql hdinsight azure-data-lake polybase

我正在尝试在Azure数据仓库中为Hive表创建一个polybase外部表,该表存储为ORC(HD insight Data lake)并按日期分区,当我查询外部表时它在SQL服务器中失败而没有任何正确的错误消息。

当我不使用分区时,我可以使用外部表访问配置单元ORC表,但是对于分区,我没有任何正确的错误消息,我得到以下错误。

错误:

Msg 106000,Level 16,State 1,Line 33 Index:23,Size:23

详情:

蜂巢表:

CREATE EXTERNAL TABLE DL_ClickStream_fnl(

。)分区(TIME_STAMP日期)存储为ORC;

Azure DW外部表:

CREATE EXTERNAL TABLE [stg]。[dl_clickstream_procd](

)WITH(DATA_SOURCE = [AzureDataLakeStore_clusters],LOCATION = N'clusters / BLMSpark / hive / warehouse / coremetrics.db / dl_clickstream_procd',FILE_FORMAT = [ORCFileFormat_DL],REJECT_TYPE = VALUE,REJECT_VALUE = 2)

文件格式:

创建外部文件格式[ORCFileFormat_DL] WITH(FORMAT_TYPE = ORC)

1 个答案:

答案 0 :(得分:0)

在Hive中,分区列是从目录元数据派生的虚拟列。 PolyBase直接读取文件无法填充分区列。在SQL DW外部表DDL中,删除按列分区的内容,您的负载应该可以正常工作。

相关问题