I am evaluating the impact of additional CPUs on Oracle database performance.
I am looking to license Oracle Standard Edition One (SEO, being most cost effective) or Oracle Standard Edition (SE). As per Oracle licensing terms, you can license Oracle SEO on a server with max of 2 CPUs, while the Oracle SE can be licensed on a 4 CPUs server.
I am interested to know how Oracle will make use of the additional CPUs, given the following:
- There is just one concurrent user/connection to the database
- The database is used primarily to read data – this is a kind of data warehouse where a large facts table is read all the time
Would it make sense to throw money into additional CPUs (and Oracle licenses) in order to improve Oracle performance in the above case (assuming that only the number of CPUs are increased)?
Since there is only one active connection at any point in time and since the standard edition cannot use parallel query, it’s probably unlikely that adding more CPUs would improve query performance. It would be useful to have a second CPU to take care of all the Oracle background tasks (archiving redo logs, PMON, SMON, etc.) but your single session would only be able to use one CPU at a time for queries.
If this is a data warehouse, though, I assume that you’ll at least occasionally be doing loads– it’s entirely possible that you could improve load performance by leveraging more CPUs using something like the
DBMS_PARALLEL_EXECUTE package or by simply running multiple loads simultaneously.