02
Dec

NoSQL: want to discover structure? Do not assume structure is given!

Post title - LIONblog

Procrustes had an iron bed in which he invited every passer-by to spend the night, and where he set to work on them with his smith’s hammer, to stretch them to fit. If the guest proved too tall, Procrustes would amputate the excess length. Procrustes continued his reign of terror until he was captured by Theseus, travelling to Athens along the sacred way, who “fitted” Procrustes to his own bed.

In relational databases data are organized with a clear structure of rows and columns, the columns being given specific and fixed names.

If data are unstructured at the beginning and you are looking for hidden or non-obvious structure, this looks like a contradiction: How can one use such a fixed structure to search for unknown structure?

This is the case for many recent developments related to social networks, web communities, recommendation systems, bioinformatics, etc.

According to the nosql movement:
“NoSQL Next Generation Databases mostly address some of the points: being non-relational, distributed, open-source and horizontal scalable. The original intention has been modern web-scale databases….Often more characteristics apply as: schema-free, easy replication support, simple API, eventually consistent / BASE (not ACID), a huge data amount, and more.”

Graph databases are an example. If the original data is represented as a graph of nodes and edges (relationships between pairs of nodes) one should use a database appropriate to this structure and not force the structure to fit an SQL database.