Database backed for DataFrames

Any package in Julia like R’s dbplyr?

dbplyr allows you to use remote database tables as if they are in-memory data frames by automatically converting dplyr code into SQL. I want to do the same with DataFrames and SQL.

3 Likes

Query.jl says this is a goal in their readme, but it hasn’t been updated in a few years, and SQL gen doesn’t look like it’s been implemented.

It’s not an answer to your question, but FunSQL jl has some pretty sweet functionality for generation SQL in native Julia.

1 Like

A set of basic collection-like operations backed by an SQL database is available in [ANN] SQLStore.jl: use SQL tables as persistent Julia collections.

It presents tables with interface similar to arrays or dicts, see the notebook for some examples. Stuff like push!, filter, count, etc.
SQLStore is not a full Julia-SQL translation layer, so not exactly what you are looking for. Still, it is helpful for eg loading the required subset of the whole SQL table into memory. After that, just use familiar Julia in-memory tools (:

2 Likes

A bit ambitious, but I wonder if a package like dbplyr existed in Julia, then packages built on DataFrames, such as Survey.jl or TSFrames.jl, could simply switch the backend to do everything out of memory.

Would something like this be interesting to build?

1 Like

I would totally use that!

2 Likes

this would be very useful!

1 Like

A year late to the party but we have this now: GitHub - TidierOrg/TidierDB.jl: Tidier database analysis in Julia, modeled after the dbplyr R package.

8 Likes