This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-02-16
Channels
- # announcements (33)
- # asami (37)
- # autochrome-github (1)
- # aws (5)
- # babashka (26)
- # babashka-sci-dev (18)
- # beginners (63)
- # biff (1)
- # calva (66)
- # cider (15)
- # clj-kondo (24)
- # cljs-dev (2)
- # cljsrn (14)
- # clojure (62)
- # clojure-doc (1)
- # clojure-europe (15)
- # clojure-nl (11)
- # clojure-spec (12)
- # clojure-uk (4)
- # clojurescript (45)
- # community-development (2)
- # cursive (34)
- # datahike (7)
- # datomic (7)
- # events (1)
- # figwheel-main (5)
- # fulcro (19)
- # gratitude (7)
- # holy-lambda (85)
- # hyperfiddle (4)
- # jobs (7)
- # jobs-discuss (25)
- # kaocha (4)
- # lsp (11)
- # off-topic (1)
- # polylith (20)
- # portal (14)
- # practicalli (6)
- # proletarian (5)
- # rdf (52)
- # re-frame (13)
- # reagent (48)
- # releases (1)
- # remote-jobs (3)
- # shadow-cljs (7)
- # tools-deps (17)
It’s possible to pack a committed database into a one file, but it would need to change the architecture to update a bit to use file offsets rather than block numbers.
It might be possible to build all the required structures in memory, and then pack/flush to disk when it’s done. That’s an interesting idea. It would be quite a bit of work over where things are right now, but now that I think about it, it’s actually a bit like what I was considering for cloud storage
Though, it would be loading up existing blocks into memory, and doing the transaction into those. Then when the transaction is over, it would take any modified blocks and write them to the end of the file
another, somewhat separate question I've been thinking about is storing data on disk with some sort of structural sharing
e.g. if I could store the history of modifying a nested clojure structure without storing copies of each one
I don't have a complete mental model of asami's storage architecture yet but I'm staring at the image of tree blocks -> data blocks thinking about it...
• Breaking the data up into a graph, and letting Asami handle it. That basically means duplicating how Vectors and TreeMaps work, which may be a lot of work. • Repurposing Asami’s data structures to what you want, and forgetting about Asami
if/when I have time, you have given me inspiration to try and use asami's block files code
stepping into a new role at work as a temporary manager... we'll see if I have any energy for coding again 😛
This is actually why I’ve been quiet with Asami recently… I’ve been trying to recharge by doing “fun” stuff on the side
Right now, I’m implementing 2 features: with
operations, and background transaction writing (so that transactions return quickly)
Hi! I’m enjoying Paula’s talk at reClojure. Is there any documentation on Asami’s assertion metadata capabilities (https://youtu.be/Ug__63h_qm4?t=339)? That’s something I’d like to learn more about. I took a look through the Asami repo’s wiki and didn’t find much. (I posted a similar question way back in December, but figured I’d try again since the message may have gotten lost in the shuffle)