This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2024-02-14
Channels
- # ai (4)
- # babashka (4)
- # beginners (46)
- # biff (5)
- # calva (12)
- # clojure (6)
- # clojure-austin (13)
- # clojure-dev (27)
- # clojure-europe (62)
- # clojure-nl (1)
- # clojure-norway (17)
- # clojure-spec (2)
- # clojure-uk (12)
- # clojurescript (10)
- # cursive (3)
- # datahike (26)
- # datalevin (9)
- # datomic (7)
- # gratitude (4)
- # honeysql (9)
- # hyperfiddle (12)
- # instaparse (2)
- # lsp (65)
- # membrane (7)
- # missionary (2)
- # off-topic (8)
- # polylith (33)
- # portal (7)
- # quil (1)
- # re-frame (4)
- # reagent (18)
- # releases (3)
- # ring (3)
- # spacemacs (2)
- # specter (4)
Not sure if this is relevant to the new query engine. But I saw this recent change in datascript. https://github.com/tonsky/datascript/pull/459
Won't have substantial saving, but it does for some cases. In our case, most clauses are handled by the planner, but some clauses are not. This change helps those.
For now planner handles "normal" clauses, we will gradually move more types of clauses to it.
version q1 q2 q3 q4 q5 qpred1 qpred2 latest-datomic 6.2 10.6 14.3 18.0 156.9 22.2 25.3 latest-datascript 0.63 3.0 4.4 6.7 352.7 7.3 16.4 0.8.26-datalevin 0.70 2.9 3.4 5.1 308.7 7.9 8.8 latest-datalevin 0.66 0.68 3.0 3.3 177.5 3.6 2.8
I have not finished the optimization work, but the preliminary results are promising. q5 should substantially improve after I am done.
In any case, queries in this datascript benchmark are too simple, we will port Join-order-benchmark from SQL in order to see how it fairs with complex queries.
Looks very promising!