Kubber Kubber - 17 days ago 10
MySQL Question

SQL with NoSQL ?

I'm designing an application where one table would be really useful for me to be NoSQL,
and others SQL.
So I have a table where I need to store multiple and unknown attributes and then be able to search on them. The rest of db tables are just simple relational.

Example

item



id
name


  • one item can have attribute : color, shape, other item can have attribute : height, width but not any other ones .



So it smells like NoSQL, but I do a lot more dev with SQL and I always want to choose technology that I know best.

I won't be needing a lot of selects by those attributes at the moment so I will just add
a field "attributes" where I will be keeping all attributes as json_encoded string .
And if i need to select anything by attributes I will write a script for that .

But maybe there's an extra feature of MySQL ( this is what i'm using as RDBMS) that I don't know of ? Or any better ideas ?

I was also thinking of keeping parallel Mongo DB just for 'items' but I generally detest having
same data in 2 places .

Maybe anyone knows a technology that is Relational DB with NoSQL extension like this ?

Answer

I ended using RDBMS and table with attributes ( id, name, value ) and it's doing great job