Why build a custom arrow based columnar engine in Rust instead of using Datafusion or Polars?
They are all ultimately just different UIs on top of Arrow.
They're complimentary tools. We can take data out of the spreadsheet and put it into Polars instantly (you can do this in the Python code window if you want), etc.
Regarding why not implement our spreadsheet built on top of those: spreadsheet allow for heterogenous types in columns, so that requires a lot of extra infrastructure to manage, whereas Datafusion and Polars require homogenous column types.