What are the primary differences between relational and non-relational databases, and how do you decide which to use?