3 ms·
Hi, author here :) I think there are two critical differences, one on the tech side and one on the UX side- On the UX side, we're seated behind your database,
by maor10 3y ago
Hi, author here :)
I think there are two critical differences, one on the tech side and one on the UX side-
On the UX side, we're seated behind your database, and our goal is for you to only ever interact with your original database, and never have to query us directly. This has a lot of implications when it comes to migrations on your database (you call epsio.create_view in your original DB which is transaction safe), and not having the backend interact with two databases.
On the tech side, we're built from ground zero to be above storage, whereas differential dataflow (the package Materialize is built upon) is strongly built to be above memory (we actually played with the idea of using differential with spillover to disk- was too slow). This means we actually lose when it comes to speed (e.g. we may take ~50 milliseconds more which can be a big deal in realtime applications), but have huge gains in cost, since we're trading compute for storage.
Check out our FAQ- we have a nice little table for comparison :)