This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-12-01
Channels
- # 100-days-of-code (5)
- # adventofcode (234)
- # aleph (13)
- # announcements (2)
- # architecture (3)
- # bangalore-clj (1)
- # beginners (312)
- # calva (7)
- # cider (6)
- # cljdoc (3)
- # cljs-dev (30)
- # cljsrn (2)
- # clojure (40)
- # clojure-austin (2)
- # clojure-dev (65)
- # clojure-greece (1)
- # clojure-italy (29)
- # clojure-kc (1)
- # clojure-russia (2)
- # clojure-uk (26)
- # clojurebridge (1)
- # clojurescript (4)
- # cursive (11)
- # data-science (1)
- # datomic (43)
- # docker (1)
- # duct (7)
- # emacs (3)
- # figwheel-main (7)
- # fulcro (8)
- # garden (3)
- # graphql (8)
- # hyperfiddle (4)
- # off-topic (10)
- # other-languages (12)
- # pathom (4)
- # portkey (1)
- # remote-jobs (3)
- # rum (8)
- # shadow-cljs (40)
- # tools-deps (68)
- # unrepl (2)
- # vim (5)
Hi guys, I'm in situation which need to build database tables on demand, for example how to model the data storage when user1 wants to create table to save student name and age and user2 wants to save table for x and y and z, x data type string, y is time stamp, z is integer
What I want to do is to let the user create his own tables on demand , how can I model this in datomic?
@abdullahibra Yes, it’s very easy in Datomic. The only scheme you define is for attributes, and tables (or entities, as Datomic calls them) can have any mix of attributes you want.
Well, so I need to make the schema first?
student name, age, time, grade, addr, etc. But there’s like 20 of them instead of “whatever your client can imagine.”
Nope, this should certainly up to the user
Seems like you might want some entities like: {:db/id 1, :column/name "foo"} {:db/id 2 :row/column 1 :row/value "bar"}
So you want the user to define attributes as well? In that case, you almost certainly need some metadata so your code will know how to deal with those attributes, so I would add a meta layer where user attributes are defined as entities.
What @potetm said seems right to me, plus record the type the user asked the column to be so you can do any conversions necessary
That's good thanks guys
Another thing could apache Jena be close alternative to datomic ?
Is datomic considered rdf facts store + other?
Other is defined as some features
I honestly don’t know enough about rdf to answer the question. It’s an [entity attribute value] store (which seems similar to rdf to my unexperienced eye)
@abdullahibra There was a talk at the Conj years ago that you should check out. It’s not exactly what you’re trying to do, but should give you ideas for how to dynamically build this meta layer for your user attributes. https://youtu.be/sQCoTu5v1Mo
@potetm so seems triple store + other is correct
Thanks guys
are the client librarys open source? i can’t seem to find them anywhere. the reason i ask is i’m trying to see what effort would be involved in an elixir version. unfortunately my company is neck deep in elixir and there’s a strong impedance mismatch between clojure and elixir, so i’m trying to work around it