Introduction
I read Phil Factor's Database Weekly editorial entitled Basically Available, Soft State, Eventually Consistent. I agree with Phil's conclusions about special-purpose databases that purport to be "RDBMS killers."
Please.
How Much Paint?
Some argue our profession is science. I can see that. Some argue it's a passion. I represent that remark. I consider the database profession a craft. That makes it part art and part science.
Let's set aside the science for a moment and consider the art. And let's compare our art to that of traditional artists; painters in this case. How do we measure the artistic value of a painting? Is it by how much paint is applied to the canvas (or other medium)? Is it how fast the painting was completed? Is it how many or few colors were used?
No.
I chose these metrics intentionally. They map nicely to metrics we regularly measure for databases.
The Point
The point is simply this: Art is often judged with terms such as "intrinsic beauty." How does this translate to a database solution? Elegance.
Is elegance the most? No. Is elegance speed? No. Is elegance minimalist? Maybe.
"Then what is your point, Andy?" I hear you thinking. I'm glad you asked: Elegance is a solution crafted to meet the need(s).
When More Is More
More paint is good when you're trying to cover the most media economically. Faster painting is good when you have a limited amount of time to meet some deadline. Few colors is good if you need to limit resources, more colors is good if contrast or busy-ness is a goal.
In database work, elegance is achieved in balance. Balance is about what's best for the life of the database solution. A lot plays into this - available hardware or hardware budget, development deadline, and the skills / comfort-level of the support staff. That last point cannot be underestimated. I've altered deliverables to design a solution the current staff can support.
Conclusion
There are certainly times when all you care about is performance, or scalability, or meeting a deadline. All of these are important. But how important changes with each database solution, and balancing these factors is the art of database design.
:{> Andy