This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-03-18
Channels
- # announcements (4)
- # babashka (2)
- # beginners (72)
- # calva (2)
- # cider (18)
- # clj-kondo (30)
- # cljs-dev (2)
- # clojure (106)
- # clojure-austin (2)
- # clojure-europe (17)
- # clojure-italy (6)
- # clojure-nl (4)
- # clojure-uk (109)
- # clojurescript (31)
- # cursive (6)
- # data-science (2)
- # datomic (30)
- # events (1)
- # fulcro (20)
- # graphql (4)
- # jobs (2)
- # joker (8)
- # kaocha (2)
- # meander (31)
- # off-topic (1)
- # pathom (53)
- # re-frame (22)
- # reitit (1)
- # shadow-cljs (26)
- # specter (2)
- # sql (20)
- # testing (2)
- # tools-deps (2)
- # tree-sitter (1)
- # xtdb (20)
- # yada (6)
could anyone speak to whether the peer vs. client, on-prem vs. cloud discussion has a settled answer for new projects?
I'd love to use peer + on-prem, but I have a lingering worry about its development stalling out or other similar complications over time
The ability to excise and being able to depoly on non-aws infrastructures such distinctive features of datomic on-prem are important requirements for medical and banking industries still, so i would be really surprised if the on-prem development would stall.
on the question of client vs peer, im unsure... i really love the entity api and the fact that i can just run integration-level test using in-memory dbs, which allow direct access to my database functions.
mm -- I'm curious to hear if there's an answer on the topic that's settled -- I'll wait to hear, or might reach out to ask
with the help of https://github.com/ComputeSoftware/datomic-client-memdb you can still create a specific database state using the peer api, then run your app functions which use the client api against that prepared state
btw, is there any official or non-official Python lib for the Datomic Client API or at least some specs? All I gathered from the docs that the client api is a http api using transit encoding as seen it being mentioned on this diagram: https://docs.datomic.com/on-prem/architecture.html#storage-services It there isn't can we write one legally?
Can a datomic peer server and client app process reside on the same machine to eliminate the network hop?
and system problems will take them both down, as opposed to if you have one peer server serving multiple remote clients
ok, thank you
Is the typical architectural pattern to have distinct peer servers serving groups of clients with same/similar working sets?
i.e. how much query work you need to do, how many clients you have, what your deployment environment makes feasible
at a high level, a beefy peer server with a big heap (and maybe valcache) can often serve numerous clients (again, depending on their workloads/etc)
ok yeah, makes sense, thanks
Is it possible / whats the proper syntax to do something like this for Datomic Cloud?
(let [attrs '[:foo/bar]]
(d/q {:query '[:find (pull ?e ?attrs)
:in $ ?attrs
:where [?e :foo/baz? true]]
:args [db attrs]}))