"For a many-to-many, we do something a bit naughty: we store the values with | characters between each value:"
Not naughty, stupid.
"For a many-to-many, we do something a bit naughty: we store the values with | characters between each value:"
Not naughty, stupid.
Why didn't they just make 1 table with 1 column and put a JSON object in it with all customer data? This would fit their design objective "Avoid the need for joins as much as possible"! It's brilliant! We'll call it: noSQL, because we don't even have to write that pesky SQL!
Can't wait for the next blog post where they discover another naughty trick called primary keys to increase their NoSQL performance even more!
I haven’t read the post... maybe I’m missing something.
It's non-1NF, though they sometimes (based on expected cardinality) normalize that aspect via a trigger, using the application-accessed table as, in effect, something of a write-through denormalized materialized view. It's not an entirely unreasonablev way to use an RDBMS in and of itself.
Lifting and shifting is hard. It's harder when you do it in a careless way.