Explain the difference between relational and non-relational databases, and when you would choose one over the other.