2017-06-05 4 views
1

Ich versuche, eine externe Polybase-Tabelle in Azure Data Warehouse für die Hive-Tabelle zu erstellen, die als ORC (HD Einblick Data Lake) und nach Datum partitioniert ist wenn ich die externe Tabelle abfrage, die in SQL-Server ohne eine richtige Fehlermeldung fehlschlägt.HdInsight Azure DW Polybase zu Hive-Tabelle (ORC) mit Datum Partition schlägt fehl

Wenn ich keine Partition verwenden, kann ich auf Hive ORC-Tabelle mit externen Tabelle zugreifen, aber mit Partition bekomme ich unter Fehler ohne richtige Fehlermeldung.

Fehler:

Msg 106000, Ebene 16, Status 1, Zeile 33 Index: 23, Größe: 23

Detail:

Hive Tabelle:

AUSSEN CREATE TABLE DL_ClickStream_fnl (

.) PARTITIONIERT B Y (TIME_STAMP-Datum) GESPEICHERT ALS ORC;

Azure DW Externe Tabelle:

AUSSEN CREATE TABLE [stg] [dl_clickstream_procd] (

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

File Format:

externe Datei FORMAT CREATE [ORCFileFormat_DL] MIT (FORMAT_TYPE = ORC)

+0

Hmm, unterstützt Azure SQL Data Warehouse zu diesem Zeitpunkt nicht nur die Polybase-Konnektivität zu Azure Blob Storage und Azure Data Lake? Schauen Sie sich den gelben Pfeil [hier] an (https://docs.microsoft.com/en-us/sql/relational-databases/polybase/polybase-guide). SQL Server 2016 und APS können eine Verbindung zu Hadoop herstellen. Subtil, nicht wahr. – wBob

Antwort

0

In Hive die partitionierten Spalte eine virtuelle Spalte des Verzeichnisses Metadaten abgeleitet wird. PolyBase liest die Dateien, die die partitionierte Spalte nicht direkt ausfüllen können. Entfernen Sie in der externen SQL-DWD-Tabellen-DDL die Spalte "Partitioniert nach" und Ihre Auslastung sollte funktionieren.

Verwandte Themen