Delphix creates on-demand database copies in minutes using two key internal components: DxFS and the DataVisor. The Delphix Server sits between the RDBMS and the storage tier, serving shared data blocks to all copies and managing the changes unique to each copy. These two internal components are responsible for filtering, orchestrating, and storing blocks as they traverse the network between the RDBMS and the storage tier.
- DxFS (or Delphix file system) is a purpose built file system optimized to store and manage data in databases. This tier is responsible for storage and performance optimization.
- DataVisor is responsible for all data orchestration tasks including synchronization, synthesis and recording of changes, data movement across copies, and replication.
DxFS uses several database block-aware techniques that collectively eliminate over 90% of the storage required by full physical database copies while also optimizing performance of the shared storage managed by Delphix.
DxFS develops a map of unique data blocks across the virtual copies, identifies database block boundaries and compresses the data along those boundries. Additionally, Delphix filters incoming data streams—eliminating temporary, empty, or scratch blocks—driving even more data reduction.
Storage arrays lack such sophisticated application awareness and generally cannot refresh data on top of an existing volume without requiring redundant storage at the point of refresh. With Delphix, the DxFS and DataVisor tiers ensure Delphix can stay synchronized and enable data refreshes, while maintaining storage efficiency.
DxFS also introduces performance benefits, acting as a caching tier to augment the I/O performance of the storage subsystem. For many workloads, the Delphix cache services over 60% of all data requests while leveraging affordable hardware resources.
The biggest bottleneck to application development agility comes from process overhead and, for most organizations, data refresh, provisioning, and recovery tasks can take days to weeks of coordinated effort crippling application lifecycles. The DataVisor tier overcomes those challenges by automating the data collecting, database provisioning, and refreshes.
DataVisor ensures automated, continuous and near real-time synchronization across multiple, heterogeneous source databases – providing near real time data access for developers. DataVisor also enables a highly efficient synchronization process. Many organizations rely on scripted data dumps or backups to create a copy of the latest production data. This process consumes I/O resources at multiple points: data reads from storage, data processing by CPUs, and data writes target storage. If the data needs to be moved to another location, the process is repeated. DataVisor dramatically reduces this load by only requesting changed data blocks. DataVisor also eliminates the need for DBAs to create and manage associated custom scripts.
As part of its synchronization process, DataVisor also records and synthesizes all changes. This information is used to build a time window or TimeFlow of changes that can be used to provision or refresh virtual databases from any point in time (down to the second or transaction ID).
Delphix virtual databases are fully functional copies but have clear advantages in in terms of efficiency, agility and availability. Data management tasks (provisioning, refresh, rollback, recovery, roll forward) can be executed in minutes and as a self-service with VDBs. As a result, data management SLAs will improve significantly and in turn drive application project quality.