Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Table Functions #273

Closed
tshauck opened this issue Nov 12, 2023 · 2 comments
Closed

Support Table Functions #273

tshauck opened this issue Nov 12, 2023 · 2 comments

Comments

@tshauck
Copy link
Member

tshauck commented Nov 12, 2023

It'd be nice for exon to support table functions, e.g. SELECT * FROM read_fasta('./path/to/file.fasta.gz'). It should support taking 0 or more arguments.

At least two things are needed to support table functions:

  1. Support in query planner to recognize the case when a table function is used. This likely builds off: https://github.com/apache/arrow-datafusion/tree/master/datafusion/sql
  2. Based on the recognition of table function, convert it into the appropriate scan execution.

Start with a read_fasta and move onto other functions.

@tshauck
Copy link
Member Author

tshauck commented Nov 21, 2023

Datafusion plans to add support for this, so wait for its release: apache/datafusion#7926

@tshauck
Copy link
Member Author

tshauck commented Dec 14, 2023

Scan Functions

  • BAM - A BAM file.
  • BCF - A BCF file.
  • BED - A BED file.
  • FASTA - A FASTA file.
  • FASTQ - A FASTQ file.
  • FCS - An FCS file.
  • GENBANK - A GenBank file.
  • GFF - A GFF file.
  • GTF - A GTF file.
  • HMMDOMTAB - A HMMER DOMTAB file.
  • MZML - An mzML file.
  • SAM - A SAM file.
  • VCF - A VCF file.

Indexed

  • INDEXED_BAM - A BAM file with an associated index file.
  • INDEXED_VCF - A VCF file with an associated index file.

Misc

  • Docs

@tshauck tshauck closed this as completed Dec 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant