1. Abstract

The aim of this project is to implement a solution that provides file-level host-based virtualization for better aggregation of content/information based on its semantics and properties. File-system organization today very closely mirrors storage paradigms rather than user-access paradigms and semantic grouping. All file-system hierarchies are containers that are expressed based on their physical presence (a separate drive letter on Windows, or a particular mount point based on the volume in Unix).

We wish to implement a solution that will allow users to organize their files based on their convenience. We define this convenience in the following forms:

  • The ability to organize the namespace based on certain attribute properties (file-system metadata virtualization). Example: Directory Listing as an output of high level relational query based on file attributes. 
  • The ability to de-link position of a file in the hierarchy from its actual storage (file metadata virtualization) Example: Automatically listing the files with the proper attributes in the respective directories. Create & forget file system now puts your MP3 file in the right folder no matter where they are stored on the disk.
  • The ability to create and manipulate namespaces using well-known metaphors (XML schema descriptions and schema editors) Example: Define the directory structure with directory query as an XML file. Mount multiple such directory structures (virtualization). There by allowing multiple organizational views for the same set of files. 
  • The ability to continue using the standard metaphors for manipulation and access to information (file-system kernel APIs), thus maintaining current large body of applications unbroken). Example: Make all this features available as a standard file system so existing apps wont fail 

Currently, no solution exists that allow users to organize their files using convenient semantic groupings and continue access using standard applications. This solution is unique in the sense that it allows flexible namespace construction using XML. Microsofts WinFS a promising new file system / Storage architecture is closely modeled along the same idea and is expected to release in late 2004. Our project does the same for Linux.

<<Back Topů


1. Virtualization (Views & Multiple Views.)

The objectStore refers to the location in the directory structure where the files are actually stored in the flat file format. By Creating XML views for the files created on the "objectStore" you can view the same set of files. Organized in different formats. ORION is unique solution that creates views for the same set of files. This Views can acts as standard file system directories "Sticky Directories" or can act like intelligent "virtual Directories" which can aggregate their contents according to the Query attached in the Directory name. At the same time you can have Multiple views mounted for the same set of files at different mount point.

All directories created by ORION view are virtual in the sense that the have no existence on the on the hardisk as normal directory inodes have on traditional File system.


2. ORION as Filesystem with database like extension.

You can create dummy files for various entities in your organization and attach various attributes to these dummy files & the run queries that extract results based on the attributes of these entities. Example an employee database in which each employee is represented by an dummy file with attributes like

Filename: John Martin.prsn

Attributes Salary:10000$

Dept : Technical Staff

Skills : C C++ JAVA Cobol

After this the adminstator or the user of such data can view all people who know C just by creating a directory name "CSkill~AND Text type like prsn~AND Text Skills like %C %"

3. ORION as powerful Search Utility.

With ORION you would never have to search for a file before opening a file you can just create a virtual directory as to what file you want to open & the file will walk in to the newly created directory

4. ORION as Enterprize Solution.

Orion can help you create a file servers which acts as an object store & different clients mount their views on the same file server there by seeing the file present on the file server as organized in different ways.

5. Intelligent apps that use the feature of Extend attributes.

For example a Email program which when a .prsn file dragged into its window extracts the email address of the person which is stored as an attribute of .prsn file

6. ORION as a platform to create solutions.

The features or application presented above are just a few a creative mind can think of. ORION thus is a platform for supporting creative ideas like above to be implemented with the help of an file system.