Benefits: What does ChimneySweep® Do?
ChimneySweep® does these things:
-
It verifies all of the files that make up the tables that you specified
(usually, the entire database), which means that it:
- Verifies that the entire file is both physically present and readable.
- Determines if the internal structures which organize the data are intact and consistent. (Errors of this kind are what causes corrupt table - other than header.)
- Checks that the various files are consistent with one another. (Errors like these cause things like index out of date.)
- Checks that the values of the fields are consistent with what they're supposed to be.
- If problems are found during verification, it can usually repair the problem by making appropriate changes in-place.
- Optimizes the table indexes so they run faster.
- Does reliable on-disk backups of table files, so that by backing-up those backup files (with a program like the Microsoft Backup™ that comes with all current versions of Windows®...) you'll have a “known good” copy of the tables.
ChimneySweep does this, for any number of tables and/or databases at once, in a completely “hands free” fashion! And here's how we manage to do that trick ...
- First you define a “job” (using an easy point-and-click procedure) that tells ChimneySweep exactly what you want to do, and gives it (in advance...) all of the information it will need.
- Then, you can run that job any time you like with just a double-click of the mouse. Once you've started the job, it will run to completion without any further input from you or anyone.
“Verifying” and “Repairing” Tables:
Your database consists of a set of tables, and each table consists of a set of disk files. Each of these files has a different purpose, but their names all begin with the table's name. The files contain, in addition to portions of your data-records, a “data structure” that lets the computer efficiently find, insert, remove, and change things. Different files have different purposes: most of the records are in one file, binary-data like images (if you have any) would be in another, each index is in one or two more, and so-on.
All of that complicated internal structure is invisible to you... “out of sight, out of mind” until it breaks. When a breakdown does occur, the database-software can usually detect it, and what it will do in that case is to prevent you from using the table at all, until the problem can be repaired. ChimneySweep very rapidly examines these internal data structures for integrity and consistency, attempts to make corrections as needed, and if successful, resets the indicators that the database software uses to detect that something has gone wrong.
The messages you receive from your database software describe only what the software thinks it has detected, not what the true underlying problem might be. They're written “by programmers, for programmers.” It's somewhat intutive to guess what "index out of date" might possibly mean, but "corrupt table - other than header" is pretty useless. The only way to know what the underlying problem is, is to use ChimneySweep to verify the table and then let ChimneySweep attempt to repair it. We can't promise success: “we don't raise anything or anybody from the dead.” Nevertheless, problems do typically turn out to be simple and easy-to-fix, much more often than a disaster.
The most common scenario is that, among the set of related disk files that makes up a table, one of the files is “out of date,” or no longer perfectly synchronized with all of the others. As long as data-records have not been permanently lost due to some other more-serious problem, these “other files” can usually be repaired, regenerated, or restored.
ChimneySweep's perspective on the table-repair problem is to look at the entire database, not just one table. That's important, because a problem that appears to be occurring in one table may actually not be in that table at all, but in some other table that is somehow related to it. ChimneySweep can verify and repair all of the tables at once, and if known-good structure reference information has been captured in the job (based on a database that isn't broken), it can check many of these relationship-problems to focus quickly on the true source(s) of the problem.
ChimneySweep normally does not use the “Paradox® Table Repair” facility (otherwise known as TUTILITY or TUTIL32), whereas most other competing products are really little more than “wrappers” for this facility. We realized very long ago that TUTILITY/TUTIL32 contains many very-serious problems (bugs...) that will probably never be fixed. So we replaced it... creating a tool that: doesn't have those bugs, does much more, and runs more than one hundred times faster.
“Optimizing” table “indexes”:
Legend has it that Wizard of Oz author L. Frank Baum got the name of his fanciful world from the
alphabetical labels on his filing-cabinet:
The major difference between “the index in the back of a book” and “a database index” is that a database index is constantly changing. As records are inserted and removed, and as the values of indexed fields change, all of the affected indexes must be immediately updated to match so that those indexes always remain “up to date.” Since index-updates occur so frequently, the database software emphasizes the speed and efficiency with which it can make those updates, not the sustained efficiency with which the indexed data can be retrieved. Over time, the performance of any particular index will degrade, sometimes very significantly.
“Optimizing,” then, is the process of restoring an index-file to optimal efficiency, so that searches made using that index will once again be at top speed. ChimneySweep considers all of the values in the indexed table, verifies that the index is still correct, then examines the internal data-structures used to maintain the index and “re-balances” them to restore index performance.
On-disc backups:
When the files that comprise a single database table, or all of the files that comprise an entire database, are backed-up, it's important to be sure that all of them are backed-up at the same time and in the same state: that is to say, knowing for certain that no one is inserting, deleting, or changing anything while the backup is going on. ChimneySweep can be used to produce a copy of the files such that you know that this condition has been met.
When ChimneySweep's on-disc backup is completed, you can then make a permanent archive of the backup-target directory using any appropriate backup-tool, such as Microsoft Backup.™