- rust (timely dataflow/ differential dataflow)
- note on Databases Streaming
differential dataflow v datalog Uses magic sets in incrmenetal system in a cool way. Datalog is dataflow system with giant fixpoint around it. Generic join in a rust macro
https://www.clockworks.io/en/blog/ I guess this is a company / consulting service associated with differential dataflow.
Differential Dataflow is kind of semi naive on steroids. Instead of just having a totally ordered iteration time, it keeps a partially ordered set of previous times. This means we have to store more than just good, new, delta. We have to store a bunch of deltas until we can coalesce them.
Yihong described it as “2d seminaive”. 1 dimension is datalog iteration number, and the other dimension is incoming user data time.
Timestamps kind of are like reference counts or arena cleanup. They can trigger caolascing, compaction, or gabarge collection events. Watermarks are garbage collecting events
Incrmenetal dataflow is semi naive without the fixpoint. Instead the deltas are coming in from outside in a streaming like situation.
Hmm. Do queries go backwards? A lens? holy shit is magic set a lens?
Adaptive function programming Self adjusting computation https://www.umut-acar.org/research#h.x3l3dlvx3g5f adapton incremnetal https://blog.janestreet.com/introducing-incremental/ salsa salsa.jl
Man I really need to decided where this stuff should go.