OpenInsight 10 – Universal Driver 5.0 (aka UD Grows Up!)
When we wrote our article stating the reasons we were looking forward to the 2015 Revelation User’s Conference (and why everyone else should have planned to go as well) we noted one of the more intriguing enhancements was related to RevRCL (aka Universal Driver) and its ability to restore clients in case of a network disconnection. As it turns out, this was only one of many welcome enhancements that will come as a part of the new Universal Driver 5.0.
For those who are eager to dive into the technical documentation then simply navigate to the main Universal Driver page on Revelation Software’s website. It is already updated with Universal Driver 5.0 features and it includes a link to download the installation guide. Hence, much of what is written below is redundant to what can be gleaned elsewhere but we thought some of our readers might still find value in our report. Without further delay here are some of the highlights of the Universal Driver 5.0:
VSS (Volume Snapshot Service)
One of the longstanding challenges of supporting OpenInsight databases, especially for 24/7 shops, is making reliable backups. Most of us are very familiar with the dilemma. Traditional backup solutions are slow, lock files, and potentially cause OpenInsight to corrupt database tables. Not fun. Even more modern solutions, which are quicker and can replicate disk images in a snapshot, can still lead to database integrity problems.
For larger organizations that cannot endure downtime the best option has been to invest in the Universal Driver Heavy. While the Universal Driver Heavy performs as advertised and clients who are using it have testified to its usefulness, it has some drawbacks. First, transactions must go through the primary and secondary server before control is given back to the client. This could impact application performance. Second, only database rows are synced to the secondary server. Hence, it does not replicate the entire primary server. Static OS files and other application elements have to be synced separately in order to have a complete system. Finally, for smaller businesses the cost can be prohibitive.
Universal Driver 5.0 will come with built-in Volume Snapshot Service (VSS) support. This means servers using compatible VSS backup software can safely, reliably, and quickly capture an image of the system even during active use. Transactions are suspended momentarily and then released once the VSS process is completed. In most instances this will be a negligible delay in performance at the client level. Environments running enterprise VM solutions have additional tools that improve restoration or fail-over processes. On top of all of these improvements, Universal Driver 5.0 will be included at no extra charge with multi-user OpenInsight 10 systems (i.e., the same licensing policy that exists with Universal Driver 4.x and OpenInsight 9.) Please note that VSS will only work with data volumes which are configured as Shares in the server registry.
Every developer and consultant familiar with Revelation Software databases knows the odds of restoring a connection between a workstation and a server when a disconnect occurs: 0%. The only resolution is to close the application on the client machine and attempt to launch a new instance. Universal Driver 5.0 now provides an optional configuration setting that allows clients to reconnect if they have been dropped. It is important to note that this is not a magic bullet. As the documentation reports, this will not restore connections if the workstation or the Universal Driver have shutdown. Only disconnections that are network related can benefit. It is unclear (as of this writing) how much of the connection is actually restored. Ideally, existing locks will be re-established (and thus able to be released), in process transactions will complete, and running procedures will resume where they left off.
Encryption and Authentication
A rather nice enhancement for organizations that rely heavily on data security will appreciate the option to encrypt data transmitted over the network. While this can have an impact on performance it is likely this will only be noticed with transaction heavy processes. Enabling this simply requires the setting of the Secure key to a value of 1 within the server’s Registry and the data volume REVPARAM files. Couldn’t be easier.
For that extra bit of protection the Secure key can be set to a value of 2. This enables both encryption and authentication (or authorization). In this mode, only clients that have been authorized via a generated public key (which is maintained by the server) can communicate with the service. Authorized workstations maintain their own private key and all keys are encrypted. Administrators will have tools to generate these keys. This process requires a bit of planning and work to implement, but it may very well be exactly what companies seeking to be PCI or HIPAA compliant will require.
A Final Word
For those wishing to keep the status quo, Universal Driver 5.0 can work in legacy behavior (i.e., just like the Universal Driver 4.x), thus allowing administrators time to consider how they might wish to implement any of the above features. Regardless, we highly recommend that the installation manual be reviewed very carefully before implementing any feature.
Until next time.