Oracle Partitioning for DBAs and Developers. Why, when and how to use it?