apache / apache/datafusion

[DISCUSSION] Should `CREATE EXTERNAL TABLE's create a new file if it doesn't exist?

Aperta
#15,944 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Rust
Stelle
9.3k
Fork
2.4k
Merge medio
3g 11h
PR unite (30g)
360

Descrizione

`CREATE EXTERNAL TABLE t STORED AS CSV LOCATION '~/files/foo.csv';` gives an error if the given file does not exist. When we are trying to create a new file and then insert some values into it, we are forced to create the file externally.

I wonder how it sounds if `create external table`'s create the file indeed if it doesn't exist. If it seems like a useful behavior, then there will be a few more questions like
- at what instance exactly the file is generated (during table provider generation, or during scan, or during the next select or insert into query?)
- how are the stores other than local file system treated?

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia con l'esempio CREATE EXTERNAL TABLE di questa issue ed esamina come viene gestita l'assenza di un file CSV locale. Definisci quando dovrebbe avvenire la creazione del file e come il comportamento dovrebbe applicarsi a store diversi dal filesystem locale. Il lavoro è completato quando la proposta risolve queste questioni relative al ciclo di vita e all'ambito dello storage.

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

Valutazione

Stack tecnologico
rust, sql
Ambito
databases
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.