A data management system or "DMS" provides an automated, continuous,
real-time, substantially no downtime data protection service to one or
more data sources associated with a set of application host servers. To
facilitate the data protection service, a host driver embedded in an
application server captures real-time data transactions, preferably in
the form of an event journal that is provided to other DMS components.
The driver functions to translate traditional file/database/block I/O and
the like into a continuous, application-aware, output data stream. The
host driver includes an event processor. When a data protection command
for a given data source is forwarded to a host driver, the event
processor enters into an initial upload state. During this state, the
event processor gathers a list of data items of the data source to be
protected and creates a data list. Then, the event processor moves the
data (as an upload, preferably one data element at a time) to a DMS core
to create initial baseline data. In an illustrative embodiment, the
upload is a stream of granular application-aware data chunks that are
attached to upload events. Simultaneously, while the baseline is
uploading and as the application updates the data on the host, checkpoint
granular data, metadata, and data events are continuously streamed into
the DMS core. During this upload phase, the application does not have to
be shutdown.