Some guidelines on Triggerless vs Triggered Publication#
Triggers are not required to log events for the JDBC Publisher Channel. In situations where triggers cannot be used to capture granular events, the JDBC Publisher Channel can derive database changes by inspecting database data.
Triggerless publication is particularly useful when support contracts forbid the use of triggers on database application tables or for rapid prototyping. However, triggerless publication is less efficient than triggered publication. With triggered publication, what changed is already known. With triggerless publication, change calculation must occur before events can be processed.
Triggerless publication, unlike triggered publication, does not preserve event order. It only guarantees that by the end of a polling cycle, objects in the database and the Identity Vault are in sync.
Triggerless publication, unlike triggered publication, does not provide historical data such as old values. It provides information on the current state of an object, not the previous state.
Triggerless publication does have the advantage of being much simpler because it reduces database side dependencies. Writing database triggers can be complicated and requires extensive knowledge of database-specific SQL syntaxes.