5 ms·
Conversion is async. The whole point is to never deal with CDC which is error prone and taxing Postgres with occupying a replication slot and burning memory and
by nikita 3mo ago
Conversion is async. The whole point is to never deal with CDC which is error prone and taxing Postgres with occupying a replication slot and burning memory and cpu in the OLTP system.
- saisrirampur 3mo agoTaxing Postgres is one thing, which can be overcome with ways like using standbys. There could other more native ways (than unifying storage), which you’ll hear about in a few weeks. Also I don’t fully agree on logical replication taxing Postgres, if the client is built with care and precision. In regards to error prone and speed (lag, latency at real-world scale), I wish the blog went into more detail and gave evidence than talk theory.
- ronfriedhaber 3mo ago> CDC which is error prone Just have superior CDC :)
- saisrirampur 3mo agoExactly! Why unifying storage, which opens up a can of trade-offs.
- nikita 3mo agoIf you product is CDC based (peerdb) you don’t want storage to support this :) This architecture is better for OLTP because all maintenance operations are moved to storage AND it has all other benefits such as LTAP that emerge from having a scalable storage.
- saisrirampur 3mo ago;) sounding good on paper vs how it works in practice (supporting demanding real-time OLTP/OLAP workloads) are completely different ball games. Separately, I understand taking care of it at storage level, but still don’t get “unifying storage” or “zero copy”. Anyways, I’ll stop now. Good to see all the innovation happening on converging OLTP/OLAP front. Each with a different approach and perspective. :)
- ronfriedhaber 3mo agothis is all so funny, gl to everyone
- creeksai 3mo agoDid you even read the blog? Or are you just throwing shade because you are working on a competitive product based on CDC?
- saisrirampur 3mo agoOh no, I did read the blog. Not throwing shade at anyone here—the blog is great. It just doesn’t provide real-world evidence, and it opens up a bunch of technical questions that I’m trying to understand. that’s exactly what HN is for. :)
- sunzhousz 2mo agozhou here :) Moonlink was arguably one of the best ZeroETL(mirroring) solution, and there's a reason we built LTAP instead (not just because it's cool and we can do it) To me, two big issues with CDC/mirroring are: 1. For ad-hoc querying, CDC is usually not there when you need them, and it is too expensive to maintain for all tables if you don't query them often. 2. For true data pipeline, a simple mirror is not enough, you will end up building all kinds of transformation and it essentially becomes ETL like spark. One small issue is CDC + merge into columnstore means huge write amplification if you want fresh read on Analytics side, it is absurd especially for lakehouse tables (I have seen 100X for many OLTP workloads). The only solution I found that we can trust agents creating, managing, running OLTP & OLAP queries is LTAP.