apache / apache/parquet-java

Hive cannot determine the list of columns automatically based on Parquet serde

Aperta
#1,533 5 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Component: Parquet Priority: Critical Type: enhancement
Lingua principale
Java
Stelle
3.1k
Fork
1.6k
Merge medio
3g 12h
PR unite (30g)
33

Descrizione

Today we are not able to create a parquet based hive table without having to specify the column names and types. When we try to define it the following way, we get the error
"14/08/20 17:27:46 ERROR ql.Driver: FAILED: SemanticException [Error 10043]: Either list of columns or a custom serializer should be specified"

```sql
CREATE TABLE parquet_test
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
'/user/pratik/campaigns';
```

Whereas if we create a hive table on top of AVRO based files, we do not need to specify the column names, hive automatically figures out the schema through the SerDe.

```sql
CREATE EXTERNAL TABLE campaigns
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
STORED AS INPUTFORMAT 'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat'
LOCATION '/user/pratik/campaigns'
TBLPROPERTIES ('avro.schema.url'='hdfs:///user/pratik/campaigns.avsc');
```

**Reporter**: [Pratik Khadloya](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=tispratik)
**Assignee**: [Ashish Singh](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=singhashish) / @SinghAsDev

**Note**: *This issue was originally created as [PARQUET-76](https://issues.apache.org/jira/browse/PARQUET-76). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Esamina innanzitutto il report originale PARQUET-76 e la documentazione sulla migrazione collegata a PARQUET-2502. Conferma se l’individuazione automatica delle colonne per le tabelle Hive basate su Parquet è ancora necessaria o è stata spostata altrove, quindi individua gli attuali punti di ingresso dell’implementazione e dei test prima di definire l’ambito rimanente e i criteri di accettazione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java, sql
Ambito
data-engineering, databases
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.