Performance remains a significant goal of every database system. FairCom continues a tradition of advanced performance solutions balanced with solid data integrity. Our two most powerful OLTP operating models now have additional performance boosting controls:
Delayed Transaction Durability
With full transaction control for complete ACID compliance, transaction logs are synced to disk with each commit operation, ensuring absolute data integrity with complete recoverability. Full, durable ACID transaction control enables many powerful features not available without recoverable log data:
The most critical of these is automatic recovery in case of system failure. Additionally, full transaction control remains a critical area of database performance tuning. Database updates must be secured in write-ahead logs for guaranteed recoverability. This comes with a performance impact due to the synchronous I/O requirements ensuring data is safely persisted.
|
Preimage (Atomicity Only) |
Full Recoverability |
Many applications could benefit from a “relaxed” mode of transaction log writes. With today’s hardware stabilities and power redundancies, it is conceivable to slightly relax full durability constraints and still maintain acceptable risk tolerance. The balance becomes how much loss of recoverability these systems can tolerate.
Allowing database administrators to balance their window of vulnerability against on-line performance, c-treeACE provides a new Delayed Durability feature for transaction logs. Regardless of your durability setting, you will always recover to a known state in time, with full referential integrity. The balancing decision becomes how current must you recover? If you are willing to accept guaranteed recovery, say up to one second ago, you can gain a significant amount of performance.
This feature is enabled with the following configuration entry and takes as an argument the maximum number seconds, N, that will elapse between log syncs. This ensures that, after a commit, the transaction log will be synced in no more than N seconds, thereby allowing you to define your window of vulnerability.
DELAYED_DURABILITY <N>
The end result can approach non-transaction performance while ensuring committed transactions are persisted to storage within less than N seconds of vulnerability. In selected test cases, up to 300% faster transaction throughput has been observed when configured with 1 second of delayed durability.
|
Windows Performance |
V10 - c-treeACE Database Server, Full Transaction Processing, 100 users V10.3/V1 - c-treeACE / FairCom RTG Database Server, Full Transaction Processing, 100 users V11.0/V2 - c-treeACE / FairCom RTG Database Server, Full Transaction Processing, 100 users, DELAYED_DURABILITY1
|
Background Flush of PreImage/Non-transaction Data Updates
c-treeACE offers multiple levels of transaction protection for your data. Some applications do not require the recoverability full transaction support provides for performance reasons. However, these applications become quite vulnerable to data loss should system failure occur. If FairCom Server terminates abnormally, say from a power failure, updates to data and index files that are not under full transaction control are lost if those updates have not yet been written from c-tree’s in-memory data and index caches to the file system. The following factors typically reduce the number of dirty pages that exist:
However, the combination of using very large data and index caches, keeping files open for extended periods of time, and constant OLTP activity increase your likelihood that more dirty cache pages exist.
This data vulnerability is now greatly reduced in such a way that allows YOU to define your window of vulnerability. Database administrators can balance performance needs with data safety guarantees to within seconds—or they can select immediate safety.
To set a limit on potential loss of updates for non-transaction data and index files, FairCom Server now supports background flush options to write dirty pages to the file system within a specified time period, limiting potential data loss for non-transaction data and index files.
Performance tests have shown that with only a few seconds of data vulnerability, you can obtain the same great performance you are already accustomed to, but now with an assurance that much more of your data is secured to disk thereby substantially reducing your data vulnerability.
See Delayed Durability Transaction Log Mode for Performance.