HNHacker News
TopNewBestAskShowJobs

lidavidm

272 karma · joined November 30, 2020

https://github.com/lidavidm

otherdavidli@lidavidm.me

submissionscomments
lidavidm··on Apache Arrow Flight SQL: Accelerating Database Access
The Flight SQL spec landed a bit ahead of implementations. I would have liked to cite more relevant/concrete performance numbers, but we need a full implementation for that! (I believe there is at least one in the works, but I can't speak to those plans myself.)
lidavidm··on Apache Arrow Flight SQL: Accelerating Database Access
Ah, interesting to hear what you're doing. I would like to see Flight supported in JavaScript/the browser someday.

Here, the Flight SQL spec landed ahead of implementations, so that's why there's nothing to list yet. I would stay tuned to hear what people do with this. (I can't speak to any plans myself, though.)

lidavidm··on Apache Arrow Flight SQL: Accelerating Database Access
There are several community members actively working on making things more accessible in general. (Flight SQL definitely needs some polish here.)

For Arrow itself, you could start with the Cookbook [1] (and feel free to file issues if there are things that are unclear, or that you would like to learn more about [2])

The example there is very long, but much of it is repetitive (that said, it could certainly be improved). But to your specific question, what you would eventually do is write a plugin or proxy for Postgres (or another database) implementing these RPC methods. Then you could submit SQL queries using the Flight SQL client (which calls those RPC methods internally) to get back columnar data. You could wrap this all in a JDBC driver as well (which is being actively worked on [3]), in which case you'd be mostly ignorant of what's going on underneath; the benefit there would (hopefully) be faster data access due to the lower layers being columnar (and zero-copy where possible), and enabling parallelism due to Flight (Postgres might not support this for instance, but other databases could, if they could expose internal parallelism or partitioning). Hope that helps.

[1]: https://arrow.apache.org/cookbook/ [2]: https://github.com/apache/arrow-cookbook/ [3]: https://github.com/apache/arrow/pull/12254

lidavidm··on Apache Arrow Flight SQL: Accelerating Database Access
There is not a list (though right now it is zero, unfortunately); Dremio has been doing some work around this (and contributed the spec and implementation) though I can't speak for their plans.

Just a minor distinction - Flight is lower-level and might be used to build a wire protocol for a database, but a "database supporting Flight" still requires something like Flight SQL to specify how the database expects to serve requests over Flight.

lidavidm··on The Bookmaking Habits of Select Species (2012)
If you like this story, Ken Liu has two (IMO) fantastic short story collections in print, The Paper Menagerie and Other Stories and The Hidden Girl and Other Stories. (This story appears in one of the two, not sure which.)

He also has two collections of translated sci-fi, Broken Stars and Invisible Planets.

lidavidm··on Apache Arrow 3.0
Arrow uses SemVer, but the library and the data format are versioned separately: https://arrow.apache.org/docs/format/Versioning.html
lidavidm··on SymPy 1.7
SymPy was the project that got me into open-source nearly ten years ago (through Google Code-In), and I'm happy they're still being developed (and that my contributions, somehow, are still alive and kicking). I don't have much of a use for it anymore, but it was a great help through high school and college.
← PreviousPage 3 of 3