[最佳答案] I ended up with following optimizations, in case someone will need it: (defn eid->entry "Mapping via :eavt index" [db eid] (->> (d/datoms db :eavt eid) ; access all datoms by eid once (seq) (reduce (fn [m dtm] (let [attr-key (d/ident db (:a dtm)) v (:v dtm)] (assoc m attr-key v) ;; new query code (->> (d/datoms db :aevt :entry/uuid) (pmap #(->> % :e (eid->entry db)))) I used pmap instead of map and resorted to :eavt index to get all attributes and values o