I have a problem choosing between clustering and virtualization solutions.

We have an SQL server instance which have some large databases in it. Most of serer resources consumes for this database. I mean, you can suppose an SQL instance with a large database in it.

Is it better to use table partitioning and using SQL server clustering to provide avalaibility and high performance , or use server virtualization using some programs like VMWare.

As I know virtualization is used to utilize resources. Eg. you can integrate many DB servers in One or two servers.So I think for one or two databases in one SQL server Instance, clustering would be a better solution.