Hi @eileennoonan
As a vector DB, it implements Arrow Flight, which should be more efficient for reading.
Have you tried connecting with ADBC (GitHub - elixir-explorer/adbc: Apache Arrow ADBC bindings for Elixir) ?
I have not tried adbc
!
I did look at it a few weeks ago, and I’ve actually learned quite a bit about Arrow since then, but it’s not clear to me how adbc
would fit in here. But I’d love to know if you don’t mind expanding on it.
At the moment, elixir_lancedb
converts from row -> arrow
and arrow -> row
in Rust, at the NIF boundaries that add / read data. I’m new to this whole space so I don’t know how to make that more efficient beyond e.g. slapping rayon on it.
Oh sure, I wasn’t thinking on adbc for row based movement (as yo might need in Ecto). It would be just for querying; probably not what you are searching for.
I mentioned you and the others in the exqlite discussion thread here. It covers multiple topics, DBConnection (briefly) included.
@eileennoonan Maybe what’s discussed there is not high on your priority list just yet but IMO take a quick look just in case.
Yup, I’m familiar with that thread and it’s a big part of why I’m not planning to use DBConnection anymore