Hi Paul,
The CR Oracle driver talks directly to the OCI Client engine. When using OLE DB CR talks to the OLE DB Provider through a different CR DB driver, OLE DB then talks to the OCI Oracle client engine. So you are simply putting another layer on top of the native client. And potentially different paths in how it talks to and gets data from the server.
Typically Users may use OLE DB and/or ODBC because it's simply easier to configure for portability, Set up one DSN and/or use a third party Client to connect. There are also what is called "Wired" clients that do not require the Oracle client to be installed, these Wired drivers have the OCI built into them.
So for performance ultimately it can be different for each type. Depending on the number of connections, if the tables are indexed etc. ODBC actually has it's own indexing routines, OLE DB I don't believe it does and CR Oracle driver does not. Or they can use what ever the Client is configured to do.
These seem to change all the time, version to version.
I have always recommended when possible use the native drivers whenever possible. You should get the same performance as using SQLPlus, it uses the OCI client engine also.
So for testing purposes I suggest creating reports using both types of connections and compare times. Use Oracles logging to monitor, sometimes CR Designer can introduce delays due to formatting and other various options.
FYI - CR Designer is uses a single thread model to connect to the DB, Our SDK runtime and BI products multi-thread the connection to try to optimize the data streaming back to the client/server where the application is running. This decreases the network traffic and optimizes the data processing time.
Don