Not new to people who have been around SQL and database design.
What people forget about SQL relational databases is that they were a replacement for how data was organized in the 70’s on mainframes: indexed files.
Because most kiddies today have never seen an ISAM or VSAM file, and wouldn’t know one if it it were to leap up and bit them in their pampered buttocks, they have no perspective on what SQL relational databases were designed to do.
The brutal truth is pretty low-tech for most of today’s kids: SQL and RDBMS were to fill an organized file with data in a way that enabled the programmer generating fast reports with queries for keyed and non-keyed fields - in other words, doing the grunt work of the business world that had outgrown such platforms as the System 34 and 36 and languages like RPG-II and RPG-III.
That’s it. As SQL progressed, transactions were added, as were some pretty powerful constructs for joins, etc. Pretty cool stuff if you’re crunching reams of nice tabular data. Let’s say you want to write up a database of auto registrations, medical records etc - RDBMS do that pretty well.
But applications like social networks..... they don’t have the nice, orderly data in columns, marching down the greenbar fanfold paper. There’s all these networks, circularities, odd bits of data with bizarre relationships that don’t fit the relational database models - not even remotely. Oracle won’t solve this problem; it will merely move the wall out a tad before they hit it.
Kids need to crack open some books, read a bunch of code and learn some things from people who have been there, done that. But the current dot-bomb VC/startup system doesn’t think about rewarding people who do their homework and get things right. It rewards people who are the first with the crappiest. These problems aren’t new. The reason why outfits like Facebook use MySQL or any SQL-based relational DB is because they don’t know any better, they haven’t got the brains to think through the problem they have and are trying to solve. They just grab some “free” software off a FTP site and use a big enough hammer until their square peg gets broached into the round hole.
And why don’t they know any better? Because these snot-nosed twerps wasted their years in colleges fooling around with rubbish like C++, arguably the worst language to come along since.... well, since forever. I can’t think of a worse programming language, actually. Add to this that schools like Harvard waste undergrad time on such nonsense as “intelligent machines” and “privacy and technology,” both of which are simply graduate level subject areas. As far as I can see, things like databases, database schema, grunt-work business data processing... are all too mundane to receive any treatment in the CS department at Harvard, Zuckerberg’s school.
So Facebook has a DB problem. Eh, OK. Gives me another reason to drop my account. Zuckerberg’s perverted security models were my first biggest reason.
+1, you win the interwebs.
Personally, I use Cache almost every day and as far as I am concerned it is the greatest database and programming language ever...just don't know why it doesn't catch on.
Your post explains it all very well.
I have seen it all myself.
Relational databases. Ah, the final solution to all data scheme problems.
Dude I enjoyed reading this.
Good post.
Moving it to an MVS system instead? hmmm.... well the mainframes I know are still chugging along nicely with very little effort
Silly, when you consider that the languages you likely consider superior, run on VMs and OSs written in C++, or other languages you consider icky. It does all the heavy lifting and dangerous work that makes their slickness, safety, and even existence, possible.
ISAM is such a smooth, fast little machine. I worked with it for years and loved it.
I've seen databases with tens of millions of records crushed not under the load itself, but under the poor design of the database. Redesign the database, and you can run it much faster on even slower hardware.
thanks for the trip down memory lane.
Wow.
Yet another person thinks like I do.
(I’m not fond of C++ either. Give me “C”. Pure and powerful K&R “C”.)