A friend of mine was brainstorming problems and solutions to current filesystems; I was wondering if any of you had thoughts on the subject, either in response to his ideas, or just in general.

Trillian wrote:
[16:06:19] elderofmagic: my big complaint with files is organizing them
[16:06:36] KermMartian: ok
[16:06:39] KermMartian: what's your solution?
[16:06:43] elderofmagic: I want a FS that as the fundemental level functions more as a database then a file system
[16:06:48] KermMartian: k
[16:06:59] elderofmagic: so you can have 1 copy of the file, and have inf. pointers to it
[16:07:19] elderofmagic: where the OS obscures away the actual location of the file and the links to it
[16:07:45] elderofmagic: so that with 1 mp3 i can have a link to it that for all intents and purposes feels like the file is really there
[16:08:10] elderofmagic: say you want to sort your mp3s by Band, year, album, genre, etc.
[16:08:49] elderofmagic: currently you either need a fuck-ton of shortcuts, which cannot be copied easily to a mp3 device, or you need to have dozens and dozens of copies
[16:09:55] elderofmagic: but this would then apply to documents
[16:09:57] elderofmagic: photos
[16:10:03] elderofmagic: etc.
[16:10:27] elderofmagic: so you can sort your documents by topic or employer, or year or month or day
[16:10:29] elderofmagic: etc
[16:10:43] elderofmagic: but still using a window based UI
[16:11:33] elderofmagic: what do you think?
[16:12:48] elderofmagic: basicly, it would be a Database as a filesystem for an OS with a GUI
1) SQL database with the desired attributes and a field for the actual file data
2) FUSE
3) ???
4) profit
It's a snazzy idea. I found this project that implemented it a bit, but it seems to have been abandoned, and I unfortunately can't try it out since it's KDE only, and I use Gnome.

http://tech.inhelsinki.nl/dbfs/

There's also some very good ideas here:

http://www.skytopia.com/project/articles/filesystem.html
I think FUSE would be the way to go on this, at least for OS X and Linux, maybe a namespace extension for Windows?
I would assume any current OS could use this method, it'd just have to use shortcuts, and update a system-wide DLL (or similar file) when one 'copies' a file. And if that file is moved, deleted, or renamed the information is updated in the DLL.
That would work for manually arranging files, but the key word here is...well...keyword. Metadata. The filesystem should be able to examine files and automatically place them in a database with any relevant information, such as the program that edited it, the author, date edited, file type, etc. If the user wanted to, they should be able to select a group of files and add a new piece of metadata to them linking them together. This would allow the filesystem to learn more about the files, and the user could later look any of them up. Essentially, folders are done away with, and replaced with keywords.
The idea is mostly situated for use in a library like system. Think PDF books, and mp3s and other media files. Something like a cataloguing system where the material being catalogued is the catalogue itself.
Sounds to me like what he wants is WinFS ( http://en.wikipedia.org/wiki/WinFS )

That said, someone should tell him what symlinks are Wink
Agreed on the WinFS part.

The real problem with that is you need some way to decide what metadata is important for each file type. Certainly you could register file types and metadata, but what then when a certain file doesn't have any of that? How will you differentiate it from other ones of the same name which also don't have any useful metadata?
I'm sure you could force all files to have certain metadata, even if there's a certain "default value". It could also do things like read the header of the file to see the type of file and assume the type of file if it doesn't have that metadata.
The Tari wrote:
The real problem with that is you need some way to decide what metadata is important for each file type. Certainly you could register file types and metadata, but what then when a certain file doesn't have any of that? How will you differentiate it from other ones of the same name which also don't have any useful metadata?


That is easy. In the relational DB you can just use a blob column for the meta data, and use, say, XML (MSSQL already supports doing queries and such on XML blobs, so MS knows how to search it Wink ). Then you have schemas define for various file types. For the types without schemas, the user can choose to create a schema or just add whatever meta-data they want (users could also append extra info to types with schemas)

Also, the path is still necessary, so you can't have two files with the same name in the same location.

@Swivel: That is how every OS other than Windows does it already. Windows is the only OS I know of where the file extension is used to identify the file type. In *nix/BSD it looks at the contents of the file, so renaming a JPG to an TXT won't do anything - it'll still be recognized as a picture and opened with the photo viewer. Look into the "file" command.
Kllr: Yeah I know, thats one of the reasons I brought it up. I'm talking about implementing that same thing in to the DB filesystem idea as well as Windows itself. Wink
@Kllrnohj: Why not just have a partition-wide unique fileID?
KermMartian wrote:
@Kllrnohj: Why not just have a partition-wide unique fileID?


You mean like the path + file name + extension? Good idea, I wish someone would have thought of that before Rolling Eyes
Kllrnohj wrote:
KermMartian wrote:
@Kllrnohj: Why not just have a partition-wide unique fileID?


You mean like the path + file name + extension? Good idea, I wish someone would have thought of that before Rolling Eyes
No, like 1, 5, or 304234. Razz It wouldn't matter if files got deleted and the IDs were nonsequential, as long as they're unique.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement