question

GregBooth-2902 avatar image
0 Votes"
GregBooth-2902 asked Zoehui-MSFT commented

What is the fastest driver for connecting to an oracle database from SQL Server Integration Services (SSIS)

What is the fastest driver for connecting to an oracle database from SQL Server Integration Services (SSIS) ?
Will we still need to have oracle client installed (with a tnsnames .ora file) etc.

We are currently using SSIS 2012 - but could upgrade
Understand that the oracle database is at least version 11 or later.

We are currently using the Microsoft oracle driver (and have the oracle client - tnsnames.ora - installed on the SSIS server). We have been running with this for a long time , but this driver seems fairly slow, and is 32 bit - understand that when deployed the package has to run in 32 bit mode.

We are using SSDT based on visual studio 2015.

Any help gratefully received.
Kind regards

sql-server-integration-services
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

YitzhakKhabinsky-0887 avatar image
0 Votes"
YitzhakKhabinsky-0887 answered

Hi @GregBooth-2902,

Precondition: your SSIS run-time environment should be SQL Server 2019 Enterprise edition.

SSIS 2019 comes with Microsoft Connector for Oracle V1.0
It is very fast (using the best 3rd party ODBC driver behind the scenes) and it has a fantastic bonus - no need to install Oracle client.

You need to have the following installed on a dev. machine:

  • VS2019, latest build

  • SQL Server Integration Services Projects extention.

5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

cooldadtx avatar image
0 Votes"
cooldadtx answered

The MS-provided driver in .NET has been deprecated for years. In .NET the recommended driver is the OPD.NET driver (which still requires the Oracle client). But to use it you'd need to use the ADO.NET driver when connecting to the Oracle database in Connection Manager. This driver gives you access to the .NET drivers of which Oracle is provided. This is discussed here.

For newer .NET code it is generally recommended that you use the Oracle Managed Driver instead. The aforementioned article mentions that you should consider using it instead but I haven't tried to use it with SSIS so I don't know whether it works or not. The advantage is that it is managed only version so you don't need to install the Oracle client anymore. However it isn't as feature rich as ODP.NET and it requires newer versions of Oracle so that may not work for you. If you do use the OMD then you can configure everything without an ORA file if you want.

Whether the OMD, ODP.NET or Oracle Driver that is from the Oracle client is the fastest is going to depend upon what you're doing. You should test all three to decide. In their the native Oracle driver should be the fastest as it is a direct wrapper around the network calls. However that also involves other native calls that may be slower than using .NET. If you're planning to use the ADO.NET driver then ODP.NET is going to probably be slower as you are going to the ADO.NET driver to the ODP.NET wrapper to the native Oracle driver and then out to the network. OMD is going to be faster than this as it skips the native driver but has the limitations mentioned earlier.

5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

Zoehui-MSFT avatar image
0 Votes"
Zoehui-MSFT answered Zoehui-MSFT commented

Hi @GregBooth-2902,

Microsoft Connector for Oracle enables the ability to export data from and load data into Oracle data source in an SSIS package.

Version support
The following Microsoft SQL Server products are supported by Microsoft Connector for Oracle:

Since SQL Server 2019 CU1
SQL Server Data Tools (SSDT) 15.9.3 or later for Visual Studio 2017
Microsoft SQL Server Data Tools (SSDT) for Visual Studio 2019
The following Oracle database versions of data source are supported

Details you may refer: oracle-connector

Regards,

Zoe


If the answer is helpful, please click "Accept Answer" and upvote it.

Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.
Hot issues October


· 1
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

Do you have further question on this , could we offer more support?
If this helps on your issue, you could mark it as answer so other user with similar problem could see this easier. :)

0 Votes 0 ·
COZYROC avatar image
0 Votes"
COZYROC answered

I would recommend you check the commercial COZYROC Database Destination component. It provides fast bulk-load support for Oracle and has many other useful features like bulk update and upsert.


5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.