WEB SEARCH

Overview of Autodesk Vault

The purpose of this article is to introduce the main functionality of Autodesk Vault.

Autodesk Vault is included with all Autodesk mechanical-based products. As a result, a number of companies are at least considering the vault; if not actively implementing it. I thought it would be beneficial for those of you that aren't familiar with the product to help provide some insight into the capabilities of Autodesk Vault.

Autodesk Vault works on the basis of checkin/checkout. Anyone familiar with Autodesk Inventor's Multi-user modes (Shared or Semi-Isolated) will be familiar with this concept. For those of you that aren't, checkin/checkout ensures that only one person is editing a file at a time. The process of checking out a file, informs the Vault that you have control to edit the file, and therefore, makes it so that others are restricted from editing it until you check it back in.

The process of checking out a file for editing can be both pro-active and re-active. If you know that you are going to be editing a file, you can right-click on the file in the Inventor browser and choose "Checkout" - this would be a pro-active checkout. On the other hand, if you start to edit a file that has not been previously checked out, a dialog box will appear giving you the option to checkout the file prior to editing - this would be a re-active checkout.

Anytime a user wants to work on a file that is in the vault (even if just for the purpose of viewing the file), the files have to be retrieved from the Vault into the users "Working Folder". This working folder is unique to each user and is typically a location on each users local drive, although it is possible to specify a personal share on a network drive as your working folder.

At this point its important to examine where data in the Vault is stored. In a network environment, users are accustomed to accessing the data for their projects from a shared network location. Because of this, anyone wanting access to this data can simply browse to this location using simple Windows Explorer. However, in a Vault environment, once the data on this shared location has been added to the vault (adding files to the vault is a one-time process which takes a copy of the file(s) from the source location on the shared drive and places it into the vault), this source data can be completely removed from the server (although its a very good idea to back this data up, especially if you realize later that there are files that you forgot to add to the vault).

So if the source data in the vault isn't stored on a shared location on the network, where is it stored? When you create a vault, you define the storage location for the filestore. This filestore location does NOT need to be a shared location, and in fact, is preferable that it isn't to prevent users from tampering with it. When someone wants to work on data stored in the Vault, they retrieve copies from the vault to their working folder which is the location where all work on the files is performed.

Understand that as users work on the files contained within their working folder and consequently save the files, this does not constitute checking files back into the vault. Once you feel that you have performed work on the file that warrants adding a new version of that file into the Vault, you check the file back into the vault.

Anytime you check a file into the Vault, you are essentially creating a a new version (backup or snapshot in time) of that file. So, in simple terms if a file is being edited throughout the day and is being checked into the vault periodically as work as being performed on it, you are creating a new version of that file in the vault each time it is checked in. Therefore, at any point in time, it is possible to go to the Vault and retrieve a previous version since there is an entire history of that file.

When it comes to versions, it is important to note that Autodesk Vault also tracks version dependencies. In other words, lets suppose that an assembly file is checked into the Vault. Not only is that assembly file at a particular version, but so are the dependent files and Autodesk Vault will retain this information. Therefore, if you need to roll-back to a previous version of a parent file (ie: assembly which has dependent children), Vault knows which versions of the dependent children were used at the version of the parent assembly that you request, and will retrieve the appropriate versions of these files also to give you a complete roll-back. This is the difference between traditional "OldVersions" backups that Inventor creates and versions stored within Vault. OldVersions does not store any information about the versions of the dependent children. In addition, once previous versions of files are retrieved from the Vault, work can be performed on them to generate a new version.

Another thing to keep in mind is that Autodesk Vault manages versions, not revisions. Since a new version is created each time a file is checked back into the Vault, and a version essentially represents a backup or copy of the file at a point in time, its entirely possible that you will create multiple versions of files in the process of taking the project from one revision to the next.

In addition to maintaining versions of files, Autodesk Vault also stores file properties in a database that can be quickly queried to locate a particular file. When a file is initially added to the vault, or subsequently checked in as work is performed on the file and new versions are created, Vault indexes the properties associated with the files (ie: Part Number, Designer, or even custom properties) and stores them in the database. Therefore, if you want to locate a file in the Vault, you can simply query the database which provides a fast method of locating the files. This is because, rather than have to examine each file in the Vault to see if it meets the criteria, Vault searches the database which is a far more efficient method.

Think of it this way: When you want to find something on the Internet, you go to Google or some other search engine that has indexed all the data. This provides a much faster form of searching, since Google simply scans their database. On the other hand, if you had to do the search in real-time across the entire Internet to perform your search, it would be extremely in-efficient.