uwdata / flechette

Fast, lightweight access to Apache Arrow data.
https://idl.uw.edu/flechette/
Other
45 stars 2 forks source link

Add struct/row proxy objects via useProxy option. #12

Closed jheer closed 6 days ago

jheer commented 3 weeks ago

The proxy representation follows the strategy of the Vega arrow loader and suggestions from @mcovalt.

Benchmarks show non-trivial performance improvements (25-35% reduced running time) for these proxy objects vs. vanilla JS objects: 26.72ms vs. 40.23ms for flights.arrows and 441.24ms vs. 576.23ms for scrabble.arrows. However, due to their simplicity and convenience methods, this PR leaves vanilla objects as the default object representation (hence the opt-in via useProxy). Both methods in Flechette remain substantially faster than the Arrow-JS reference implementation.

jheer commented 6 days ago

Replaced by #15.