Live data from Hacker News

Crux SQL

juxt.pro

11–20 of 36 posts

Re: Crux SQL

#11

Does this mean I can use tools like https://github.com/metabase/metabase with crux? Awesome if so!

I don't believe Metabase supports the Calcite SQL dialect ( https://github.com/metabase/metabase/issues/6230 ), which is what Crux is using for the SQL layer. So I believe the answer is no - but I'm not an expert here, so don't take this answer as definitive.

You can write your own driver for Metabase without _too_ much hassle: https://github.com/metabase/metabase/wiki/Writing-A-Driver

Re: Crux SQL

#12
post #7

I learned datalog through Crux and I really enjoyed it. After not very long, it was more intuitive and easier to reason about that similar sql.

I'm trying to learn datalog casually, there's lots of queries that I still don't know how they translate I.e. group by, window aggregates, order by, limit I'd be interested in seeing the equivalent datalog that Crux makes given some of those statements for learning what efficient datalog looks like for some of those problems

I highly recommend http://www.learndatalogtoday.org/ as a learning resource.

I also enjoyed this talk: https://youtu.be/oo-7mN9WXTw though it’s not so much about syntax as the logic of it.

Re: Crux SQL

#13
This looks really interesting - especially the temporal aspects. Does anyone have any insight into using it with RDF/SPARQL data/queries?

Re: Crux SQL

#14
post #13

This looks really interesting - especially the temporal aspects. Does anyone have any insight into using it with RDF/SPARQL data/queries?

From their docs[0]:

> The REST API also provides an experimental endpoint for SPARQL 1.1 Protocol queries under /sparql/, rewriting the query into the Crux Datalog dialect. Only a small subset of SPARQL is supported and no other RDF features are available.

[0]: https://opencrux.com/docs

Re: Crux SQL

#15
post #7

Earlier quoted context omitted.

I'm trying to learn datalog casually, there's lots of queries that I still don't know how they translate I.e. group by, window aggregates, order by, limit I'd be interested in seeing the equivalent datalog that Crux makes given some of those statements for learning what efficient datalog looks like for some of those problems

I highly recommend http://www.learndatalogtoday.org/ as a learning resource. I also enjoyed this talk: https://youtu.be/oo-7mN9WXTw though it’s not so much about syntax as the logic of it.

Just finished watching that talk, I recommend it too! Information dense and fast with lots of useful examples on how to use Datalog, especially comparing it to what most programmers use today such as relational, key/value and document stores.

Re: Crux SQL

#16
post #13

This looks really interesting - especially the temporal aspects. Does anyone have any insight into using it with RDF/SPARQL data/queries?

From their docs[0]: > The REST API also provides an experimental endpoint for SPARQL 1.1 Protocol queries under /sparql/, rewriting the query into the Crux Datalog dialect. Only a small subset of SPARQL is supported and no other RDF features are available. [0]: https://opencrux.com/docs

The context here is that we benchmark ourselves against the likes of Neo4j and RDF4J using SPARQL test suites, in particular WatDiv [0] and LUBM [1] which are specifically designed for stress testing various subgraph matching queries [2]. Therefore we had to translate the data sets and queries from RDF/SPARQL to edn/Datalog etc.

There is an open issue in regards more general RDF support with details on the kinds of things Crux would need to add: https://github.com/juxt/crux/issues/317

[0] https://dsg.uwaterloo.ca/watdiv/

[1] http://swat.cse.lehigh.edu/projects/lubm/

[2] https://en.wikipedia.org/wiki/Subgraph_isomorphism_problem

Re: Crux SQL

#19

If it's not ok to use Master/Slave, or the imagery of a noose, why is it ok to use "crux?" https://en.wikipedia.org/wiki/Crux_simplex

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).

Re: Crux SQL

#20

If it's not ok to use Master/Slave, or the imagery of a noose, why is it ok to use "crux?" https://en.wikipedia.org/wiki/Crux_simplex

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 a high degree ...." Extended sense of "central point" is attested by 1888.

So I guess you'd be find with calling your product "noose" or "lynching". Good luck with that.

Post reply on HN