A file system organizes files in a tree structure. If the structure is well designed, learnt, intuitive to recall, and the content in it relatively fixed, information contained can be quickly located. This is because human brain works well with static trees that they know ahead of the time when retrieving information, like one would do to find a geological location.
The amount of information can be overwhelming in the digital world. A majority of them are not possible to be categorized based on a standard scheme. Compared to physical object and common knowledge learnt from our education, digital data are cheap to produce, modify and destroy. It leaves no time or it is not worthwhile to establish and/or learn a standard for them. A user of digital data (files in the present case) usually creates personal local data categorization base on the context of usage. But he/she tend to forget about them later on, especially when the data contained is not frequently accessed. In addition, information and their interpretations (or context) changes with time in a file system. All of them make it harder for a user to locate information he/she want. Because of this, search means are called for.
Popular keywords based search methods are statistical and provider controlled in nature. It is not possible for shared providers to provide enough un-biased a priori information input for it. Additional information has to be drawn from pre-existing common knowledge and usage statistical data for them to be truly useful; they depend on a high level of information source redundancy. For that reason or in that sense, they are also relatively static: new creations are suppressed for better or for worse. A user usually finds it easy to look up information on the internet because a search provider has selected a useful list for them. A user’s private file system, on the other hand, contains mainly of his/her personal categorizations and creations that could differ vastly from one user to another. Given a set of keywords, a search engine provider is not possible to provide a useful list for each one of them, like they do on the internet, since the said provider do not know the particular “knowledge” that the user creases a head of time. Letting a provider know a user’s “knowledge” is also not a good option for privacy concerns.
Traditional structured query in relational database provides a much more accurate and deterministic option than those statistical ones, especially when meta-properties of data are involved.
The problems with SQL like approach are 1) it is hard for an “ordinary user” to master and 2) to transform a hierarchical file system into a relational database is a known challenging technical problem to solve.
The present system is designed to provide a solution to the problems above that transcends both worlds and bridges them together without altering the underlying file system. In addition, a virtualized relational database representation of a file system allows more correlations between file data types that are hard or inappropriate to be imposed on a low level file system in the OS. Any folder hierarchy becomes a virtual relational database in the present system. It can be paged, queried and sorted. File data type correlations can be presented in a more intelligent manner.