Crux SQL
21–30 of 36 posts
Re: Crux SQL
#22Oh dear, I feel like there is some gap between the set of technologies I'm aware of and all this stuff. First of, can somebody (preferably not involved with crux) tell me, if I'm actually should be aware of crux? Is it "yet another Cassandra"? Is it preferable in any way to Cassandra (or whatever "yet another of" it is)?
I see 4 main reasons why someone may want to be aware of Crux:
- if you have a bitemporal problem
- if you have a graph problem, i.e. something you might initially look to Neo4j to help with
- if you want to use Datalog because it can make writing an application simpler
- if you are thinking of building something similar (immutable event log + indexes) and want to save time
Crux is very different from Cassandra (strong consistency, fat nodes, arbitrary joins etc.), but you could definitely use Cassandra in your Crux architecture.
The closest "yet another" comparison would be Datomic. Crux and Datomic both strive to reimagine what a "general purpose" DBMS should look like, with the primary goal being developer productivity/sanity, whereas Cassandra's goal is simply to be a highly-scalable document store.
Hope that helps!
Re: Crux SQL
#23Oh dear, I feel like there is some gap between the set of technologies I'm aware of and all this stuff. First of, can somebody (preferably not involved with crux) tell me, if I'm actually should be aware of crux? Is it "yet another Cassandra"? Is it preferable in any way to Cassandra (or whatever "yet another of" it is)?
(I am involved with Crux - sorry!) I see 4 main reasons why someone may want to be aware of Crux: - if you have a bitemporal problem - if you have a graph problem, i.e. something you might initially look to Neo4j to help with - if you want to use Datalog because it can make writing an application simpler - if you are thinking of building something similar (immutable event log + indexes) and want to save time Crux is…
Re: Crux SQL
#24Oh dear, I feel like there is some gap between the set of technologies I'm aware of and all this stuff. First of, can somebody (preferably not involved with crux) tell me, if I'm actually should be aware of crux? Is it "yet another Cassandra"? Is it preferable in any way to Cassandra (or whatever "yet another of" it is)?
(I am involved with Crux - sorry!) I see 4 main reasons why someone may want to be aware of Crux: - if you have a bitemporal problem - if you have a graph problem, i.e. something you might initially look to Neo4j to help with - if you want to use Datalog because it can make writing an application simpler - if you are thinking of building something similar (immutable event log + indexes) and want to save time Crux is…
Re: Crux SQL
#25Earlier quoted context omitted.
(I am involved with Crux - sorry!) I see 4 main reasons why someone may want to be aware of Crux: - if you have a bitemporal problem - if you have a graph problem, i.e. something you might initially look to Neo4j to help with - if you want to use Datalog because it can make writing an application simpler - if you are thinking of building something similar (immutable event log + indexes) and want to save time Crux is…
Thank you, it explains a lot. However, I'm struggling to imagine from the top of my head a problem, where I'd need a DB that is both bitemporal and graph-based, while keeping in mind that both conditions are relatively "expensive" compared to what more common relational design could offer — so I really better have a good reason to chose something exotic like that! Do you perhaps have some example?
Re: Crux SQL
#26Earlier quoted context omitted.
(I am involved with Crux - sorry!) I see 4 main reasons why someone may want to be aware of Crux: - if you have a bitemporal problem - if you have a graph problem, i.e. something you might initially look to Neo4j to help with - if you want to use Datalog because it can make writing an application simpler - if you are thinking of building something similar (immutable event log + indexes) and want to save time Crux is…
Thank you, it explains a lot. However, I'm struggling to imagine from the top of my head a problem, where I'd need a DB that is both bitemporal and graph-based, while keeping in mind that both conditions are relatively "expensive" compared to what more common relational design could offer — so I really better have a good reason to chose something exotic like that! Do you perhaps have some example?
Temporal graph analysis of "evolving graphs" is an active research field with some strong motivating use-cases, for instance: profiling networks of fraudulent transactions across N bank accounts with data pulled from M source systems. This paper discusses the analysis of research citations over time, as another example: https://pdfs.semanticscholar.org/110b/0db484a1303eda30aa7e34...
That said, Crux's indexes aren't optimal for making all kinds of analytical time-range queries efficient just yet. Instead Crux is currently focussed on point-in-time queries, but the temporal R&D is still happening as it feels very ripe.
Looking for examples more generally, I think wherever you have a meaningful use-case for a graph database you probably, eventually, will want to capture and model history. If you then find yourself with two or more such databases that you want to integrate, then you will greatly benefit from a bitemporal graph DBMS.
As a fun example, I like to envisage integrating our two federated evolving knowledge graphs. Imagine a tool for "networked thought" like Roam Research that could allow us both to visualise the evolving connections between our independently recorded thoughts, before, during and after this conversation. Graphs of knowledge encoded in time.
Re: Crux SQL
#27Does this mean I can use tools like https://github.com/metabase/metabase with crux? Awesome if so!
https://docs.datomic.com/cloud/analytics/analytics-concepts....
Re: Crux SQL
#28Earlier quoted context omitted.
Crux: "the decisive or most important point at issue," from Oxford's "Lexico" service. This is a common(ish) English word, it surprises me that it would be offensive in contemporary usage, though I get that the Latin origin relates to Christianity (via the crucifixion story).
And the reason the word "crux" means a "decisive point" is because of the Romans' use of the cross as a means of torturing and killing people. The fact that you're fine with it is OK--it's a free Country--but it tells me a lot about what kind of a person you are. https://www.etymonline.com/search?q=crux > Century Dictionary ascribes it to "the cross as an instrument of torture; hence anything that puzzles or vexes in…
What kind of a sinful name is Crossfit! Burn them at the cross!
And let'sorganize a protest in front of the Center for Research in Open Source Software (CROSS) at UC Santa Cruz(!!!!!) too!
Re: Crux SQL
#29Any relation to the CRUX Linux distro? Or is this just an unfortunate overlap of names?
Off-topic, but I quite liked CRUX linux when I did use it. It introduced me to BSD-style init scripts
Re: Crux SQL
#30Earlier quoted context omitted.
Crux: "the decisive or most important point at issue," from Oxford's "Lexico" service. This is a common(ish) English word, it surprises me that it would be offensive in contemporary usage, though I get that the Latin origin relates to Christianity (via the crucifixion story).
And the reason the word "crux" means a "decisive point" is because of the Romans' use of the cross as a means of torturing and killing people. The fact that you're fine with it is OK--it's a free Country--but it tells me a lot about what kind of a person you are. https://www.etymonline.com/search?q=crux > Century Dictionary ascribes it to "the cross as an instrument of torture; hence anything that puzzles or vexes in…
Just because Crux's root was a torture device doesn't mean it has any connotation to a torture device in modern English.