SSIS XML Connector
If you are new with SSIS and ZappySys SSIS PowerPack then check below links to get started.
|
See also
|
Video Tutorial - Integrate XML data in SSIS
This video covers following and more so watch carefully. After watching this video follow the steps described in this article.
- How to download / install required driver for
XML integration in SSIS - How to configure connection for
XML - Features about
XML Source (Authentication / Query Language / Examples / Driver UI) - Using
XML Connection in SSIS
Prerequisites
Before we perform steps listed in this article, you will need to make sure following prerequisites are met:- SSIS designer installed. Sometimes it is referred as BIDS or SSDT (download it from Microsoft site).
- Basic knowledge of SSIS package development using Microsoft SQL Server Integration Services.
- Make sure ZappySys SSIS PowerPack is downloaded and installed (download it). Check Getting started section for more information.
- Optional (If you want to Deploy and Schedule ) - Deploy and Schedule SSIS Packages
How to read data from XML in SSIS using XML Source (Export data)
In this section we will learn how to configure and use XML Connector in the API Source to extract data from the XML using XML Source.
-
Begin with opening Visual Studio and Create a New Project.
Select Integration Service Project and in new project window set the appropriate name and location for project. And click OK.
-
In the the new SSIS project screen you will find the following:
- SSIS ToolBox on left side bar
- Solution Explorer and Property Window on right bar
- Control flow, data flow, event Handlers, Package Explorer in tab windows
- Connection Manager Window in the bottom
Note: If you don't see ZappySys SSIS PowerPack Task or Components in SSIS Toolbox, please refer to this help link.
-
Now, Drag and Drop SSIS Data Flow Task from SSIS Toolbox. Double click on the Data Flow Task to see Data Flow designer.
-
From the SSIS toolbox drag and drop XML Source on the dataflow designer surface
-
Double click on XML Source component to configure it.
-
From the Access Mode dropdown select [File path or web Url] and paste the following Url for this example.
NOTE: Here for demo, We are using odata API, but you need to refer your own API documentation and based on that you need to use your own API URL and need to configure connection based on API Authentication type.https://www.w3schools.com/xml/plant_catalog.xml -
Now enter Path expression in Path textbox to extract only specific part of XML string as below ($.CATALOG.PLANT[*] will get content of plant attribute from XML document. Plant attribute is array of XML documents so we have to use [*] to indicate we want all records of that array)
NOTE: Here, We are using our desired filter, but you need to select your desired filter based on your requirement.
Click on Preview button to view the parsed XML string response data and click OK.$.CATALOG.PLANT[*] -
That's it; we are done. In a few clicks we configured the call to XML using ZappySys XML Connector
Read large XML string in SSIS (3 Million Rows in 3 Mins)
Using ZappySys SSIS XML Source you can read large XML String data (Process 3 Million rows in 3 minutes – 1.2 GB file). Using --FAST Expression and other options.
If you use default settings to read data then it may result into OutOfMemory Exception so we will outline few techniques which will enable high performance Streaming Mode rather than In-memory load of entire data.
Please refer to this article for the same: How to read large XML / JSON file in SSIS
Load XML data in SQL Server using Upsert Destination (Insert or Update)
Once you read data from the desired source, now let's see how to Load XML data in SQL Server using Upsert Destination. Upsert Destination can Merge/Synchronize data from source to target for Microsoft SQL Server, PostgreSql and Redshift. It supports very fast Bulk Upsert (Update or Insert) operation along and Bulk delete.
-
From the SSIS toolbox drag and drop Upsert Destination on the dataflow designer surface
Connect our Source component to Upsert Destination
-
Double click on Upsert Destination component to configure it.
-
Select the desired Microsoft SQL Server/PostgreSql/Redshift Target Connection or click NEW to create new connection. Select Target Table or click NEW to create new table based on source columns.
Configure SSIS Upsert Destination Connection - Loading data (REST / SOAP / JSON / XML /CSV) into SQL Server or other target using SSIS -
Set Action to Upsert => (insert if not matching in target else update). Select Target Connection and Target Table. Check on Insert and Update. Click on Map All to Mappings all columns and check on Only Primary Key columns.
-
Click on OK to save Upsert Destination settings UI.
-
That's it; we are done. Run the SSIS Package and it will read the data from the XML and load the the data in the SQL Server/PostgreSql/Redshift.
Conclusion
In this article we discussed how to connect to XML in SSIS and integrate data without any coding. Click here to Download XML Connector for SSIS and try yourself see how easy it is. If you still have any question(s) then ask here or simply click on live chat icon below and ask our expert (see bottom-right corner of this page).
Download XML Connector for SSIS
Documentation
Other App Integration scenarios for XML
Other Connectors for SSIS
Download XML Connector for SSIS
Documentation
How to connect XML in SSIS?
How to get XML data in SSIS?
How to read XML data in SSIS?
How to load XML data in SSIS?
How to import XML data in SSIS?
How to pull XML data in SSIS?
How to push data to XML in SSIS?
How to write data to XML in SSIS?
How to POST data to XML in SSIS?
Call XML API in SSIS
Consume XML API in SSIS
XML SSIS Automate
XML SSIS Integration
Integration XML in SSIS
Consume real-time XML data in SSIS
Consume realtime XML API data in SSIS
XML ODBC Driver | ODBC Driver for XML | ODBC XML Driver | SSIS XML Source | SSIS XML Destination
Connect XML in SSIS
Load XML in SSIS
Load XML data in SSIS
Read XML data in SSIS
XML API Call in SSIS