Project status

A snapshot of what works today. The library is in early development; the API will change before the first release.

Query interfaces

  • [x] SQL: SessionContext.sql(String)
  • [x] DataFrame: select, filter (other transformations TBD)
  • [x] DataFusion-Proto LogicalPlanNode: SessionContext.fromProto(byte[]). The datafusion-proto Java classes are generated by the build.

Data sources

  • [x] Parquet via registerParquet / readParquet, with ParquetReadOptions
  • [x] CSV via registerCsv / readCsv, with CsvReadOptions
  • [ ] JSON, Avro
  • [ ] Custom catalog and table providers

Results

  • [x] DataFrame.collect(allocator) — Arrow C Data Interface stream
  • [x] DataFrame.count(), show(), show(int)
  • [x] SessionContext.tableSchema(String)

Not yet

  • [ ] SessionConfig / RuntimeEnv knobs
  • [ ] Java UDFs
  • [ ] write_* outputs