It depends. A bit of redundancy is allowed if comes with measured performance benefits. And this is if and only if you really need that performance boost, aka if it's a bottleneck in your application. So is it really that difficult to compute the ratio in your code? In your specific example I can't see how adding this redundant column could be of any benefit. In my experience it's very rare to have a good reason to add redundant columns. In conclusion, from what I read in your question, no, you shouldn't add that column. Though I may not know the whole story.