I am confused about it.

I can use lucene to create index and run query against file system. I can find any particular file very fast, if I can provide a primary key, in this case, directory path and filename act as primary key.

It looks very much like a NoSQL.

  • 1
    If a database doesn't store its data in memory then where else other than the file system would it be stored? – The Muffin Man Nov 16 '12 at 23:37
  • Are you asking if the file system is a type of NoSQL? – DFord Nov 16 '12 at 23:58
  • I am kinda confused. Should File System be considered as database? – janetsmith Nov 20 '12 at 0:16
  • I've seen systems that used PostgeSQL as a database of large images (potentially gigabytes each), but kept the files in the filesystem. In a sense, the filesystem was functioning as a database, but I don't think that usage is typical. – Rory Hunter Mar 26 '14 at 10:32

A (Unix) file system is a hierarchical database for unstructured untyped data. The BeFS is more like a metadata-addressable graph of semi-structured data. The VMS filesystem is a hierarchical database for semi-structured versioned data. The OS/400 filesystem is actually pretty close to SQL in its semantics. Different filesystems are very different!

NoSQL is a movement that advocates choosing the best-fitting database technology for your data model. (NoSQL == Not Only SQL)

If you have tree-shaped unstructured data, then storing it in the (Unix) filesystem definitely fits the goals of the NoSQL movement. If your data however is relational, then choosing the filesystem is actually exactly the opposite of NoSQL: remember, NoSQL means choosing the best-fitting database technology for your data model, and if your data is relational, then that model is SQL.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.