Hacker News new | ask | show | jobs
by skissane 163 days ago
> If you grep (via fuse) you will end up opening lots of files which will result in fetches to some API and it will be slow.

This is a limitation of the POSIX filesystem interface. If there were a grep() system call, it could delegate searches to the filesystem, which could use full text indices, run them on a remote server, etc

2 comments

Or maybe a file system is best used to store files and not be a general database manager.
The idea that there is a clean distinction between databases and file systems is very POSIX/Microsoft.

On mainframe and minicomputer operating systems they were often far less clearly separated, with a lot of functions which POSIX/Microsoft would view as belonging in a database built into the filesystem – such as record-oriented files and key-indexed files.

That's also true of MUMPS and PICK, which while nowadays language/databases which run on top of a commodity operating system, back in the day were operating systems in their own right.

Maybe some of these old ideas were just bad – or maybe we should reconsider them every now and again?

Yep, but unfortunately this is the interface FUSE will expose
A naive one, yes. You could do something a bit more interesting by having `mkdir searches/from:JoeBloggs/` or the like autopopulate in the background. I'm sure the GGP explored that though.