3 ms·
My first impression looking at their schema was, "what the fuck? if they wanted MongoDB why the fuck didnt they just go with MongoDB?" Thanks to Magento I can
by tomc1985 8y ago
My first impression looking at their schema was, "what the fuck? if they wanted MongoDB why the fuck didnt they just go with MongoDB?"
Thanks to Magento I can add "someone tried to turn MySQL into a typeless K-V document store" to the list of crazy things that I've seen.
- elvinyung 8y agoHonestly, I'm just surprised this is the first time you've seen something like that. It feels like I've seen it everywhere :P
- mkolodny 8y agoI don't know if this is still the case, but at least in 2010 Reddit used Postgres as a key-value store [0] [0] https://kev.inburke.com/kevin/reddits-database-has-two-tables/ https://kev.inburke.com/kevin/reddits-database-has-two-table...
- tomc1985 8y agoPostgres has a bunch of compound data types that make that possible... MySQL's 'version' a la Magento is the EAV design from hell
- conradfr 8y agoMagento is older than MongoDB and also I guess they wanted to rely on the ubiquitous Php/MySQL stack to get adoption. I think a better alternative would be Postgresql which can do relational sql and what MongoDB is supposedly good for.
- bigiain 8y agomemcached had already been around for years before Magento - if they needed an example of how to do a key/value store. We we using that back when it was a LiveJournal Perl project, probably late '90s. There were a bunch of "persist memcached to disk" projects too - from memory we used a Java thing called Prevlayer or something... Having said that, I too mis-used MySQL as a key/value and EAV store back then, because it was the pragmatic choice at the time. If some of my work from the late '90s and early 2000s had grown into platforms still being used today - people would probably be questioning my sanity for choices like that as well...
- qohen 8y agowe used a Java thing called Prevlayer or something... Prevayler. From http://prevayler.org/ http://prevayler.org/ : What is Prevayler? Prevayler is an open source object persistence library for Java. It is an implementation of the Prevalent System design pattern, in which business objects are kept live in memory and transactions are journaled for system recovery. Prevayler is the simplest and fastest way to provide ACID persistence for your "plain old Java objects".
- fipar 8y agoSince at this time you seem to be the first user of the f word on this thread, it seems like a good time to say that me and a lot of my database friends and colleagues use Magento as a replacement for it. So you could rewrite that bit of your comment as "what the Magento?" and it would not lose meaning for us!
- tomc1985 8y agoHilarious! I am so stealing that.