# Difference between JuliaDB and DataFrames

**URL:** <https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808>\
**Category:** Data\
**Created:** [June 12, 2021, 7:43pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808 "2021-06-12T19:43:18Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![brett\_knoss](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/brett_knoss/32/13050_2.png) [@brett\_knoss](https://discourse.julialang.org/u/brett_knoss)\
**Post date:** [June 12, 2021, 7:43pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/1 "2021-06-12T19:43:18Z")

</div>

Is anyone familar to both DataFrames.jl How does JuliaDB.jl compare to DataFrames.jl?

---

<div class="post-metadata">

**Author:** ![tbeason](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tbeason/32/15898_2.png) [@tbeason](https://discourse.julialang.org/u/tbeason)\
**Post date:** [June 12, 2021, 8:22pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/2 "2021-06-12T20:22:30Z")

</div>

I edited the title to say DataFrames as I believe that is what you meant to say (you had DataTables).

I am but one person, but I will weigh in: most people should be using DataFrames.jl at this point. The latest updates over the last several months have really improved the experience and performance. JuliaDB.jl is basically not maintained and certainly not actively developed. The last year’s worth of commits are mostly justly just related to CI and not about the package itself. There could be a few usecases where JuliaDB is still the right choice, but they would likely be much fewer in number now that DataFrames has matured significantly.

---

<div class="post-metadata">

**Author:** ![brett\_knoss](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/brett_knoss/32/13050_2.png) [@brett\_knoss](https://discourse.julialang.org/u/brett_knoss)\
**Post date:** [June 12, 2021, 8:28pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/3 "2021-06-12T20:28:28Z")

</div>

OK thanks.

I know that there are other packages that tie into databases, but I,m not sure how well they do for performance. Mondoc.jl is fast, but MangoDB isn’t relational, so that would be an issue for what I’m doing.

Is there a way to save DataFrames as xlsb binaries?

---

<div class="post-metadata">

**Author:** ![tbeason](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tbeason/32/15898_2.png) [@tbeason](https://discourse.julialang.org/u/tbeason)\
**Post date:** [June 12, 2021, 8:30pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/4 "2021-06-12T20:30:55Z")

</div>

I am not aware of any Julia package that can save tables in that format.

---

<div class="post-metadata">

**Author:** ![brett\_knoss](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/brett_knoss/32/13050_2.png) [@brett\_knoss](https://discourse.julialang.org/u/brett_knoss)\
**Post date:** [June 12, 2021, 8:32pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/5 "2021-06-12T20:32:05Z")

</div>

JuliaDB does, but I don’t want to use it just for that.

---

<div class="post-metadata">

**Author:** ![tbeason](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tbeason/32/15898_2.png) [@tbeason](https://discourse.julialang.org/u/tbeason)\
**Post date:** [June 12, 2021, 8:40pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/6 "2021-06-12T20:40:57Z")

</div>

I am not aware of that functionality in JuliaDB. I was under the impression the `save` functionality in JuliaDB uses the base Serialization.

---

<div class="post-metadata">

**Author:** ![brett\_knoss](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/brett_knoss/32/13050_2.png) [@brett\_knoss](https://discourse.julialang.org/u/brett_knoss)\
**Post date:** [June 13, 2021, 3:54am UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/7 "2021-06-13T03:54:19Z")

</div>

Maybe I’m wrong on this, what is base Serialization?

---

<div class="post-metadata">

**Author:** ![pixel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pixel/32/26437_2.png) [@pixel](https://discourse.julialang.org/u/pixel)\
**Post date:** [June 13, 2021, 3:51pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/8 "2021-06-13T15:51:37Z")

</div>

maybe this? [Serialization · The Julia Language](https://docs.julialang.org/en/v1/stdlib/Serialization/)

One function ('serialize") writes a variable (value, array, structure, anything) to a file, a second function (“deserialize”) reads it in again. Very very useful.

---

<div class="post-metadata">

**Author:** ![DorianT](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/doriant/32/24897_2.png) [@DorianT](https://discourse.julialang.org/u/DorianT)\
**Post date:** [June 14, 2021, 5:50pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/9 "2021-06-14T17:50:24Z")

</div>

Are you by chance aware, why JuliaDB is not actively developed anymore? I haven’t used it yet, but the ability to work with data larger than memory easily seemed like the USP and reason to use it over DataFrames in some cases?

---

<div class="post-metadata">

**Author:** ![brett\_knoss](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/brett_knoss/32/13050_2.png) [@brett\_knoss](https://discourse.julialang.org/u/brett_knoss)\
**Post date:** [June 14, 2021, 5:53pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/10 "2021-06-14T17:53:01Z")

</div>

It is activly developed, the last update for JuliaDB is later than the last update, for DataFrames. JuliaDB has something like 40 contributors, while DataFrames has over 100. That is good to know.

---

<div class="post-metadata">

**Author:** ![tbeason](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tbeason/32/15898_2.png) [@tbeason](https://discourse.julialang.org/u/tbeason)\
**Post date:** [June 14, 2021, 6:04pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/11 "2021-06-14T18:04:12Z")

</div>

I was not involved with it so I don’t really know. I also think that it looks great, and it is a bit unfortunate that it fell down the priority list. I believe that perhaps there used to be some financial backing for developing it and that ran dry – could be misremembering…? I know many people would probably be very happy if someone were to volunteer as a maintainer!

---

<div class="post-metadata">

**Author:** ![jpsamaroo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jpsamaroo/32/46804_2.png) [@jpsamaroo](https://discourse.julialang.org/u/jpsamaroo)\
**Post date:** [June 15, 2021, 1:17pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/12 "2021-06-15T13:17:07Z")

</div>

JuliaDB could hardly be considered “actively developed”. There is only one person with a recently-updated PR, and that’s CI-related.

The reason that JuliaDB isn’t actively developed is mostly due to a mixture of:

1. The original developers are busy and JuliaDB isn’t their work priority
2. JuliaDB has plenty of crufty legacy code that is in need of a refactoring
3. CI is (currently) unreliable
4. JuliaDB users generally appear to be uninterested in its upkeep, and keep filing issues without contributing fixes

JuliaDB is basically in maintenance mode until one or more people take up the torch of triaging issues and fixing the most important/easily fixable problems.

---

<div class="post-metadata">

**Author:** ![brett\_knoss](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/brett_knoss/32/13050_2.png) [@brett\_knoss](https://discourse.julialang.org/u/brett_knoss)\
**Post date:** [June 16, 2021, 11:00pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/13 "2021-06-16T23:00:05Z")

</div>

Interesting, not sure how to get it on track.

---

<div class="post-metadata">

**Author:** ![brett\_knoss](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/brett_knoss/32/13050_2.png) [@brett\_knoss](https://discourse.julialang.org/u/brett_knoss)\
**Post date:** [June 17, 2021, 7:45pm UTC](https://discourse.julialang.org/t/difference-between-juliadb-and-dataframes/62808/14 "2021-06-17T19:45:37Z")

</div>

What about monoc.jl, an sql package, or Diana.jl to connect to a database like faunadb?
