There's a lot of confusion around file virtualization, and virtualization in general, because the term virtualization can mean so many different things. But, when we talk about file virtualization, the focus is on file-level activities rather than block- (storage) level activities, like what you'd have in a Fibre Channel, iSCSI or direct-attached storage. But, we can break it down even further into three main areas: abstraction, emulation and aggregation. Abstraction refers to things like data movement, migration or copying. Emulation lets other devices seamlessly integrate with other applications or platforms. Aggregation lets one device sit in front of and combine multiple data streams or features.
The confusion comes in the notion of a global or clustered namespace that is actually a virtualized namespace -- think of it as a virtualized directory. As an example, consider DNS within a Windows file sharing or CIFS environment. Within a UNIX environment, there's an NIS implementation. This is the ability to see, in a single namespace, all the different file systems that are a part of that large "address space." As another example, the Internet may use a ".com" as a global designation for a URL. Don't confuse this with a global file system.
Ultimately, file virtualization is the ability to virtualize a file-type environment. This can be done by replication, migration, data movement or any number of other file-centric features. The general features are the same as you'd see in a block environment, such as transparent data movement and device emulation for interoperability; the difference in file virtualization is that you're dealing with files rather than blocks.Go back to the beginning of the File Virtualization FAQ Guide.