What is an example of a non-relational database? Where/how are they used? What is an example of a non-relational database? Where/how are they used? database database

What is an example of a non-relational database? Where/how are they used?


An admittedly obscure but interesting alternative to the types of databases mentioned here is the associative database, such as Sentences, from LazySoft Technology. There is a free personal version you can download and try on your own. The Enterprise Edition is also free, but requires a request to the company.

Essentially, an associative database allows you to store information in much the same way as our brains do: as things and associations between those things. The name "Sentences" comes from the way this information can be represented in a subject-verb-object syntax:

  • Tom is brother to Laura
  • San Francisco is located in California
  • Mike has a credit limit of $10,000

A sentence may be the subject or object of another sentence:

  • (Bus 570 arrives at 8:15am) on Sundays
  • Mary says (the pie was baked by William)

So, everything can be boiled down to entities and associations.

There is, of course, much more to Sentences than what can be expressed here. I recommend that you take some time to read more about it in a white paper from LazySoft.

"The Associative Model of Data" is a book available in PDF format by Simon Williams, one of the creators of Sentences.


A non-relational document oriented database we have been looking at is Apache CouchDB.

Apache CouchDB is a distributed, fault-tolerant and schema-free document-oriented database accessible via a RESTful HTTP/JSON API. Among other features, it provides robust, incremental replication with bi-directional conflict detection and resolution, and is queryable and indexable using a table-oriented view engine with JavaScript acting as the default view definition language.

Our interest was in providing a distributed access user preferences store that would be immune to shape changes to which we could serialize preference objects from Java and access those just as easily with Javascript from a XULRunner based client application.


  • Flat file
    • CSV or other delimited data
    • spreadsheets
    • /etc/passwd
    • mbox mail files
  • Hierarchical
    • Windows Registry
    • Subversion using the file system, FSFS, instead of Berkley DB