Presentation is loading. Please wait.

Presentation is loading. Please wait.

Get your Oracle data into SQL Server faster!

Similar presentations


Presentation on theme: "Get your Oracle data into SQL Server faster!"— Presentation transcript:

1 Get your Oracle data into SQL Server faster!
Phlippie Smit #83 Johannesburg

2 Phlippie Smit I have over 15 years’ experience with SQL Server. I spent most of my career in a MIS/BI environment and have used SQL Server 6.5 – 2008 in my endeavours. I am passionate about performance and optimisation, and improving out-dated processes and thinking.

3 Objectives Explore when to use the Microsoft Connector for Oracle by Attunity to extract data from Oracle sources. Learn about the requirements and installation of the Microsoft Connector for Oracle by Attunity. Understand how to use the Microsoft Connector for Oracle by Attunity effectively to extract data. Learn why the Microsoft Connector for Oracle by Attunity is so much faster than OLEDB, ODBC and .Net Providers to extract data from Oracle sources. Compare the different technologies – Extract speeds.

4 When to use Data extracts from operational systems running Oracle that carry high volumes of data, e.g. customer orders, billing data, payment data. Data extracts from Oracle data warehouses to further analyse in the Microsoft BI stack (SSIS/SSRS/SSAS) Any other high volume data extracts - Data cleansing, integration projects, test data, reference data, etc.

5 Requirements Oracle client software version 10.x or 11.x. Use 32-bit client on 32 bit platforms, 64-bit on 64-bit platform. On 64-bit platforms running BIDS, both the 64 and 32-bit Oracle clients should be installed. SQL Server 2008 and above - Enterprise or Developer Edition. Windows 2003,2008 and above.

6 Installation Install Oracle client(s).
Check Oracle naming methods and ensure you have the latest data (e.g. tnsnames.ora) for your environment. Bing “microsoft provider for oracle by attunity download” to get the applicable providers on Microsoft’s website – get version 1.1. Install Microsoft Provider for Oracle (Attunity). Start BIDS, new SSIS project and check for the Oracle Source and Destination Data Flow Items in the Toolbox. If not there, go to “Tools”, “Choose Toolbox Items…” See Additional Resources (3)

7 Add the toolbox items

8 How to use the connector effectively
Run BIDS as Administrator! Convert the extracted Oracle columns to string type by using “TO_CHAR” and a query, not table. Add type conversion after Oracle Source in Data Flow. Set Oracle Row BatchSize to (Data Flow Properties) Set DefaultBufferMaxRows to (Data Flow Properties)

9 Test/Demo configuration
Oracle VirtualBox (Oracle Enterprise Linux) 2 VCPU, 2GB RAM Oracle 11G Dell Precision M6500 Laptop, Intel I7, 8 core, 16GB RAM Windows 7 x64 SQL Server 2008R2 Developer Edition Oracle 11G client (32 & 64 bit)

10 Test/Demo configuration
CREATE TABLE "T_PEOPLE" ( "ID" NUMBER(18,0) NOT NULL ENABLE, "NAME" VARCHAR2(10 BYTE), "SURNAME" VARCHAR2(10 BYTE), "MARRIED" CHAR(1 BYTE), "CARS" CHAR(1 BYTE), "SALARY" NUMBER(18,2), "CHILDREN" CHAR(1 BYTE), "BANKNAME" VARCHAR2(50 BYTE), "CITY" VARCHAR2(50 BYTE), "DATEJOINED" DATE, "ACCOUNT_NUMBER" CHAR(8 BYTE), "EMPLOYER" VARCHAR2(100 BYTE), "DEPT" VARCHAR2(100 BYTE), "SECTOR" VARCHAR2(100 BYTE), " _ADDRESS" VARCHAR2(100 BYTE) ) (10 million records) CREATE TABLE [dbo].[t_People]( [id] [bigint] NOT NULL, [name] [nchar](10) NOT NULL, [surname] [nchar](10) NOT NULL, [married] [bit] NOT NULL, [cars] [smallint] NOT NULL, [salary] [money] NOT NULL, [children] [smallint] NOT NULL, [bankname] [varchar](50) NOT NULL, [city] [varchar](50) NOT NULL, [datejoined] [datetime] NULL, [account_number] [char](8) NULL, [employer] [varchar](100) NULL, [dept] [varchar](100) NULL, [sector] [varchar](100) NULL, [ _address] [varchar](100) NULL)

11 Demo

12 Why is it faster? It speaks “Oracle” – The Oracle Call Interface (OCI) is used to communicate with the Oracle database instance. Customers are even using this technology to move data between Oracle instances (See Additional Resources for link). Our method removes the complexities of data type conversions from the extraction process while still handling the type conversion in SSIS. Control over row batch sizes. Did I mention it speaks “Oracle”?

13 Oracle Call Interface (OCI)
The most comprehensive, high performance, native 'C' language based interface to the Oracle Database that exposes the full power of the Oracle Database. OCI provides the foundation on which various language specific interfaces such as Oracle JDBC-OCI, ODP.Net, Oracle Precompilers, Oracle ODBC and Oracle C++ Call Interface (OCCI) drivers are built.

14 Architecture comparison
OLEDB, .Net, ODBC Microsoft Connector for Oracle vs

15 Microsoft Connector Version 1
Microsoft Connector Version 1.1 for Oracle by Attunity supported platforms & versions SQL Server 2008 and higher SSIS Oracle OCI DB Oracle Client Windows XP x86, x64 Windows Vista x86, x64 Windows Server 2003 x86, x64, IA64 Windows Server 2008 x86, x64, IA64 Any platform

16 Comparisons (Extract)
Provider Time (seconds) Rows per second No Type Conversion (Attunity) 343 Conversion to String (Attunity) 327 ADO.Net Provider for Oracle 411 OLEDB Provider for Oracle 476

17 Mixed Type vs. String Conversion

18 Convert to string and set the row batch size

19 Additional resources Microsoft Provider for Oracle by Attunity v 1.1 download SSIS ETL Record – Loaded 1TB in 30 Minutes! Using the Microsoft Connector for Oracle by Attunity with SQL Server 2008 Integration Services Customers are moving data from Oracle to Oracle using the Microsoft Provider for Oracle Codeplex SSIS Community Tasks and Components SSIS Product Behaviour (MSDN)

20 ? Q & A That big question mark is editable – use whatever character you want!

21 SQL Saturday #83 Johannesburg
@ SQL Saturday #83 Johannesburg Get your Oracle data into SQL Server faster! Phlippie Smit (


Download ppt "Get your Oracle data into SQL Server faster!"

Similar presentations


Ads by Google