Research Paper Doctorate 2,137 words

Database Shadowing or Mirroring What

Last reviewed: October 8, 2005 ~11 min read

Database Shadowing or Mirroring

What is Database Shadowing? Database Shadowing means that a database would be able to work with either two or even more copies of the database at the same time. Out of numerous copies, the original, or the 'master' can be referred to as the 'normal' file, from which data can be retrieved. The other copies can be referred to as 'shadows' or at times, 'mirrors'. When an alteration or change of nay kind must be made to the 'master', then the same changes and alterations must be made to the shadows as well, so that the shadow would always be up-to-date with the master copy of the database. All the changes must be made separately to each shadow so that there is no corruption of the master copy of the database, and also so that any physical corruptions of the master would not be inadvertently transferred to the shadows. (Resilience)

In the application Mimer SQL, the shadowing is generally controlled at the databank level, and it must be remembered that in any databank where there is a minimum of transaction control, the database can be shadowed to as many copies or shadows as is required at any particular time. This would mean that any important data can be very well protected against corruption or against a disk crash, without having to rely on the traditional or conventional methods of maintaining backups. If there were to be a form of disk crash or failure in the disk where the master data has been stored, then the operations would automatically continue towards the shadows, without any interruption.

The magic of maintaining shadows is that work can continue uninterrupted, and this is because of the fact that there will be time consuming process of restoring the master database from the several back up files that have been stored on tapes or on other forms of media, and the application can be kept up and running at all times, without interruptions and disturbances. The database manager can choose a time of his own convenience, and then proceed to transform the shadows or copies to master databanks, and thereby create brand new shadows based on the new information or data. An important fact is that maintaining shadows has no impact whatsoever on the actual running time or response times. The so called 'background threads' bring about the various changes made to the master databank and to the shadows, without impacting or affecting the users of the application. (Resilience)

Database Shadowing System will be able to perform both data check in, as well as check out functions, and in general this is followed in several steps. Initially, for example, the data that that has been stored in a database and which has to be edited must be identified, so that copies or shadows can be made, secondly, the relevant data has to be copied from the database to an active memory file, so that an active memory copy can be successfully erased from the data item. The third step is to associate a particular tag with the active memory copy of the data item, or to change the state of the particular data item. The next step is to tag, depending on the completed operation which has been performed on the active memory copy item of the data item, and finally, to save all the changes that have been made to the active memory copy of the data item required, by carrying out the change to the database data item by issuing a 'Save' command, after which the data item tag of the active memory copy of the data item would be able to control the way in which the database items may be changed or transformed. (Database Shadowing System with data tags that select an operation of the save command)

There are certainly several vendors of Database Shadowing Systems, and Mimer is one of them. Mimer is in other words, a 'Relational Database Management System', which has been developed by Sysdeco Mimer AB in Uppsala, in Sweden. Mimer is a high speed database engine, and it is targeted at 'mission-critical production environments'. Scaleable presentation, as well as multi-processor support is some of this program's important features, and also several others, some of which are its availability on all UNIX, Windows NT, Windows 95 and windows 98, and on open VMS Platforms. Mimer is perfectly suitable for all open environments, in which in general, inter-operability is a must at all costs. Some of the important characteristics of Mimer are a high and superior performance, an ease of use, self tuning capabilities, and a built in stability. These features and many more make the Mimer one of the better choices for software products which have an embedded DBMS, and which are to be used for Internet and for Intranet as well as for Extranet applications, where a lot of database up-time and also a minimum of database administration can be carried out becomes a very real requirement. (Mimer 8, Product Overview)

The program confers at a 100% to the general SQL Standards, and it is also a native implementation of the ODBC, or the Open Database Connectivity of the Microsoft interface. Mimer can be accessed by numerous developmental tools, and it is extremely well suited to mission critical multi-tier solutions, because it conforms to SQL Standards, and this makes it compliant and suitable for several different kinds of transaction processing middleware products that are generally based on CORBA and on OTM Techniques. (Mimer 8, Product Overview) Another company that offers database shadowing systems is the Imaging Solutions. This company was founded in the year 1994, and it states that its mission is to provide the complete suite of products as well as of services that may be needed to create an appropriate ECM Solution to meet one's specific requirements in the area of database shadowing or what is known as mirroring. (Welcome, a Cautionary Tale)

Shadowing a database file had quite a few advantages and also some disadvantages. Some of the advantages are that a shadow is in fact nothing but a method with which one would be able to keep either one, or more copies of the same database files, which have been written at one and the same time, by the engine. Shadowing can basically help when a machine has many physical disks, and if one or more of them fails, then the shadow can be used immediately, as a sort of a back up. As long as the shadow is in another drive, Interbase can in fact be re-directed to utilize the shadow, as it was in fact the primary set of files. However, some important factors must be considered when making a shadow of the database files. (Shadow Files)

One of them is that there must be the same amount of space available for the shadow as there is for the primary database. This is because of the fact that the shadow is nothing but the replica or the exact copy of the original database. This means that a shadow would be able to help the user in the case of a hardware failure or a crash, but it would not be able to help in the case of data corruption which can happen due to a faulty RAM memory or due to a bug in the IB engine in itself. In these cases, almost all the copies of the data can become completely corrupted in the same way as the primary one has become, and if there is a shadow, then probably things cannot be rectified with any immediacy. In most cases, shadowing is quite cheap and low costing, but if one desires a certain extra degree of reliability and performance, then one would have to rely on a hardware solution like the Mylex's Extreme RAID, or a clustered solution, according to which one can possess several machines in sync, so that when one of the machines were to fail for one reason or another, then the other can be used with no problem at all.

Some major advantages of using the shadow system are however, these: the recovery time in case of a failure of the system would be extremely quick, and the activation of a shadow is very rapid and quick, and therefore, the solution becomes available immediately. Another advantage is that the creation of a shadow does not in fact require any sort of exclusive access to the database as such. Shadow files also need to use only the same amount of disk space as the database, and when this is compared to log files, which use up an amount of space that certainly goes beyond that taken up by the actual size of the real database; this can be a real advantage for the people who maintain shadows. In addition to this, one can even control the amount of the allocation of disk space. A shadow can also span multiple files, on multiple disks. The entire shadowing process does not use any separate or a special procedure; what happens is that the database process gives the entire writing process to the shadow which handles it by itself. This would also mean that the shadowing process goes on behind the scenes, and one need not even be aware that the process is in fact going on at any point of time; it can go on without creating any sort of disturbance to the user of the application, at any point of time. (Shadow Files)

You’re 81% through this paper. Sign up to read the full paper.

Sign Up Now — Instant Access Already a member? Log in
130,000+ paper examples AI writing assistant Citation generator Cancel anytime
Cite This Paper
PaperDue. (2005). Database Shadowing or Mirroring What. PaperDue. https://www.paperdue.com/essay/database-shadowing-or-mirroring-what-68972

Always verify citation format against your institution’s current style guide requirements.