Building upon my previous blog post, where I declared Postgres was “good enough”, I want to explore what “good enough” means. I will use an aircraft design analogy. (You might remember me exploring a Postgres/aircraft parallel before.)
In aircraft design, everything is a tradeoff between weight, cost, reliability, and safety. Let’s look at safety – what would be the safest material to use in constructing an airplane? One logical selection would be to make it from the same material as the flight data recorder, i.e. the black box. It is designed to withstand the most serious crashes, so obviously, it would be the safest.
Of course, the problem is that an aircraft made with material of the same strength as a flight data recorder would be so heavy it would never get off the ground. A material must be chosen that is safe enough, and light enough so the plane can fly. Obviously, measuring best in only one dimension leads to impractical problems in other areas.Good Enough?