1. One or more storage media storing instructions which, when executed by one or more processors, cause: receiving a set of changes that has been applied at a source database and that is being replicated from the source database to a destination database; analyzing the set of changes and determining that the set of changes includes one or more of one or more statement-level changes or one or more procedure-level changes; wherein each statement-level change of the one or more statement-level changes affects multiple data rows; wherein at least one statement-level change in the one or more statement-level changes includes predicate information that is based on a predicate in a particular database statement that modified multiple data values in the source database; wherein each procedure-level change of the one or more procedure-level changes includes a stored procedure call, assigning, to two or more processing elements, changes that are included in the set of changes; and applying the set of changes to the destination database by executing the two or more processing elements in parallel to each other.