This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-08-10
Channels
- # announcements (1)
- # babashka (18)
- # beginners (122)
- # calva (18)
- # cider (3)
- # cljs-dev (2)
- # cljsrn (3)
- # clojure (102)
- # clojure-europe (15)
- # clojure-france (2)
- # clojure-nl (1)
- # clojure-portugal (1)
- # clojure-spec (3)
- # clojure-uk (8)
- # clojurescript (46)
- # clojureverse-ops (5)
- # code-reviews (1)
- # conjure (2)
- # cursive (15)
- # datalog (13)
- # datomic (18)
- # emacs (4)
- # fulcro (8)
- # helix (8)
- # instaparse (1)
- # introduce-yourself (2)
- # jobs (4)
- # leiningen (23)
- # lsp (26)
- # malli (21)
- # off-topic (34)
- # pedestal (21)
- # polylith (6)
- # reitit (5)
- # remote-jobs (3)
- # schema (1)
- # sci (8)
- # shadow-cljs (8)
- # spacemacs (3)
- # sql (30)
- # testing (31)
- # tools-deps (21)
- # vim (25)
- # xtdb (8)
Hi! Has anyone tried to build Gremlin support for Datomic (for Apache TinkerPop v3; I see there was a PoC "blueprint" for an old version)? Thanks
Does Datomic (on-prem) support Full-Text Search or does it have any integration with ElasticSearch? Neither scanning the docs nor searching the Internet answered that. Thank you!
On-prem supports fulltext: https://docs.datomic.com/on-prem/schema/schema.html#operational-schema-attributes
It’s very limited and you cannot remove it later. If you want flexible and powerful fulltext search over large text corpuses I suggest feeding the datomic transaction log into a secondary elasticsearch service and using that for fulltext searches.
If you just have tiny text fields and just want some kind of low-headache fuzzy matching, it’s probably fine.
Awesome, thanks!
@U09R86PA4 perhaps it would be good if https://docs.datomic.com/on-prem/schema/schema-change.html#schema-alteration listed :db/fulltext
in the "You can never alter ..." list? Not sure how to propagate that suggestions to the Datomic team...
Hi @U0522TWDA it's already there: You can never alter _:db/valueType_, _:db/fulltext_, _:db/tupleAttrs_, _:db/tupleTypes_, or _:db/tupleType_.
Ah, thank you, I'm blind today :)
Do the following two dbs exhibit the same performance?
(def db (d/db conn))
(def db-as-of (d/as-of db (:t db)))
Put another way, as (:t db)
grows further from the current :t
(e.g., current :t
is 1 > (:t db)
, 10 >, ..., 1e6 >, ...), does db
pay the same performance penalty an as-of db pays? (current :t
= (:t (d/db conn))
).A “current” (unfiltered) db is always fastest, because it only ever has to retrieve the current index. It only merges against that index and the memlog.
Potentially an as-of >= last-indexed-t will do the same and be the same complexity, but I donno.
anything older is going to have to look at the history or mid-history indexes to reconstruct the value at that moment in time.
whether this is slower-enough in practice depends on object cache, valcache, datasize, selectivity of queries, etc
Interesting, thanks for responding. By "anything older is going to ...", do you mean both an as-of and an unfiltered db would go down this path?