This morning, I received an email summary of my linked-in activities. One of the network activities was Susan Joslyn comment that U2 had been added to the nosql-database.org website.
It is listed under the section ‘other NoSql related databases’. But, is UniVerse a NoSQL database?
The definition of a NoSQL database is given at the top of the first page on the website – non-relational, distributed, open-source and horizontally scalable. Well, though UniVerse does not use SQL as it’s primary query language (it does have it and it works well), the issue is that I believe that Universe is still a relational database.
If you google “define:relational database” and read the definitions, Universe is definitely a relational database?
But what do the textbooks say? Is what they say even relevant these days?
Systems & Analysis Design in a Changing World by Satzinger, Jackson, & Burd define a RDBMS (Relational Database Management System) “that organizes stored data into structures called tables or relations.” Short and sweet. It separates SQL from the definition of a RDBMS. It also mentions multivalued attributes –
“also called a repeating group, is an attribute that contains zero or more instances of the same data type. Multivalued attributes are commonly supported in ODBMSs but are not supported in RDBMSs because they violate first normal form.”
So, normalization is tired to the definition of a RDBMS. They also openly invent a new DBMS – a hybrid object-relational DBMS (hybrid DBMS) “where a RDBMS is used to store object attributes and relationships.” So, as a multivalue database like U2 break the 1st normal form, they are NOT RDBMSs!
Database Systems: Design, Implementation, and Management by Rob & Coronel have grouped the evolution of the major data models into five generations. The 1st and 2nd generations are file systems and hierarchical/network data models respectively. The 3rd generation is the relational data model, with a time period from the mid-1970’s to present. The 4th generation is OO and the ‘extended relational’ (ERDM) models. The last generation, signified as the ‘next generation’ (a bit star treky) is XML based DBMS. The ERDM is similar, if not the same, as the hybrid DBMS above. The full name of the database system is called a ‘object/relational database management system (O/RDBMS). This text does list the entity relationship (ER) model as a design tool, where the main representation is the ERD or the Entity Relationship Diagram. Maybe the multivalued database like U2 is actually a ERDBMS (Entity Relationship DataBase Management System)?!!?
There are many more texts available with all the same speal. So, a multivalue database or MVDBMS is not accurately a RDBMS. It can function as a relational database, with ease, but as it violates the 1st normal form, it can not – must not – be in that classification.
I actually like the ERDBMS term…
Anyway, do visit the website nosql-database.org as it has a rather good list of alternative databases.