a variant of a database ChangeLog is a queue-based changelog. A lot of our applications are event based, and even though they are backed by a database, the changes to the database go through a kafka/rabbit first. That allows you to, instead of hooking to the database WAL, read the queue -- which is usually much smoother
furthermore, replicating the database schema as-is to your datalake may be in some cases unwise idea -- you created a coupling between the internal representation and the data lake. An advantage of queue-based cdc is that it allows you to define the "contract of event" between the application and the data lake in a manner that gives more flexibility to each of the parties