My December post @All Analytics.
Don't let the label fool you. It's the relational data model (RDM), not SQL that NoSQL proponents
really are rejecting. The main argument, advanced in a recent LinkedIn
exchange, is that lots of information "cannot be represented in rows and
columns". The implication is that the RDM is not general enough --
there are certain types of information that it cannot represent. The response from my colleague in RDM David McGoveran, is important enough to restate here.
Read it all. (Comment there, not here, please. Thanks.)
Happy new year!
1. Quote of the Week
According to Wikipedia, Amazon's Redshift is a modified version of Postgres.
Maybe its speed redshifted data integrity into a bloody mess.
It has no primary keys, foreign keys or unique constraints. It just has optimizer hints in the DDL that *maybe* the data behaves that way. If they want to put hints in the DDL, OK, but don't call those hint PRIMARY KEY, FOREIGN KEY or UNIQUE.
--Unsupported PostgreSQL Features - Amazon Redshift
I don't think any version of Postgres lets you say Create Table Foo (Bar Int PRIMARY KEY) and then let you do
INSERT INTO Foo (BAR) Values (42)
INSERT INTO Foo (BAR) Values (42)
INSERT INTO Foo (BAR) Values (42)
That might be fine for a one time only static data warehouse, but an ongoing data update system is going to break the integrity rules, it is just a matter of time. That would make for some surprises when someone decides to migrate their data and lots of application code from a relational DBMS to Redshift.
--Jeff Winchell
In my last post I demonstrated how disregard for the scientific foundation and history of a field, here, database management, leads to Moving in Circles. The piece I debunked was by CTO of VoltDB, one in the "VVV" series of products by Michael Stonebraker (MS). I've recently come across The Traditional RDBMS Wisdom is All Wrong, a presentation by the man himself, that reinforces my point.
To all my Jewish readers:
I was making minor revisions to Surrogate Key Illusions when I ran across this: How To Find Duplicate Addresses For A PhysicianRowID.
1. Quote of the Week
The entire Information Technology industry is still stuck in 1971 with Dr. Codd's 3rd Normal form ... when 3 more exist and now a 7th or (N) Normal Form ... Dr. Codd, created, devised, extrapolated 6 forms of Data NORMALIZATION, and after 45 years (1971), every single Database system or information management system to date has not exceeded the 3rd normal Form... except AtomicDB, (N) Normal Form improving on Dr. Codd's work by 4 levels(dimensions)at the very least ... There was and is a method to his theory, that with each level of Normalization brings a geometric increase in "Efficiency" and scalability, however, no one has even attempted the restrictions of the 4th normal form (no duplicates) let alone the 5th or 6th, and now with Dr. Everett’s (N)th Normal form, we can do anything the human mind can devise on a computer and in nearly real time. --Jean Michel LeTennier, CTO, Atomic Database Corp.
Housekeeping: Added If a table with a SK has a NK does it violate 3NF? to LINKS page.
1. Quote of the Week
One other intriguing benefit of NoSQL that I started to unwitting benefit from recently is the ability to push data scheme concerns entirely to the application layer. In this scenario, the applications use a NoSQL database predominantly as a storage service, lightly structured by a few indexed key fields. The object structured data document within the payload becomes transparent to the database. The applications then assume the role of enforcing and understanding the data scheme.
This approach allows the application architect to encode the data structures and meaning directly in the code that creates and consumes the data. So data structure changes required for functional updates can be implemented, tested, and deployed in the application code base with no updates to the database layer at all. (Of course, a conversion of existing NoSQL data documents may be required in situations.)
In this NoSQL approach, the removed translation of object data scheme to a relational structure and, and then back to an object structure again is a very welcome relief as well. --use-the-index-luke.com
We've been there, done that.
In Coming Full Circle: Why SQL now powers the NoSQL Craze Ryan Betts, CTO at VoltDB, argues that NoSQL products should adopt SQL for queries. I don't know about you, but to me it looks like a contradiction. Let me make it clear that my intention here is neither to defend SQL, nor to criticize it--I sure have done enough of that during the years--but rather strictly debunk the notion that its use with NoSQL systems is a good idea.