<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>azure Archives | ZappySys Blog</title>
	<atom:link href="https://zappysys.com/blog/tag/azure/feed/" rel="self" type="application/rss+xml" />
	<link>https://zappysys.com/blog/tag/azure/</link>
	<description>SSIS / ODBC Drivers / API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more</description>
	<lastBuildDate>Fri, 07 Mar 2025 12:39:04 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.4</generator>

<image>
	<url>https://zappysys.com/blog/wp-content/uploads/2023/01/cropped-zappysys-symbol-large-32x32.png</url>
	<title>azure Archives | ZappySys Blog</title>
	<link>https://zappysys.com/blog/tag/azure/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Download the Latest File from Azure Blob Storage using SSIS</title>
		<link>https://zappysys.com/blog/download-latest-file-azure-blob-storage-using-ssis/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Sat, 28 Dec 2019 06:53:57 +0000</pubDate>
				<category><![CDATA[SSIS Azure Blob Connection]]></category>
		<category><![CDATA[SSIS Azure Blob Storage Task]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[blob]]></category>
		<category><![CDATA[ssis]]></category>
		<category><![CDATA[storage]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=8633</guid>

					<description><![CDATA[<p>Introduction In our previous article, we saw SSIS Azure Blob Storage task examples. Now let&#8217;s look at how to Download the Latest File from Azure Blob Storage using SSIS. Microsoft SSIS includes the Azure Blob Storage Storage Task that allows us to upload files to Azure Blob Storage, download files, creating local and remote directories an more. [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/download-latest-file-azure-blob-storage-using-ssis/">Download the Latest File from Azure Blob Storage using SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2><span id="Introduction">Introduction</span></h2>
<p><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png"><img decoding="async" class="alignleft wp-image-6532 size-thumbnail" src="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png" alt="Azure BLOB Storage" width="150" height="150" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png 225w" sizes="(max-width: 150px) 100vw, 150px" /></a></p>
<p>In our previous article, we saw <a href="https://zappysys.com/blog/ssis-azure-blob-storage-task-examples-download-upload-move-delete-files-folders/" target="_blank" rel="noopener">SSIS Azure Blob Storage task examples</a>. Now let&#8217;s look at how to Download the Latest File from Azure Blob Storage using SSIS. Microsoft SSIS includes the Azure Blob Storage Storage Task that allows us to upload files to Azure Blob Storage, download files, creating local and remote directories an more. In this article, we will show how to use the <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">SSIS Azure Blob Storage Task</a> included in ZappySys <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a>.</p>
<p>In nutshell, this post will focus on how to Download the Latest File from Azure Blob Storage.</p>
<h2><span id="Prerequisite"><span id="Requirements">Prerequisite<br />
</span></span></h2>
<ol>
<li>First, you will need to have SSIS installed</li>
<li>Secondly, make sure to have SSDT</li>
<li>Download and install <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">Microsoft Azure Storage Emulator</a></li>
<li>Download and install <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Microsoft Azure Storage Explorer</a></li>
<li>Finally, do not forget to install ZappySys <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a></li>
</ol>
<p><strong>NOTE:</strong> If you want to use Live account (Azure Blob Storage) then you can skip Step #3</p>
<h2><span id="What_is_Azure_Blob_Storage">What is Azure Blob Storage</span></h2>
<p>Azure Blob storage is Microsoft’s object storage solution for the cloud. you can store large amounts of unstructured data, such as text or binary data. Blob storage discloses three resources:</p>
<ul>
<li>Storage account (You can access data objects in Azure Storage through a storage account.<br />
For more information, <a href="https://docs.microsoft.com/en-us/azure/storage/common/storage-create-storage-account" target="_blank" rel="noopener">click here</a>.)</li>
<li>the containers in the account(constructs a set of blobs, it is similar to a folder in a file system.<br />
All blobs lie within a container, <strong>Note:</strong> Container name must be lowercase)</li>
<li>the blobs in a container. (Azure Storage offers three types of blobs: block blobs, append blobs, and <a href="https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-pageblob-overview" target="_blank" rel="noopener">page blobs</a>)<br />
See the below-attached diagram. It shows the relationship between these resources.<br />
<a href="https://i2.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/blob1.png?ssl=1"><img loading="lazy" decoding="async" class=" wp-image-3569 alignleft" src="https://i2.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/blob1.png?resize=258%2C131&amp;ssl=1" alt="" width="258" height="131" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1.png 329w, https://zappysys.com/blog/wp-content/uploads/2018/04/blob1-300x152.png 300w" sizes="(max-width: 258px) 100vw, 258px" /></a>     You can also use Azure Storage Explorer on your local machine. Azure Storage Explorer is a standalone app that enables you to easily work with Azure Storage data on Windows, macOS, and Linux. You can use Blob storage to expose data publicly to the world or to store application data privately. <a href="https://docs.microsoft.com/en-us/azure/vs-azure-tools-storage-manage-with-storage-explorer#connect-to-a-storage-account-or-service" target="_blank" rel="noopener">Connect to an Azure storage account or service</a></li>
</ul>
<h2></h2>
<p>&nbsp;</p>
<h2>Getting Started</h2>
<p>In order to start, we will show several examples. ZappySys includes an <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">SSIS Azure Blob Storage task</a> that will allow you to access files/folders from Azure Blob to the Local machine, Upload files(s) to Azure Blob Storage. It will also support Delete, Rename, List, Get Property, Copy, Move, Create, Set Permission … and many more operations. Here we are showing you Download the Latest File from Azure Blob Storage.</p>
<p>You can connect to your Azure Storage Account by entering your storage account credentials. Here I am showing an example of the use of the local Azure Storage Emulator.</p>
<h2>Setup Azure Storage client tools</h2>
<ol>
<li>Once you have <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">downloaded and installed a storage emulator</a> You can launch Microsoft Azure Storage Emulator from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3631" style="width: 869px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3631" class="wp-image-3631 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" alt="Microsoft Azure Storage Emulator Physical Location" width="859" height="94" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png 859w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-768x84.png 768w" sizes="(max-width: 859px) 100vw, 859px" /></a><p id="caption-attachment-3631" class="wp-caption-text">Microsoft Azure Storage Emulator Physical Location</p></div></li>
<li>If You can see the below-attached Command Prompt screen after Emulator started. Then you can proceed to start Microsoft Azure Storage Explorer as the Azure Storage Emulator is started successfully.
<div id="attachment_3633" style="width: 710px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3633" class="wp-image-3633 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png" alt="Command Prompt Screen after Microsoft Azure Storage Emulator Started" width="700" height="237" /></a><p id="caption-attachment-3633" class="wp-caption-text">Command Prompt Screen after Microsoft Azure Storage Emulator Started</p></div></li>
<li>Now, You have to <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">download and install Microsoft Azure Storage Explorer</a> and then You can launch Microsoft Azure Storage Explorer from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3635" style="width: 837px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3635" class="wp-image-3635 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" alt="Microsoft Azure Storage Explorer Physical Location" width="827" height="97" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png 827w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-300x35.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-768x90.png 768w" sizes="(max-width: 827px) 100vw, 827px" /></a><p id="caption-attachment-3635" class="wp-caption-text">Microsoft Azure Storage Explorer Physical Location</p></div></li>
</ol>
<h2>Create an Azure Blob Storage Container</h2>
<p>For Creating a Blob Container, First of all, you need to go to Microsoft Storage Explorer Window. Then you can go through like this way (Storage Accounts &#8211;&gt; (Development) &#8211;&gt; Blob Containers).</p>
<div id="attachment_3637" style="width: 556px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3637" class="wp-image-3637 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png" alt="Microsoft Azure Storage Explorer: Create Blob Container" width="546" height="584" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png 546w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747-280x300.png 280w" sizes="(max-width: 546px) 100vw, 546px" /></a><p id="caption-attachment-3637" class="wp-caption-text">Microsoft Azure Storage Explorer: Create a Blob Container</p></div>
<p>you can also create a Virtual Directory under it. A Virtual Directory does not actually exist in Azure until you paste, drag or upload blobs into it.</p>
<div id="attachment_3638" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3638" class="wp-image-3638 size-large" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-1024x749.png" alt="Creating the new Virtual Directory under Blob Container" width="720" height="527" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-1024x749.png 1024w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-300x220.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-768x562.png 768w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container.png 1163w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-3638" class="wp-caption-text">Creating the new Virtual Directory under Blob Container</p></div>
<h2><span id="SSIS_Amazon_S3_Storage_Task_Examples">Step-By-Step to Download the Latest File from Azure Blob Storage</span></h2>
<p>Let´s start with an example. In this SSIS Azure Blob Storage Task File task example, we will download the latest file from Azure Blob Storage.</p>
<ol>
<li>First of All, Drag and Drop Azure Blob Storage Task from SSIS Toolbox and double click it to edit
<div id="attachment_3639" style="width: 613px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3639" class="wp-image-3639 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task.png" alt="Drag and Drop Azure Blob Storage Task" width="603" height="271" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task.png 603w, https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task-300x135.png 300w" sizes="(max-width: 603px) 100vw, 603px" /></a><p id="caption-attachment-3639" class="wp-caption-text">Drag and Drop Azure Blob Storage Task</p></div></li>
<li>The following options are available in Azure Blob Storage Task:
<div id="attachment_6677" style="width: 680px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6677" class="wp-image-6677 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options.png" alt="Option to upload, download files in SSIS" width="670" height="616" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options.png 670w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options-300x276.png 300w" sizes="(max-width: 670px) 100vw, 670px" /></a><p id="caption-attachment-6677" class="wp-caption-text">Options to upload, download files in SSIS</p></div></li>
<li>You can also overwrite files and folder, skip all, overwrite if the source is older, overwrite if the file size is different, rename files and more:
<div id="attachment_6678" style="width: 692px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6678" class="wp-image-6678 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task.png" alt="Overwrite files in SSIS" width="682" height="492" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task.png 682w, https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task-300x216.png 300w" sizes="(max-width: 682px) 100vw, 682px" /></a><p id="caption-attachment-6678" class="wp-caption-text">Overwrite files in SSIS</p></div></li>
<li>Let&#8217;s select the <strong>Download Azure file(s) to local directory</strong>. Now select/add The Source path, Check Recursive Scan to get all the sub-files and subfolders and it&#8217;s files and add Target Path, This option will download files. In Path AccessMode we can use Direct to write the path directly or to use an SSIS variable.
<div id="attachment_6735" style="width: 595px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6735" class="wp-image-6735 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files.png" alt="ssis-az-blob-aws-s3-download-files" width="585" height="522" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files.png 585w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files-300x268.png 300w" sizes="(max-width: 585px) 100vw, 585px" /></a><p id="caption-attachment-6735" class="wp-caption-text">SSIS Azure Blob Storage Task – Download files from Azure Blob Storage</p></div></li>
<li>Now go to Advanced Filter &amp; Sorting and configure it like below screen to download the latest file only
<div id="attachment_8629" style="width: 606px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/12/ssis-amazon-s3-and-azure-storage-task-filter-sorting.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-8629" class="size-full wp-image-8629" src="https://zappysys.com/blog/wp-content/uploads/2019/12/ssis-amazon-s3-and-azure-storage-task-filter-sorting.png" alt="Storage Task configuration to download the latest file only using sorting" width="596" height="567" srcset="https://zappysys.com/blog/wp-content/uploads/2019/12/ssis-amazon-s3-and-azure-storage-task-filter-sorting.png 596w, https://zappysys.com/blog/wp-content/uploads/2019/12/ssis-amazon-s3-and-azure-storage-task-filter-sorting-300x285.png 300w" sizes="(max-width: 596px) 100vw, 596px" /></a><p id="caption-attachment-8629" class="wp-caption-text">Storage Task configuration to download the latest file only using sorting</p></div></li>
<li>That&#8217;s it now execute the package and it will download the latest file from the Azure Blob Storage Task to Local File Machine.</li>
<li>Sometimes you may need to make advanced filtering on file path, file date, size, etc. for that refer to <a href="https://zappysys.com/blog/advanced-path-filtering-for-amazon-azure-storage-ssis-task/" target="_blank" rel="noopener">this article</a> for more details.</li>
</ol>
<h2>Conclusion</h2>
<p>To conclude, we can say that working with Azure Blob Storage is now very simple. In this article, we looked at how to Download the Latest File from Azure Blob Storage using SSIS. We used Adnavced Filtering &amp; sorting option. If you liked the tasks you can start using them by downloading SSIS PowerPack from our <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">web site here</a>.</p>
<p>Thanks for your time.</p>
<h2><span id="References">References</span></h2>
<ul>
<li><a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">About SSIS PowerPack</a></li>
<li><a href="https://docs.microsoft.com/en-us/sql/integration-services/expressions/integration-services-ssis-expressions" target="_blank" rel="noopener">Integration Services (SSIS) Expressions</a></li>
<li>Help File: <a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=azure-cloud-storage-task.htm" target="_blank" rel="noopener">Azure Storage Task</a></li>
</ul>
<p>The post <a href="https://zappysys.com/blog/download-latest-file-azure-blob-storage-using-ssis/">Download the Latest File from Azure Blob Storage using SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Import Azure Blob files into SQL Server (CSV/JSON/XML Driver)</title>
		<link>https://zappysys.com/blog/import-azure-blob-files-sql-server-csv-json-xml-driver/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Wed, 07 Aug 2019 15:52:30 +0000</pubDate>
				<category><![CDATA[Azure Blob CSV Driver]]></category>
		<category><![CDATA[Azure Blob JSON Driver]]></category>
		<category><![CDATA[Azure Blob XML Driver]]></category>
		<category><![CDATA[ODBC Drivers]]></category>
		<category><![CDATA[ODBC Gateway]]></category>
		<category><![CDATA[ODBC PowerPack]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[blob]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[linked server]]></category>
		<category><![CDATA[sql server]]></category>
		<category><![CDATA[xml]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=7638</guid>

					<description><![CDATA[<p>Introduction There might be a case when you have many CSV, JSON or XML files in Azure Blob and you want them to be imported straight into a SQL Server table. Here come ZappySys ODBC PowerPack and ZappySys Data Gateway (part of ODBC PowerPack) which will enable you to accomplish that. ZappySys ODBC PowerPack includes powerful Azure [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/import-azure-blob-files-sql-server-csv-json-xml-driver/">Import Azure Blob files into SQL Server (CSV/JSON/XML Driver)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-7639 size-thumbnail alignleft" src="https://zappysys.com/blog/wp-content/uploads/2019/08/blob-to-sql-150x150.png" alt="" width="150" height="150" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/blob-to-sql-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/08/blob-to-sql-300x300.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/08/blob-to-sql.png 400w" sizes="(max-width: 150px) 100vw, 150px" />There might be a case when you have many CSV, JSON or XML files in Azure Blob and you want them to be imported straight into a SQL Server table. Here come <a href="https://zappysys.com/products/odbc-powerpack/" target="_blank" rel="noopener">ZappySys ODBC PowerPack</a> and <a href="https://zappysys.com/products/odbc-powerpack/data-gateway/" target="_blank" rel="noopener">ZappySys Data Gateway</a> (part of ODBC PowerPack) which will enable you to accomplish that. ZappySys ODBC PowerPack includes powerful Azure Blob CSV, Azure Blob JSON and Azure Blob XML drivers that let you connect to an Azure Storage Explorer and read the contents from the files in the Container. Bringing in ZappySys Data Gateway allows doing that right from a SQL Server. Let&#8217;s begin and see how to Import Azure Blob files into SQL Server (CSV/JSON/XML Driver).</p>
<p>These drivers are related to this article:</p>
<div class="content_block" id="custom_post_widget-7641"><div style="display: table-row; background: #f7f7f7;">
<div style="display: table-cell; padding: 1em; border: 1px solid #ccc;"><img loading="lazy" decoding="async" style="vertical-align: middle; width: 50px; height: 50px; max-width: 50px;" src="//zappysys.com/images/odbc-powerpack/odbc-azure-blob-csv-driver.png" alt="Azure Blob CSV Driver" width="50" height="50" /></div>
<div style="display: table-cell; padding: 1em; border: 1px solid #ccc; border-left: none; width: 100%;"><a href="//zappysys.com/products/odbc-powerpack/azure-blob-odbc-driver-csv-files/" target="_blank" rel="noopener">Azure Blob Driver (for CSV Files)</a></div>
</div></div>
<div class="content_block" id="custom_post_widget-7643"><div style="display: table-row; background: #f7f7f7;">
<div style="display: table-cell; padding: 1em; border: 1px solid #ccc;"><img loading="lazy" decoding="async" style="vertical-align: middle; width: 50px; height: 50px; max-width: 50px;" src="https://zappysys.com/images/odbc-powerpack/odbc-azure-blob-json-driver.png" alt="Azure Blob JSON Driver" width="50" height="50" /></div>
<div style="display: table-cell; padding: 1em; border: 1px solid #ccc; border-left: none; width: 100%;"><a href="//zappysys.com/products/odbc-powerpack/azure-blob-odbc-driver-json-files/" target="_blank" rel="noopener">Azure Blob Driver (for JSON Files)</a></div>
</div></div>
<div class="content_block" id="custom_post_widget-7645"><div style="display: table-row; background: #f7f7f7;">
<div style="display: table-cell; padding: 1em; border: 1px solid #ccc;"><img loading="lazy" decoding="async" style="vertical-align: middle; width: 50px; height: 50px; max-width: 50px;" src="//zappysys.com/images/odbc-powerpack/odbc-azure-blob-xml-driver.png" alt="Azure Blob XML Driver" width="50" height="50" /></div>
<div style="display: table-cell; padding: 1em; border: 1px solid #ccc; border-left: none; width: 100%;"><a href="//zappysys.com/products/odbc-powerpack/azure-blob-odbc-driver-xml-files/" target="_blank" rel="noopener">Azure Blob Driver (for XML Files)</a></div>
</div></div>
<h2>Prerequisites</h2>
<ol>
<li>Firstly, Download and install <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">Microsoft Azure Storage Emulator</a> and <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Microsoft Azure Storage Explorer.</a></li>
<li>SQL Server instance installed (can be a <a href="https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/sql-server-2016-express-localdb" target="_blank" rel="noopener">SQL Server Express LocalDB</a> instance).</li>
<li><a href="https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms" target="_blank" rel="noopener">SQL Server Management Studio</a> (SSMS) installed.</li>
<li><a href="https://zappysys.com/products/odbc-powerpack/" target="_blank" rel="noopener">ZappySys ODBC PowerPack</a> installed (must be installed on a Windows machine; can be a different machine than SQL Server is installed on).</li>
</ol>
<p><strong>NOTE:</strong> If you want to use Live account (Azure Storage) then you can skip Step #3</p>
<h2>Getting started</h2>
<p>In order to start, we will show several examples. ZappySys includes Data Gateway that will help you in reading data of Azure Blob files. Here we are showing you is, how to Import Azure Blob files into SQL Server (CSV/JSON/XML Driver).</p>
<p>You can connect to Azure Storage Service from SSIS, you will need Storage Account Name and Access Key. Ask your SysAdmin or responsible person to provide that information to you. <a href="https://zappysys.com/forums/topic/azure-blob-storage-how-to-create-new-storage-account-and-get-access-key/" target="_blank" rel="noopener">Click here</a> to read more about how to get your Storage Account Name and Access Key. Here are sample Credentials.</p><pre class="crayon-plain-tag">Account Name: mystorageaccount
Access Key: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==</pre><p>
If you don&#8217;t have Azure Storage account then you can try offline mode on your local machine. You can just <a href="http://www.microsoft.com/en-us/download/details.aspx?id=42317" target="_blank" rel="noopener">download Azure Storage Emulator</a> and start testing.</p>
<h2><span id="Setup_Azure_Storage_client_tools_and_Create_Queue"><span id="Setup_Azure_Storage_client_tools">Setup Azure Storage Explorer</span></span></h2>
<p>Setup Azure Storage client tools we will start from a simple example of how to load Invoice Data from a CSV that is located in Azure Blob, then we will load JSON contacts data from them and finally, we will proceed by loading contacts from many XML files those are compressed in ZIP.</p>
<ol>
<li>Once you have <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">downloaded and installed storage emulator</a> You can launch Microsoft Azure Storage Emulator from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3631" class="wp-caption aligncenter">
<p><a href="https://i1.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png?ssl=1" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="wp-image-3631 size-full" src="https://i1.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png?resize=720%2C79&amp;ssl=1" alt="Azure Storage Emulator Physical Location" width="643" height="70" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png 859w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-768x84.png 768w" sizes="(max-width: 643px) 100vw, 643px" /></a></p>
<p class="wp-caption-text">Azure Storage Emulator Physical Location</p>
</div>
</li>
<li>If you can see the below-attached Command Prompt screen after Emulator started. Then you can proceed to start Microsoft Azure Storage Explorer as the Azure Storage Emulator is started successfully.
<div id="attachment_3633" class="wp-caption aligncenter">
<p><a href="https://i2.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png?ssl=1" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="wp-image-3633 size-full" src="https://i2.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png?resize=700%2C237&amp;ssl=1" alt="Command Prompt Screen after Microsoft Azure Storage Emulator Started" width="643" height="218" /></a></p>
<p class="wp-caption-text">Command Prompt Screen after Microsoft Azure Storage Emulator Started</p>
</div>
</li>
<li>Now, you have to <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">download and install Microsoft Azure Storage Explorer</a> and then you can launch Microsoft Azure Storage Explorer from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3635" class="wp-caption aligncenter">
<p><a href="https://i0.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png?ssl=1" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="wp-image-3635 size-full" src="https://i0.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png?resize=720%2C84&amp;ssl=1" alt="Microsoft Azure Storage Explorer Location" width="643" height="75" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png 827w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-300x35.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-768x90.png 768w" sizes="(max-width: 643px) 100vw, 643px" /></a></p>
<p class="wp-caption-text">Microsoft Azure Storage Explorer Location.</p>
</div>
</li>
<li>For Creating a Blob Container, First of all, you need to go to Microsoft Storage Explorer Window. Then you can go through like this way (Storage Accounts –&gt; (Development) –&gt; Blob Containers).
<div id="attachment_3637" style="width: 556px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3637" class="size-full wp-image-3637" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png" alt="Microsoft Azure Storage Explorer : Create Blob Container" width="546" height="584" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png 546w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747-280x300.png 280w" sizes="(max-width: 546px) 100vw, 546px" /></a><p id="caption-attachment-3637" class="wp-caption-text">Microsoft Azure Storage Explorer: Create a Blob Container</p></div></li>
</ol>
<h2><span style="font-size: 14pt;">Open and Configure ZappySys Data Gateway</span></h2>
<div class="content_block" id="custom_post_widget-7369">Now let's look at steps to configure Data Gateway after installation:
<ol>
 	<li>Assuming you have installed <a href="https://zappysys.com/products/odbc-powerpack/" target="_blank" rel="noopener">ZappySys ODBC PowerPack</a> using default options (Which also enables Data Gateway Service)</li>
 	<li>Search "Gateway" in your start menu and click ZappySys Data Gateway
<div class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/11/start-menu-open-zappysys-data-gateway.png">
<img decoding="async" src="https://zappysys.com/blog/wp-content/uploads/2018/11/start-menu-open-zappysys-data-gateway.png" alt="Open ZappySys Data Gateway" /></a>
<p class="wp-caption-text">Open ZappySys Data Gateway</p>

</div></li>
 	<li>First make sure Gateway Service is running (Verify Start icon is disabled)</li>
 	<li>Also verify Port on General Tab
<div class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/03/ZappySys-data-gateway-port-5000.png">
<img decoding="async" src="https://zappysys.com/blog/wp-content/uploads/2018/03/ZappySys-data-gateway-port-5000.png" alt="Port Number setting on ZappySys Data Gateway" /></a>
<p class="wp-caption-text">Port Number setting on ZappySys Data Gateway</p>

</div></li>
 	<li>Now go to Users tab. <strong>Click Add</strong> icon to add a new user. Check Is admin to give access to all data sources you add in future. If you don't check admin then you have to manually configure user permission for each data source.
<div class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/11/zappysys-data-gateway-add-user.png">
<img decoding="async" src="https://zappysys.com/blog/wp-content/uploads/2018/11/zappysys-data-gateway-add-user.png" alt="Add Data Gateway User" /></a>
<p class="wp-caption-text">Add Data Gateway User</p>

</div></li>
</ol>
&nbsp;</div>
<h2>Import CSV file located at Azure Blob into SQL Server</h2>
<h3>Overview</h3>
<p>Let&#8217;s say you have CSV file that is located in Azure Blob Container, and you want them all data into your SQL Server. We will follow the same steps for that we will do for import JSON and XML file into SQL Server.</p>
<div id="attachment_7719" style="width: 612px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-file-list.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7719" class="wp-image-7719 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-file-list.png" alt="Azure Blob Container - CSV File Located" width="602" height="418" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-file-list.png 602w, https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-file-list-300x208.png 300w" sizes="(max-width: 602px) 100vw, 602px" /></a><p id="caption-attachment-7719" class="wp-caption-text">Azure Blob Container &#8211; CSV File Located</p></div>
<h3>Create an Azure Blob CSV data source in ZappySys Data Gateway</h3>
<ol>
<li>The first thing you will have to do is to create a data source in ZappySys Data Gateway. In the Data Source tab, Just click on <strong>Add</strong> button, give the data source a name, e.g. &#8220;<strong>MyInvoiceCSV</strong>&#8220;, and then select <strong>Native &#8211; ZappySys Azure Blob CSV Driver</strong><strong>.</strong>
<div id="attachment_7746" style="width: 572px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-data-source-e1565697707852.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7746" class="wp-image-7746 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-data-source-e1565697707852.png" alt="Create Data Source - Azure Blob CSV Driver" width="562" height="539" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-data-source-e1565697707852.png 562w, https://zappysys.com/blog/wp-content/uploads/2019/08/azure-blob-csv-data-source-e1565697707852-300x288.png 300w" sizes="(max-width: 562px) 100vw, 562px" /></a><p id="caption-attachment-7746" class="wp-caption-text">Create Data Source &#8211; Azure Blob CSV Driver</p></div></li>
<li>Then click on <strong>Edit</strong> and add the Data Gateway user you created in the <strong>Users</strong> tab. We will use this user later when adding a Linked Server to the Data Gateway to authenticate:<img loading="lazy" decoding="async" class="size-full wp-image-7864 aligncenter" src="https://zappysys.com/blog/wp-content/uploads/2019/08/import-csv-from-azure-blob-storage-to-sql-server-add-user.png" alt="" width="681" height="629" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/import-csv-from-azure-blob-storage-to-sql-server-add-user.png 681w, https://zappysys.com/blog/wp-content/uploads/2019/08/import-csv-from-azure-blob-storage-to-sql-server-add-user-300x277.png 300w" sizes="(max-width: 681px) 100vw, 681px" /></li>
<li>Now, click on the Edit button to configure &#8220;<strong>MyInvoiceCSV</strong>&#8221; Azure Blob CSV Data Source.
<div id="attachment_7722" style="width: 572px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/edit-azure-blob-csv-data-source.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7722" class="wp-image-7722 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/edit-azure-blob-csv-data-source.png" alt="Configure Data Gateway" width="562" height="539" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/edit-azure-blob-csv-data-source.png 562w, https://zappysys.com/blog/wp-content/uploads/2019/08/edit-azure-blob-csv-data-source-300x288.png 300w" sizes="(max-width: 562px) 100vw, 562px" /></a><p id="caption-attachment-7722" class="wp-caption-text">Configure Data Gateway</p></div></li>
<li>When a window open, click on <strong>Click here to Configure the Connection</strong> and select Use the Microsoft Azure Storage Emulator. If you have Online <em>Storage Account</em> and <em><em>Account Key </em></em>then Select Enter Storage Account Credentials and enter it.<em><em><br />
</em></em></p>
<div style="width: 503px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/odbc-powerpack/scr/images/azure-blob-json-driver/azure-blob-json-driver-create-connection.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/odbc-powerpack/scr/images/azure-blob-json-driver/azure-blob-json-driver-create-connection.png" alt="Create Azure Storage Connection" width="493" height="499" /></a><p class="wp-caption-text">Create Azure Storage Connection</p></div></li>
<li>Now, Select Azure Blob Container and file from it and In the Data Format / Compression (Zip / GZip) tab set suitable file Compression Format (Zip or GZip).
<div id="attachment_7721" style="width: 753px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/configure-azure-blob-csv-data-source.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7721" class="wp-image-7721 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/configure-azure-blob-csv-data-source.png" alt="ZappySys Azure Blob CSV - Configure Driver" width="743" height="623" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/configure-azure-blob-csv-data-source.png 743w, https://zappysys.com/blog/wp-content/uploads/2019/08/configure-azure-blob-csv-data-source-300x252.png 300w" sizes="(max-width: 743px) 100vw, 743px" /></a><p id="caption-attachment-7721" class="wp-caption-text">ZappySys Azure Blob CSV &#8211; Configure Driver</p></div></li>
<li>Go to the <strong>Preview</strong> tab and click on the <strong>Preview Data</strong> button to make sure everything is configured correctly and preview the results.
<div id="attachment_7726" style="width: 753px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/preview-azure-blob-csv-data-source.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7726" class="wp-image-7726 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/preview-azure-blob-csv-data-source.png" alt="ZappySys Azure Blob CSV - Preview Data" width="743" height="570" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/preview-azure-blob-csv-data-source.png 743w, https://zappysys.com/blog/wp-content/uploads/2019/08/preview-azure-blob-csv-data-source-300x230.png 300w" sizes="(max-width: 743px) 100vw, 743px" /></a><p id="caption-attachment-7726" class="wp-caption-text">ZappySys Azure Blob CSV &#8211; Preview Data</p></div></li>
<li>Now, Click on OK button also Save and Restart Service.
<div id="attachment_7724" style="width: 572px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/save-and-restart-service-data-source.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7724" class="wp-image-7724 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/save-and-restart-service-data-source.png" alt="ZappySys Data Gateway Service - Save and Restart" width="562" height="539" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/save-and-restart-service-data-source.png 562w, https://zappysys.com/blog/wp-content/uploads/2019/08/save-and-restart-service-data-source-300x288.png 300w" sizes="(max-width: 562px) 100vw, 562px" /></a><p id="caption-attachment-7724" class="wp-caption-text">ZappySys Data Gateway Service &#8211; Save and Restart</p></div></li>
<li>That&#8217;s all, now we are ready to proceed and add a Linked Server to this data source.</li>
</ol>
<h3 id="Set-up-a-SQL-Server-Linked-Server">Set up a SQL Server Linked Server</h3>
<div class="content_block" id="custom_post_widget-5432">Once you configured the data source in Gateway, we can now set up a Linked Server in a SQL Server.
<ol style="margin-left: 10px;">
 	<li>Open SSMS and connect to a SQL Server.</li>
 	<li>Go to Root &gt; Server Objects &gt; Linked Servers node. Right click and click <strong>New Linked Server...
</strong>
<div class="wp-caption alignnone">
<a href="https://zappysys.com/blog/wp-content/uploads/2018/03/create-new-linked-server-ssms.png">
<img decoding="async" src="https://zappysys.com/blog/wp-content/uploads/2018/03/create-new-linked-server-ssms.png" alt="Add Linked Server in SQL Server" />
</a>
<p class="wp-caption-text">Adding Linked Server in SQL Server</p>

</div></li>
 	<li>Now enter the linked server name, select Provider as SQL Native Client.</li>
 	<li>Enter data source as <strong><span class="lang:default decode:true crayon-inline">GatewayServerName,PORT_NUMBER</span></strong> where server name is where ZappySys Gateway is running (can be the same as SQL Server machine or a remote machine). Default PORT_NUMBER is 5000 but confirm that on the Gateway &gt; General tab in case it's different.</li>
 	<li>Enter Catalog Name. This must match name from Data gateway Data sources grid &gt; Name column
<div class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/11/ssms-sql-server-configure-linked-server-2.png">
<img decoding="async" src="https://zappysys.com/blog/wp-content/uploads/2018/11/ssms-sql-server-configure-linked-server-2.png" alt="Configure Linked Server Provider, Catalog, Server, Port for ZappySys Data Gateway Connection" />
</a>
<p class="wp-caption-text">Configure Linked Server Provider, Catalog, Server, Port for ZappySys Data Gateway Connection</p>
</div>
<div style="color: #31708f;background-color: #d9edf7;border-color: #bce8f1;padding: 15px;margin-bottom: 20px;border: 1px solid transparent;border-radius: 4px;">
<strong>INFO:</strong><br/>
<ul>
    <li>
      For <strong>SQL Server 2012, 2014, 2016, 2017, and 2019</strong>, use the <em>SQL Server Native Client 11.0</em> as the Provider.
    </li>
    <li>
      For <strong>SQL Server 2022 or higher</strong>, use the <em>Microsoft OLE DB Driver for SQL Server</em> as the Provider.
    </li>
  </ul>
</div></li>
 	<li>Click on Security Tab and select the last option "<strong>Be made using this security context</strong>". Enter your gateway user account here.
<div class="wp-caption alignnone">
<img loading="lazy" decoding="async" class="alignnone size-full wp-image-5456" src="https://zappysys.com/blog/wp-content/uploads/2018/11/add-linked-server-sql-server-3-security-2.png" alt="" width="690" height="625" srcset="https://zappysys.com/blog/wp-content/uploads/2018/11/add-linked-server-sql-server-3-security-2.png 690w, https://zappysys.com/blog/wp-content/uploads/2018/11/add-linked-server-sql-server-3-security-2-300x272.png 300w" sizes="(max-width: 690px) 100vw, 690px" />
<p class="wp-caption-text">Configuring Linked Server credentials</p>
</li>
<li>
        <p>Optional: Under the Server Options Tab, Enable <b>RPC</b> and <b>RPC Out</b> and Disable Promotion of Distributed Transactions<b>(MSDTC)</b>.</p>
		<div class="wp-caption alignnone">
			<img decoding="async" class="block margin-bottom-10 img-thumbnail" src="https://zappysys.com/blog/wp-content/uploads/2018/11/linked-server-options-rpc-msdtc.png" title="RPC and MSDTC Settings" alt="RPC and MSDTC Settings" />
			<p class="wp-caption-text">RPC and MSDTC Settings</p>
		</div>
        <hr />
        <p>
            You need to enable RPC Out if you plan to use <b><i>EXEC(...) AT [MY_LINKED_SERVER_NAME]</i></b> rather than OPENQUERY.
            <br />
            If don't enabled it, you will encounter the <i>'Server "MY_LINKED_SERVER_NAME" is not configured for RPC'</i> error.
        </p>
        <p>
            Query Example:
            <code class="sql">EXEC('Select * from Products') AT [MY_LINKED_SERVER_NAME]</code>
        </p>
        <hr />
        <p>
            If you plan to use <b><i>'INSERT INTO...EXEC(....) AT [MY_LINKED_SERVER_NAME]'</i></b> in that case you need to Disable Promotion of Distributed Transactions(MSDTC).
            <br />
            If don't disabled it, you will encounter the <i>'The operation could not be performed because OLE DB provider "SQLNCLI11/MSOLEDBSQL" for linked server "MY_LINKED_SERVER_NAME" was unable to begin a distributed transaction.'</i> error.
        </p>
        <p>
            Query Example:
<pre class="">Insert Into dbo.Products 
EXEC('Select * from Products') AT [MY_LINKED_SERVER_NAME]</pre>
        </p>
        <hr />
</li>
 	<li>Click OK to save the Linked Server.</li>
</ol></div>
<h3>Execute the SQL query</h3>
<p>Once again, if you created the Linked Server with name &#8220;GATEWAY&#8221;, execute this SQL query in SSMS:</p>
<p><code>SELECT * INTO MyInvoices FROM OPENQUERY([GATEWAY], 'SELECT * FROM $')<br />
SELECT * FROM MyInvoices</code></p>
<h3>The results</h3>
<p>You should see a similar view, once you execute the query:</p>
<div id="attachment_7862" style="width: 713px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7862" class="wp-image-7862 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/80-import-csv-from-azure-blob-storage-into-sql-server-the-results-data-is-loaded-into-sql-server.png" alt="The results of loading many CSVs from Azure Blob into SQL Server" width="703" height="441" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/80-import-csv-from-azure-blob-storage-into-sql-server-the-results-data-is-loaded-into-sql-server.png 703w, https://zappysys.com/blog/wp-content/uploads/2019/08/80-import-csv-from-azure-blob-storage-into-sql-server-the-results-data-is-loaded-into-sql-server-300x188.png 300w" sizes="(max-width: 703px) 100vw, 703px" /><p id="caption-attachment-7862" class="wp-caption-text">The results of loading many CSVs from Azure Blob into SQL Server</p></div>
<h2>Import JSON file located at Azure Blob into SQL Server</h2>
<h3>Overview</h3>
<p>Let&#8217;s say you have JSON file that is located in Azure Blob Container, and you want them all data into your SQL Server. We will follow the same steps of the import CSV file into SQL Server and we will do for XML file into SQL Server.</p>
<h3>Create an Azure Blob JSON data source in ZappySys Data Gateway</h3>
<p>Follow the steps as in Create an Azure Blob CSV data source in ZappySys Data Gateway section when adding a new data source, except for these two steps:</p>
<ol>
<li>The first thing you will have to do is to create a data source in ZappySys Data Gateway. Just click <strong>Add</strong> button, give the data source a name, e.g. &#8220;<strong>MyContactsJSON</strong>&#8220;, and then select <strong>Native &#8211; ZappySys Azure Blob JSON Driver.</strong>
<div id="attachment_7663" style="width: 637px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/10-create-new-data-source-in-data-gateway-to-load-json-files-from-azure-blob-into-sql-server-1.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7663" class="wp-image-7663 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/10-create-new-data-source-in-data-gateway-to-load-json-files-from-azure-blob-into-sql-server-1.png" alt="ZappySys Data Gateway - Create New Data Source" width="627" height="583" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/10-create-new-data-source-in-data-gateway-to-load-json-files-from-azure-blob-into-sql-server-1.png 627w, https://zappysys.com/blog/wp-content/uploads/2019/08/10-create-new-data-source-in-data-gateway-to-load-json-files-from-azure-blob-into-sql-server-1-300x279.png 300w" sizes="(max-width: 627px) 100vw, 627px" /></a><p id="caption-attachment-7663" class="wp-caption-text">ZappySys Data Gateway &#8211; Create New Data Source</p></div>
<div class="mceTemp"></div>
<div class="mceTemp"></div>
</li>
<li>After that, select a JSON file from container you want to load, and then click <strong>Select Filter</strong> button to choose data you want to be displayed in SQL Server.
<div id="attachment_7670" style="width: 667px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/40-configure-azure-blob-json-data-source-to-load-data-into-sql-server-1.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7670" class="wp-image-7670 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/40-configure-azure-blob-json-data-source-to-load-data-into-sql-server-1.png" alt="Configuring the JSON data source to load a JSON from Azure Blob container into SQL Server" width="657" height="702" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/40-configure-azure-blob-json-data-source-to-load-data-into-sql-server-1.png 657w, https://zappysys.com/blog/wp-content/uploads/2019/08/40-configure-azure-blob-json-data-source-to-load-data-into-sql-server-1-281x300.png 281w" sizes="(max-width: 657px) 100vw, 657px" /></a><p id="caption-attachment-7670" class="wp-caption-text">Configuring the JSON data source to load a JSON from Azure Blob container into SQL Server</p></div></li>
</ol>
<p>Now you are ready to create a Linked Server and connect to the data source you just created. If you used &#8220;<strong>MyContactsJSON</strong>&#8221; as the data source name, make sure to use the same name when creating a Linked Server.</p>
<h3>Set up a SQL Server Linked Server</h3>
<p>Again, follow the very same steps from the section above where we <a href="#Set-up-a-SQL-Server-Linked-Server">added the Linked Server to a CSV data source</a>, except that change <em>Catalog</em> property of the Linked Server to match the name of the Azure Blob JSON data source we created. Once you do that, you are ready to load JSON into your SQL Server.</p>
<h3>Execute the SQL query</h3>
<p style="text-align: justify;">Once you created the Linked Server to ZappySys Data Gateway, you are ready to execute the SQL query and load data into SQL Server. Supposedly, you created the Linked Server with the name &#8220;GATEWAY&#8221;, then open SSMS and execute the following query:</p>
<p><code>SELECT * INTO MyContacts FROM openquery([GATEWAY], 'SELECT * FROM $')<br />
SELECT * FROM MyContacts</code></p>
<h3>The results</h3>
<p>You should see similar results after you execute the query:</p>
<div id="attachment_7536" style="width: 609px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/06/600-the-results-of-importing-amazon-s3-data-into-sql-server-using-json-driver.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7536" class="wp-image-7536 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/06/600-the-results-of-importing-amazon-s3-data-into-sql-server-using-json-driver.png" alt="The results of getting JSON data straight from Azure Blob JSON" width="599" height="257" srcset="https://zappysys.com/blog/wp-content/uploads/2019/06/600-the-results-of-importing-amazon-s3-data-into-sql-server-using-json-driver.png 599w, https://zappysys.com/blog/wp-content/uploads/2019/06/600-the-results-of-importing-amazon-s3-data-into-sql-server-using-json-driver-300x129.png 300w" sizes="(max-width: 599px) 100vw, 599px" /></a><p id="caption-attachment-7536" class="wp-caption-text">The results of getting JSON data straight from Azure Blob JSON</p></div>
<p>Now we are ready to proceed to the next section and import many XML files at once.</p>
<h2>Import many XML files located at Azure Blob into SQL Server</h2>
<h3>Overview</h3>
<p>Supposedly, you have many XMLs where each one is zipped and you want to load them all into a SQL Server table.</p>
<div id="attachment_7675" style="width: 616px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/65-load-many-compressed-xml-files-from-azure-blob-container-into-sql-server.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7675" class="wp-image-7675 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/65-load-many-compressed-xml-files-from-azure-blob-container-into-sql-server.png" alt="Zipped XML files located in Azure Blob container to be loaded into SQL Server" width="606" height="415" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/65-load-many-compressed-xml-files-from-azure-blob-container-into-sql-server.png 606w, https://zappysys.com/blog/wp-content/uploads/2019/08/65-load-many-compressed-xml-files-from-azure-blob-container-into-sql-server-300x205.png 300w" sizes="(max-width: 606px) 100vw, 606px" /></a><p id="caption-attachment-7675" class="wp-caption-text">Zipped XML files located in Azure Blob container to be loaded into SQL Server</p></div>
<p>The first thing you will have to do is to create a data source, based on ZappySys Azure Blob XML Driver. Let&#8217;s proceed and just do that.</p>
<h3>Create an Azure Blob XML data source in ZappySys Data Gateway</h3>
<p>Follow the same steps as in Create an Azure Blob JSON data source in ZappySys Data Gateway section when adding a new data source, except for these two steps:</p>
<ol>
<li>When adding a data source select <strong>Native &#8211; ZappySys Azure Blob XML Driver</strong> as <em>Connector Type.</em>
<div id="attachment_7674" style="width: 430px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/67-create-new-azure-blob-xml-data-source-in-data-gateway-to-load-xml-files-into-sql-selver.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7674" class="wp-image-7674 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/67-create-new-azure-blob-xml-data-source-in-data-gateway-to-load-xml-files-into-sql-selver.png" alt="Choosing &quot;ZappySys Azure Blob XML Driver&quot; to load XMLs to SQL Server" width="420" height="296" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/67-create-new-azure-blob-xml-data-source-in-data-gateway-to-load-xml-files-into-sql-selver.png 420w, https://zappysys.com/blog/wp-content/uploads/2019/08/67-create-new-azure-blob-xml-data-source-in-data-gateway-to-load-xml-files-into-sql-selver-300x211.png 300w" sizes="(max-width: 420px) 100vw, 420px" /></a><p id="caption-attachment-7674" class="wp-caption-text">Choosing &#8220;ZappySys Azure Blob XML Driver&#8221; to load XMLs to SQL Server</p></div>
<div class="mceTemp"></div>
</li>
<li>Then click on <strong>Edit</strong> and select Azure Blob Container and file from it and In the Data Format / Compression (Zip / GZip) tab set suitable file Compression Format (Zip or GZip).
<div id="attachment_7673" style="width: 667px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/70-configure-azure-blob-xml-data-source-to-load-into-sql-server.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7673" class="wp-image-7673 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/70-configure-azure-blob-xml-data-source-to-load-into-sql-server.png" alt="Configuring data source based on ZappySys Azure Blob XML Driver to load XMLs into SQL Server" width="657" height="515" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/70-configure-azure-blob-xml-data-source-to-load-into-sql-server.png 657w, https://zappysys.com/blog/wp-content/uploads/2019/08/70-configure-azure-blob-xml-data-source-to-load-into-sql-server-300x235.png 300w" sizes="(max-width: 657px) 100vw, 657px" /></a><p id="caption-attachment-7673" class="wp-caption-text">Configuring data source based on ZappySys Azure Blob XML Driver to load XMLs into SQL Server</p></div></li>
<li>Now we are ready to set up a Linked Server to this newly created data source.</li>
</ol>
<h3>Set up a SQL Server Linked Server</h3>
<p style="text-align: justify;">Follow the very same steps from the section above where we <a href="#Set-up-a-SQL-Server-Linked-Server">added the Linked Server to a CSV data source</a>, except that change <em>Catalog</em> property of the Linked Server to match the name of the Azure Blob XML data source you created. Once you do that, you are ready to load XMLs into your SQL Server.</p>
<h3>Execute the SQL query</h3>
<p>Again, if you created the Linked Server with name &#8220;GATEWAY&#8221;, execute the following SQL query in SSMS:</p>
<p><code>SELECT * INTO MyContacts FROM openquery([GATEWAY], 'SELECT * FROM $')<br />
SELECT * FROM MyContacts</code></p>
<h3>The results</h3>
<p>You should see a similar view once you execute the query:</p>
<div id="attachment_7550" style="width: 614px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/06/750-the-result-of-importing-xml-data-from-amazon-s3-into-sql-server.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7550" class="wp-image-7550 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/06/750-the-result-of-importing-xml-data-from-amazon-s3-into-sql-server.png" alt="The data of many XMLs loaded from Azure Blob Container into SQL Server" width="604" height="360" srcset="https://zappysys.com/blog/wp-content/uploads/2019/06/750-the-result-of-importing-xml-data-from-amazon-s3-into-sql-server.png 604w, https://zappysys.com/blog/wp-content/uploads/2019/06/750-the-result-of-importing-xml-data-from-amazon-s3-into-sql-server-300x179.png 300w" sizes="(max-width: 604px) 100vw, 604px" /></a><p id="caption-attachment-7550" class="wp-caption-text">The data of many XMLs loaded from Azure Blob Container into SQL Server</p></div>
<p>Now we are ready to move to the next section and recursively scan CSVs and load them into SQL Server.</p>
<h2>Conclusion</h2>
<p style="text-align: justify;">We had a goal to import Azure Blob files into SQL Server from SQL Server itself. We learned how to Import Azure Blob files into SQL Server (CSV/JSON/XML Driver), which some of them were zipped and were located at different folders and subfolders. It was possible to accomplish that using <a href="https://zappysys.com/products/odbc-powerpack/" target="_blank" rel="noopener">ODBC PowerPack</a>, <a href="https://zappysys.com/products/odbc-powerpack/data-gateway/" target="_blank" rel="noopener">ZappySys Data Gateway</a>, and ODBC PowerPack drivers &#8211; Azure Blob JSON Driver, Azure Blob XML Driver, and Azure Blob CSV Driver. At first, we created data sources in the Data Gateway, then we created Linked Servers in SQL Server and connected to ZappySys Data Gateway, which finally made it possible to load data from Azure Blob straight from SQL queries in SSMS.</p>
<h2>References</h2>
<p>Finally, you can use the following links for more information:</p>
<ul>
<li><a href="https://zappysys.com/onlinehelp/odbc-powerpack/scr/azure-blob-csv-odbc-driver-intro.htm" target="_blank" rel="noopener">Azure Blob CSV Driver</a></li>
<li><a href="https://zappysys.com/onlinehelp/odbc-powerpack/scr/azure-blob-json-odbc-driver-intro.htm" target="_blank" rel="noopener">Azure Blob JSON Driver</a></li>
<li><a href="https://zappysys.com/onlinehelp/odbc-powerpack/scr/azure-blob-xml-odbc-driver-intro.htm" target="_blank" rel="noopener">Azure Blob XML Driver</a></li>
</ul>
<p>The post <a href="https://zappysys.com/blog/import-azure-blob-files-sql-server-csv-json-xml-driver/">Import Azure Blob files into SQL Server (CSV/JSON/XML Driver)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How to Read/Write Azure Queue Storage data in SSIS</title>
		<link>https://zappysys.com/blog/read-write-azure-queue-storage-data-ssis/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Tue, 06 Aug 2019 12:47:38 +0000</pubDate>
				<category><![CDATA[SSIS Azure Queue Storage Destination]]></category>
		<category><![CDATA[SSIS Azure Queue Storage Source]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[Destination]]></category>
		<category><![CDATA[Dummy]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[queue]]></category>
		<category><![CDATA[read]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[ssis]]></category>
		<category><![CDATA[storage]]></category>
		<category><![CDATA[Trash]]></category>
		<category><![CDATA[write]]></category>
		<category><![CDATA[ZappySys]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=7604</guid>

					<description><![CDATA[<p>Introduction In our previous blog, we saw you how to read/write Azure Table Storage data. Now in this blog, we will see How to Read/Write Azure Queue Storage data in SSIS. To illustrate, we will use ZappySys SSIS PowerPack, which includes several tasks to import/export data from multiples sources to multiple destinations like flat files, Azure, AWS, databases, [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/read-write-azure-queue-storage-data-ssis/">How to Read/Write Azure Queue Storage data in SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-queues.png"><img loading="lazy" decoding="async" class="wp-image-7631 size-thumbnail alignleft" src="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-queues-150x150.png" alt="" width="150" height="150" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-queues-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/08/azure-queues.png 250w" sizes="(max-width: 150px) 100vw, 150px" /></a>In our previous blog, we saw you how to <a href="https://zappysys.com/blog/read-write-azure-table-storage-data-ssis/" target="_blank" rel="noopener">read/write Azure Table Storage</a> data. Now in this blog, we will see How to Read/Write Azure Queue Storage data in SSIS. To illustrate, we will use <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">ZappySys SSIS PowerPack</a>, which includes several tasks to import/export data from multiples sources to multiple destinations like flat files, Azure, AWS, databases, Office files and more. They are Coding free, drag and drop high-performance suite of <em>Custom SSIS Components</em> and <em>SSIS Tasks.</em> If you like perform other operations on Azure Blob Storage Files (e.g. Download, Upload, Create, Delete) then <a href="https://zappysys.com/blog/category/ssis/tasks/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">check these articles</a>.</p>
<p>In nutshell, this post will focus on How to Read/Write Azure Queue Storage data in SSIS using the following Source/Destination.</p>
<p>&nbsp;</p>
<h2>Component Mentioned in this article</h2>
<div class="su-table su-table-alternate">
<table style="height: 44px;width: 307px">
<tbody>
<tr style="height: 22px">
<td style="height: 22px;width: 1px"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-azure-queue-source.png"><img loading="lazy" decoding="async" class="alignnone wp-image-3074" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-azure-queue-source.png" alt="" width="40" height="40" /></a></td>
<td style="height: 22px;width: 247px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-source-connector/" target="_blank" rel="noopener">Azure Queue Storage Source</a></td>
</tr>
<tr style="height: 22px">
<td style="height: 22px;width: 1px"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination.png"><img loading="lazy" decoding="async" class="alignnone wp-image-3074" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination.png" alt="" width="40" height="40" /></a></td>
<td style="height: 22px;width: 247px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-destination-connector/" target="_blank" rel="noopener">Azure Queue Storage Destination</a></td>
</tr>
</tbody>
</table>
</div>
<h2><span id="Prerequisite"><span id="Requirements">Prerequisite</span></span></h2>
<ol>
<li>First, you will need to have SSIS installed</li>
<li>Secondly, make sure to have SSDT</li>
<li>Download and install <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">Microsoft Azure Storage Emulator</a></li>
<li>Download and install <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Microsoft Azure Storage Explorer</a></li>
<li>Finally, do not forget to install ZappySys <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a></li>
</ol>
<p><strong>NOTE:</strong> If you want to use Live account (Azure Storage) then you can skip Step #3</p>
<h2 id="what-are-azure-queues">What are Azure Queues?</h2>
<p>Azure Queue storage is a service for storing large numbers of messages. You access messages from anywhere in the world via authenticated calls using HTTP or HTTPS. A queue message can be up to 64 KB in size. A queue may contain millions of messages, up to the total capacity limit of a storage account.</p>
<h3 id="common-uses">Common uses</h3>
<div id="attachment_7610" style="width: 291px" class="wp-caption alignright"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-queue-storage-service-concept.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7610" class="wp-image-7610 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/08/azure-queue-storage-service-concept.png" alt="Microsoft Azure Queue Concept" width="281" height="144" /></a><p id="caption-attachment-7610" class="wp-caption-text">Microsoft Azure Queue Concept</p></div>
<p>Common uses of Queue storage include:</p>
<ul>
<li>Creating a backlog of work to process asynchronously</li>
<li>Passing messages from an Azure web role to an Azure worker role</li>
<li>The Queue service contains the following components:</li>
</ul>
<p>&nbsp;</p>
<h2><span id="Getting_Started">Getting Started</span></h2>
<p>In order to start, we will show several examples. Zappysys includes an <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-source-connector/" target="_blank" rel="noopener">SSIS Azure Queue Storage Source</a> that will help you in reading data of Queue and <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-destination-connector/" target="_blank" rel="noopener">SSIS Azure Queue Storage Destination</a> that will help you to write data in Queue. Here we are showing you is, how to Read/Write Azure Queue Storage data in SSIS.</p>
<p>You can connect to your Azure Storage Account by entering your storage account credentials. Here I am showing an example of the use of the local Azure Storage Emulator.</p>
<h2><span id="Setup_Azure_Storage_client_tools">Setup Azure Storage client tools and Create Queue</span></h2>
<ol>
<li>Once you have <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">downloaded and installed storage emulator</a> You can launch Microsoft Azure Storage Emulator from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3631" style="width: 869px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3631" class="wp-image-3631 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" alt="Azure Storage Emulator Physical Location" width="859" height="94" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png 859w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-768x84.png 768w" sizes="(max-width: 859px) 100vw, 859px" /></a><p id="caption-attachment-3631" class="wp-caption-text">Azure Storage Emulator Physical Location</p></div></li>
<li>If you can see the below-attached Command Prompt screen after Emulator started. Then you can proceed to start Microsoft Azure Storage Explorer as the Azure Storage Emulator is started successfully.
<div id="attachment_3633" style="width: 710px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3633" class="wp-image-3633 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png" alt="Command Prompt Screen after Microsoft Azure Storage Emulator Started" width="700" height="237" /></a><p id="caption-attachment-3633" class="wp-caption-text">Command Prompt Screen after Microsoft Azure Storage Emulator Started</p></div></li>
<li>Now, you have to <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">download and install Microsoft Azure Storage Explorer</a> and then you can launch Microsoft Azure Storage Explorer from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3635" style="width: 837px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3635" class="wp-image-3635 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" alt="Microsoft Azure Storage Explorer Location" width="827" height="97" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png 827w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-300x35.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-768x90.png 768w" sizes="(max-width: 827px) 100vw, 827px" /></a><p id="caption-attachment-3635" class="wp-caption-text">Microsoft Azure Storage Explorer Location.</p></div></li>
<li>If you don’t have Azure Storage account then it’s easy to <a href="http://azure.microsoft.com/en-us/pricing/free-trial/" target="_blank" rel="noopener">get FREE Trial Azure Storage account</a> or use your MSDN to get credit each month which will be more than enough for real testing. If you prefer to avoid all this hassle then Microsoft provides another great way to test Azure Storage functionality is totally offline mode on your local machine. You can just <a href="http://www.microsoft.com/en-us/download/details.aspx?id=42317" target="_blank" rel="noopener">download Azure Storage Emulator</a> and start testing.</li>
<li><a href="http://msdn.microsoft.com/en-us/library/azure/hh403989.aspx" target="_blank" rel="noopener">Click here</a> to learn more about how to configure Azure Storage Emulator for Testing and Development purposes. In order to connect to Azure Storage Service from SSIS, you will need Storage AccountName and an AccessKey. Ask your SysAdmin or responsible person to provide that information to you. Here are sample Account Name and Access Key(<b>this is just example key which may differ in your case</b>)<br />
<pre class="crayon-plain-tag">Account Name: mystorageaccount 
Access Key: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==</pre>
</li>
<li>For Creating a Queue, First of all, you need to go to Microsoft Storage Explorer Window. Then you can go through like this way (Storage Accounts –&gt; (Development) –&gt; Queues. Right-click on Queues and Select Create Queue and give a name you want.
<div style="width: 379px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-storage-destination-create-new-queue-using-microsoft-storage-explorer.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-storage-destination-create-new-queue-using-microsoft-storage-explorer.png" alt="Microsoft Azure Storage Explorer - Create Queue " width="369" height="352" /></a><p class="wp-caption-text">Microsoft Azure Storage Explorer &#8211; Create Queue</p></div></li>
</ol>
<h2>Write data using ZS Azure Queue Storage Destination</h2>
<p>In this tutorial, you will learn how to write data into Azure Queue Storage. We will use <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/dummydata-source.htm" target="_blank" rel="noopener">ZS DummyData Source</a> for practice it but you can use a suitable <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/ssis-source-adapters.htm" target="_blank" rel="noopener">Source Adapter</a>. So, Let’s start, In this SSIS we will write data into Azure Queue Storage using ZS Azure Queue Storage Destination.</p>
<ol>
<li>Once you have created Azure Storage Queue and you got valid Account Name and AccessKey (for the local emulator you don’t need this) you may proceed to create new SSIS package. In BIDS/SSDT create a new SSIS package.</li>
<li>From the SSIS toolbox drag and drop <i>Data Flow Task</i> on the control flow designer surface and double click on it too.
<div id="attachment_7934" style="width: 470px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7934" class="wp-image-7934 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png" alt="Drag and Drop SSIS Data Flow Task from SSIS Toolbox" width="460" height="155" srcset="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png 460w, https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task-300x101.png 300w" sizes="(max-width: 460px) 100vw, 460px" /></a><p id="caption-attachment-7934" class="wp-caption-text">Drag and Drop SSIS Data Flow Task from SSIS Toolbox</p></div></li>
<li>Click <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/azure-storage-connection-manager.htm" target="_blank" rel="noopener">here</a> to create Azure Storage Connection.</li>
<li>From the SSIS toolbox drag and drop <i>Dummy Data Source</i> on the dataflow designer surface.
<div style="width: 492px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/dummy-data-Source/ssis-dummy-data-source-adapter-drag.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/dummy-data-Source/ssis-dummy-data-source-adapter-drag.png" alt="DummyData Source - Drag and Drop" width="482" height="120" /></a><p class="wp-caption-text">DummyData Source &#8211; Drag and Drop</p></div></li>
<li>Double click Dummy Data Source to configure it. From Template pick JsonDocuments and enter row count=100 to generate 100 JSON documents and click OK to save.
<div style="width: 500px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/amazon-sqs-destination/ssis-dummy-data-source-generate-fake-json-documents.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/amazon-sqs-destination/ssis-dummy-data-source-generate-fake-json-documents.png" alt="DummyData Source - Configure" width="490" height="537" /></a><p class="wp-caption-text">DummyData Source &#8211; Configure</p></div></li>
<li>Let&#8217;s drag and drop <i>Azure Queue Storage Destination</i> on the dataflow designer surface from the SSIS toolbox.</li>
<li>Now single click on the Dummy Data Source, once you see the blue arrow from the source connect it to Azure Queue Destination.</li>
<li>Double click Azure Queue Destination to configure it. Select the connection we have created before.
<div style="width: 705px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-select-adapter-connection.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-select-adapter-connection.png" alt="Configure Connection Manager" width="695" height="311" /></a><p class="wp-caption-text">Configure Connection Manager</p></div></li>
<li>Click on [Component Properties] tab and select the Target Queue from the dropdown list.
<div style="width: 781px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-select-queue.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-select-queue.png" alt="Configure Component Properties" width="771" height="605" /></a><p class="wp-caption-text">Configure Component Properties</p></div></li>
<li>Click on [Mappings] tab and verify mapping. Map Document column from upstream to the MessageText target column.
<div style="width: 682px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-select-mappings.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-select-mappings.png" alt="Configure Column Mappings" width="672" height="488" /></a><p class="wp-caption-text">Configure Column Mappings</p></div></li>
<li>Click OK to save settings.</li>
<li>Execute the package and verify target data by going to your Azure Queue. We use <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Azure Storage Explorer.</a>
<div style="width: 383px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-insert-messages.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination-insert-messages.png" alt="SSIS Execute Package" width="373" height="342" /></a><p class="wp-caption-text">SSIS Execute Package</p></div>
<div style="width: 810px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/check-azure-queue-message-verify-count-console.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/check-azure-queue-message-verify-count-console.png" alt="Microsoft Azure Explorer - Verify Queue Data" width="800" height="478" /></a><p class="wp-caption-text">Microsoft Azure Explorer &#8211; Verify Queue Data</p></div></li>
</ol>
<h2>Read data using ZS Azure Queue Storage Source</h2>
<ol>
<li>Here you may proceed In BIDS/SSDT to create a new SSIS package.</li>
<li>Now, Drag and Drop SSIS Data Flow Task from SSIS Toolbox.
<div style="width: 470px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/drag-and-drop-data-flow-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/drag-and-drop-data-flow-task.png" alt="SSIS Data Flow Task - Drag and Drop" width="460" height="155" /></a><p class="wp-caption-text">SSIS Data Flow Task &#8211; Drag and Drop</p></div></li>
<li>Double click on the Data Flow task to see the Data Flow designer surface.</li>
<li>From the SSIS toolbox drag and drop ZS Azure Queue Storage Source on the dataflow designer surface.
<div style="width: 485px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-azure-queue-source-drag.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-azure-queue-source-drag.png" alt="SSIS ZS Azure Queue Source - Drag and Drop" width="475" height="103" /></a><p class="wp-caption-text">SSIS ZS Azure Queue Source &#8211; Drag and Drop</p></div></li>
<li>Double click Azure Queue Storage Source to configure it.</li>
<li>Select Azure Storage Connection we have created before and select queue from the dropdown and click on preview.
<div style="width: 949px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-azure-queue-source-preview-messages.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-azure-queue-source-preview-messages.png" alt="Configure Azure Queue Source" width="939" height="688" /></a><p class="wp-caption-text">Configure Azure Queue Source</p></div></li>
<li>Click on OK button to save configure.</li>
<li>Now, you can use a suitable Destination Adapter from <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/ssis-destination-adapters.htm" target="_blank" rel="noopener">here.</a> In this case, we used Trash Destination.</li>
<li>From the SSIS toolbox drag and drop Trash Destination on the data flow designer surface.
<div style="width: 529px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ssis-trash-destination-adapter-drag.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ssis-trash-destination-adapter-drag.png" alt="SSIS ZS Trash Destination - Drag and Drop" width="519" height="121" /></a><p class="wp-caption-text">SSIS ZS Trash Destination &#8211; Drag and Drop</p></div></li>
<li>Now single click on the Azure Queue Storage Source once you see the blue arrow from the source &#8230; connect it to Trash Destination.</li>
<li>Double click on ZS Trash Destination to Configure it.
<div style="width: 622px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ui-trash-destination-settings.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ui-trash-destination-settings.png" alt="SSIS ZS Trash Destination - Configure" width="612" height="523" /></a><p class="wp-caption-text">SSIS ZS Trash Destination &#8211; Configure</p></div></li>
<li>Click on OK button to save Trash Destination configure setting UI.</li>
<li>Execute the package and verify source data in the data viewer.
<div style="width: 350px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-read-messages-from-azure-queue.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-read-messages-from-azure-queue.png" alt="SSIS ZS Azure Queue Source - Execute the Package" width="340" height="307" /></a><p class="wp-caption-text">SSIS ZS Azure Queue Source &#8211; Execute the Package</p></div></li>
<li>After messages read from Azure Queue, the same message cannot be read again until VisibilityTimeout. By default Queue, visibility timeout is used (-1 means use default) but you can override it on the source UI.</li>
</ol>
<h2>Conclusion</h2>
<p>In this blog, we learn How to Read/Write Azure Queue Storage data in SSIS. We used the Azure Queue Destination for write data and Azure Queue Source to read data. You can <a href="https://zappysys.com/products/ssis-powerpack/">download SSIS PowerPack here</a> to try many other scenarios not discussed in this blog along with 70+ other components.</p>
<h2>References</h2>
<p>Finally, you can use the following links for more information:</p>
<ul>
<li><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-source-connector/" target="_blank" rel="noopener">Azure Queue Source</a></li>
<li><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-destination-connector/" target="_blank" rel="noopener">Azure Queue Destination</a></li>
<li><a href="https://docs.microsoft.com/en-us/azure/storage/queues/storage-dotnet-how-to-use-queues" target="_blank" rel="noopener">Microsoft Azure Queues</a></li>
<li><strong>Help File:</strong> <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/ssis-azure-queue-storage-source.htm" target="_blank" rel="noopener">Azure Queue Source,</a> <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/ssis-azure-queue-storage-destination.htm" target="_blank" rel="noopener">Azure Queue Destination,</a> <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/trash-destination.htm" target="_blank" rel="noopener">Trash Destination</a></li>
</ul>
<p>&nbsp;</p>
<p>The post <a href="https://zappysys.com/blog/read-write-azure-queue-storage-data-ssis/">How to Read/Write Azure Queue Storage data in SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How to Read/Write Azure Table Storage data in SSIS</title>
		<link>https://zappysys.com/blog/read-write-azure-table-storage-data-ssis/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Fri, 02 Aug 2019 13:03:21 +0000</pubDate>
				<category><![CDATA[SSIS Azure Table Storage Destination]]></category>
		<category><![CDATA[SSIS Azure Table Storage Source]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[Destination]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[read]]></category>
		<category><![CDATA[Setup]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[ssis]]></category>
		<category><![CDATA[storage]]></category>
		<category><![CDATA[table]]></category>
		<category><![CDATA[write]]></category>
		<category><![CDATA[xml]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=7561</guid>

					<description><![CDATA[<p>Introduction In our previous blog, we saw how to read/write Azure Blob Storage Files in SSIS (CSV, JSON, XML Format files). Now in this blog, we will see how to Read/Write Azure Table Storage data in SSIS. To illustrate, we will use ZappySys SSIS PowerPack, which includes several tasks to import/export data from multiples sources to multiple destinations like [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/read-write-azure-table-storage-data-ssis/">How to Read/Write Azure Table Storage data in SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p><img loading="lazy" decoding="async" class="size-thumbnail wp-image-7562 alignleft" src="https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-source-150x150.png" alt="" width="150" height="150" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-source-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-source-300x300.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-source.png 448w" sizes="(max-width: 150px) 100vw, 150px" />In our previous blog, we saw how to read/write <a href="https://zappysys.com/blog/read-azure-blob-storage-files-ssis-csv-json-xml/" target="_blank" rel="noopener">Azure Blob Storage Files in SSIS (CSV, JSON, XML Format files).</a> Now in this blog, we will see how to Read/Write Azure Table Storage data in SSIS. To illustrate, we will use <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">ZappySys SSIS PowerPack</a>, which includes several tasks to import/export data from multiples sources to multiple destinations like flat files, Azure, AWS, databases, Office files and more. They are Coding free, drag and drop high-performance suite of <em>Custom SSIS Components</em> and <em>SSIS Tasks.</em> If you like to perform other operations on Azure Blob Storage Files (e.g. Download, Upload, Create, Delete) then <a href="https://zappysys.com/blog/category/ssis/tasks/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">check these articles</a>.</p>
<p>&nbsp;</p>
<h2>Component Mentioned in this article</h2>
<div class="su-table su-table-alternate">
<table style="height: 44px;width: 307px">
<tbody>
<tr style="height: 22px">
<td style="height: 22px;width: 1px"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source.png"><img loading="lazy" decoding="async" class="alignnone wp-image-3074" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source.png" alt="" width="40" height="40" /></a></td>
<td style="height: 22px;width: 247px"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/azure-table-storage-source.htm" target="_blank" rel="noopener">Azure Table Storage Source</a></td>
</tr>
<tr style="height: 22px">
<td style="height: 22px;width: 1px"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-adapter.png"><img loading="lazy" decoding="async" class="alignnone wp-image-3074" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-adapter.png" alt="" width="40" height="40" /></a></td>
<td style="height: 22px;width: 247px"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/azure-table-storage-destination.htm" target="_blank" rel="noopener">Azure Table Storage Destination</a></td>
</tr>
</tbody>
</table>
</div>
<h2><span id="Prerequisite"><span id="Requirements">Prerequisite</span></span></h2>
<ol>
<li>First, you will need to have SSIS installed</li>
<li>Secondly, make sure to have SSDT</li>
<li>Download and install <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">Microsoft Azure Storage Emulator</a></li>
<li>Download and install <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Microsoft Azure Storage Explorer</a></li>
<li>Finally, do not forget to install ZappySys <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a></li>
</ol>
<p><strong>NOTE:</strong> If you want to use Live account (Azure Blob Storage) then you can skip Step #3</p>
<h2><span id="What_is_Azure_Blob_Storage">What is Azure Table Storage?</span></h2>
<p>Azure Table storage stores large amounts of structured data. The service is a NoSQL datastore which accepts authenticated calls from inside and outside the Azure cloud. Azure tables are ideal for storing structured, non-relational data. Common uses of Table storage include:</p>
<div id="attachment_7567" style="width: 310px" class="wp-caption alignright"><a href="https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-intro.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7567" class="wp-image-7567 size-medium" src="https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-intro-300x158.png" alt="Microsoft Azure Table Storage Introduction" width="300" height="158" srcset="https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-intro-300x158.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/08/ssis-azure-table-storage-intro.png 468w" sizes="(max-width: 300px) 100vw, 300px" /></a><p id="caption-attachment-7567" class="wp-caption-text">Microsoft Azure Table Storage Introduction</p></div>
<ul>
<li>Storing TBs of structured data capable of serving web-scale applications</li>
<li>Storing datasets that don&#8217;t require complex joins, foreign keys, or stored procedures and can be denormalized for fast access</li>
<li>Quickly querying data using a clustered index</li>
<li>Accessing data using the OData protocol and LINQ queries with WCF Data Service .NET Libraries</li>
</ul>
<p>&nbsp;</p>
<p>You can use Table storage to store and query huge sets of structured, non-relational data, and your tables will scale as demand increases.</p>
<h2><span id="Getting_Started">Getting Started</span></h2>
<p>In order to start, we will show several examples. Zappysys includes an <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-table-storage-source/" target="_blank" rel="noopener">SSIS Azure Table Storage Source.</a> Here we are showing you is, how to Read/Write Azure Table Storage data in SSIS.</p>
<p>You can connect to your Azure Storage Account by entering your storage account credentials. Here I am showing an example of the use of the local Azure Storage Emulator.</p>
<h2><span id="Setup_Azure_Storage_client_tools">Setup Azure Storage client tools and Create Table</span></h2>
<ol>
<li>Once you have <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">downloaded and installed a storage emulator</a> You can launch Microsoft Azure Storage Emulator from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3631" style="width: 869px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3631" class="wp-image-3631 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" alt="Azure Storage Emulator Physical Location" width="859" height="94" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png 859w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-768x84.png 768w" sizes="(max-width: 859px) 100vw, 859px" /></a><p id="caption-attachment-3631" class="wp-caption-text">Azure Storage Emulator Physical Location</p></div></li>
<li>If you can see the below-attached Command Prompt screen after Emulator started. Then you can proceed to start Microsoft Azure Storage Explorer as the Azure Storage Emulator is started successfully.
<div id="attachment_3633" style="width: 710px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3633" class="wp-image-3633 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png" alt="Command Prompt Screen after Microsoft Azure Storage Emulator Started" width="700" height="237" /></a><p id="caption-attachment-3633" class="wp-caption-text">Command Prompt Screen after Microsoft Azure Storage Emulator Started</p></div></li>
<li>Now, you have to <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">download and install Microsoft Azure Storage Explorer</a> and then you can launch Microsoft Azure Storage Explorer from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3635" style="width: 837px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3635" class="wp-image-3635 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" alt="Microsoft Azure Storage Explorer Location" width="827" height="97" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png 827w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-300x35.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-768x90.png 768w" sizes="(max-width: 827px) 100vw, 827px" /></a><p id="caption-attachment-3635" class="wp-caption-text">Microsoft Azure Storage Explorer Location.</p></div></li>
<li>If you don&#8217;t have Azure Storage account then it&#8217;s easy to <a href="http://azure.microsoft.com/en-us/pricing/free-trial/" target="_blank" rel="noopener">get FREE Trial Azure Storage account</a> or use your MSDN to get credit each month which will be more than enough for real testing. If you prefer to avoid all this hassle then Microsoft provides another great way to test Azure Storage functionality is totally offline mode on your local machine. You can just <a href="http://www.microsoft.com/en-us/download/details.aspx?id=42317" target="_blank" rel="noopener">download Azure Storage Emulator</a> and start testing.</li>
<li> <a href="http://msdn.microsoft.com/en-us/library/azure/hh403989.aspx" target="_blank" rel="noopener">Click here</a> to learn more about how to configure Azure Storage Emulator for Testing and Development purposes. In order to connect to Azure Storage Service from SSIS, you will need Storage AccountName and an AccessKey. Ask your SysAdmin or responsible person to provide that information to you. Here are sample Account Name and Access Key(<b>this is just example key which may differ in your case</b>)<br />
<pre class="crayon-plain-tag">Account Name: mystorageaccount 
Access Key: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==</pre>
</li>
<li>For Creating a Tables, First of all, you need to go to Microsoft Storage Explorer Window. Then you can go through like this way (Storage Accounts –&gt; Emulator &#8211; Default Ports(Key) –&gt; Tables. Right-click on Tables and Select Create Table and put your table name you want.
<div style="width: 360px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-create-table.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-create-table.png" alt="Create Tables in Azure Table Storage Emulator" width="350" height="479" /></a><p class="wp-caption-text">Create Tables in Azure Table Storage Emulator</p></div></li>
</ol>
<h2>Write data using ZS Azure Table Storage Destination</h2>
<p>In this tutorial, you will learn how to write data into Azure Table Storage. You can use <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/dummydata-source.htm" target="_blank" rel="noopener">ZS DummyData Source</a> for practice it(In this case it&#8217;s from SQL Server Source). So, Let&#8217;s start with an example. In this SSIS we will write data into Azure Table Storage using ZS Azure Table Storage Destination.</p>
<ol>
<li>Once you have created Azure Storage Table and you got valid Account Name and AccessKey (for the local emulator you don&#8217;t need this) you may proceed to create a new SSIS package. In BIDS/SSDT create new SSIS package</li>
<li>From the SSIS toolbox drag and drop Data Flow Task on the control flow designer surface.
<div id="attachment_7934" style="width: 470px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7934" class="wp-image-7934 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png" alt="Drag and Drop SSIS Data Flow Task from SSIS Toolbox" width="460" height="155" srcset="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png 460w, https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task-300x101.png 300w" sizes="(max-width: 460px) 100vw, 460px" /></a><p id="caption-attachment-7934" class="wp-caption-text">Drag and Drop SSIS Data Flow Task from SSIS Toolbox</p></div></li>
<li>Double click on the DataFlow task to see DataFlow designer surface.</li>
<li>Here, In Visual Studio, drag and drop the OLE DB Source and Azure Table Storage Destination in the design surface and join the components with the blue arrow.
<div style="width: 567px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-adapter-drag.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-adapter-drag.png" alt="SSIS Azure Table Storage Destination - Drag and Drop" width="557" height="167" /></a><p class="wp-caption-text">SSIS Azure Table Storage Destination &#8211; Drag and Drop</p></div></li>
<li>Now, we need two connection, OLE DB Connection, and Azure Storage Connection. Click <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/azure-storage-connection-manager.htm" target="_blank" rel="noopener">here</a> to create Azure Storage Connection.</li>
</ol>
<h3>How to create OLE DB Connection</h3>
<ol>
<li>Let&#8217;s, Right-click on Connection Managers Panel to Create OLE DB Connection, so you can use Source and Context Menu will appear, Select New OLE DB Connection from the Context Menu.
<div style="width: 485px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-new-oledb-connection-step-1.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-new-oledb-connection-step-1.png" alt="OLE DB Connection - Create New Connection" width="475" height="353" /></a><p class="wp-caption-text">OLE DB Connection &#8211; Create New Connection</p></div></li>
<li>Now, click on New Button to create Connection.
<div style="width: 665px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-new-oledb-connection-step-2.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-new-oledb-connection-step-2.png" alt="OLE DB Connection - Create New Connection" width="655" height="558" /></a><p class="wp-caption-text">OLE DB Connection &#8211; Create New Connection</p></div></li>
<li>Let&#8217;s Configure Connection Manager, just Follow steps one by one as we have created.
<div style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-new-oledb-connection-step-3.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-new-oledb-connection-step-3.png" alt="OLE DB Connection - Configure Connection" width="720" height="625" /></a><p class="wp-caption-text">OLE DB Connection &#8211; Configure Connection</p></div></li>
<li>Click on the OK button to save configure Setting UI.</li>
</ol>
<h3>Write data into Azure Storage Table in SSIS</h3>
<ol>
<li>Double click on OLE DB Source for configure it.</li>
<li>Let&#8217;s Configure in Connection Manager, just follow the below image steps.
<div style="width: 828px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-oledb-source-editor-manager.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/oledb-connection-manager/ssis-oledb-source-editor-manager.png" alt="OLE DB Source - Configure" width="818" height="560" /></a><p class="wp-caption-text">OLE DB Source &#8211; Configure</p></div></li>
<li>Click OK to Save OLE DB Source Editor UI Settings.</li>
<li>Now double click Azure Table Storage Destination to configure it.</li>
<li>On [Connection Manager] tab select Azure Storage Connection manager.
<div style="width: 800px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-select-adapter-connection.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-select-adapter-connection.png" alt="ZS Azure Table Storage Destination - Connection Manager" width="790" height="287" /></a><p class="wp-caption-text">ZS Azure Table Storage Destination &#8211; Connection Manager</p></div></li>
<li>Click on [Component Properties] tab and select AccessMode=Table and Pick destination Table from the Tables dropdown list.<br />
<div class="su-note"  style="border-color:#e5de9d;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;"><div class="su-note-inner su-u-clearfix su-u-trim" style="background-color:#fff8b7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;">If you choose Reload option then target table is first truncated before inserting records so be careful with Reload option.</div></div>
<div style="width: 800px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-select-table.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-select-table.png" alt="ZS Azure Table Storage Destination - Component Properties" width="790" height="509" /></a><p class="wp-caption-text">ZS Azure Table Storage Destination &#8211; Component Properties</p></div></li>
<li>Click on [Mappings] tab and verify mapping. Drop CustomerID and RecordID mappings and reconnect as shown below. This is just to make sure PrimaryKey columns are mapped.
<div style="width: 800px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-select-mappings.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-storage-destination-select-mappings.png" alt="ZS Azure Table Storage Destination - Column Mappings" width="790" height="479" /></a><p class="wp-caption-text">ZS Azure Table Storage Destination &#8211; Column Mappings</p></div></li>
<li>Click OK to save settings.</li>
<li>Execute the package and verify the target data.
<div style="width: 359px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-write-data-sample.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-write-data-sample.png" alt="ZS Azure Table Storage Destination - Execute the Package" width="349" height="317" /></a><p class="wp-caption-text">ZS Azure Table Storage Destination &#8211; Execute the Package</p></div>
<div style="width: 892px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-console-verify-record-count.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-destination/ssis-azure-table-console-verify-record-count.png" alt="ZS Azure Table Storage Verify Customers Table Data" width="882" height="413" /></a><p class="wp-caption-text">ZS Azure Table Storage &#8211; Verify Customers Table Data</p></div></li>
</ol>
<h2>Read data using ZS Azure Table Storage Source</h2>
<p>In this tutorial, you will learn how to read data from Azure Table Storage in SSIS using the ZS Azure Table Storage Source adapter. In this SSIS we will read data with SQL Query and Table Mode. So Let&#8217;s begin it.</p>
<ol>
<li>You may proceed to create a new SSIS package. In BIDS/SSDT create a new SSIS package.</li>
<li>From the SSIS toolbox drag and drop Data Flow Task on the control flow designer surface.
<div style="width: 470px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/drag-and-drop-data-flow-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/drag-and-drop-data-flow-task.png" alt="SSIS Data Flow Task - Drag and Drop" width="460" height="155" /></a><p class="wp-caption-text">SSIS Data Flow Task &#8211; Drag and Drop</p></div></li>
<li>Double click on the DataFlow task to see DataFlow designer surface.</li>
<li>From the SSIS toolbox drag and drop Azure Table Storage Source on the data flow designer surface.
<div style="width: 538px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-drag.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-drag.png" alt="ZS Azure Table Storage Source - Drag and Drop" width="528" height="99" /></a><p class="wp-caption-text">ZS Azure Table Storage Source &#8211; Drag and Drop</p></div></li>
<li>Now, we need an Azure Storage connection. Click <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/azure-storage-connection-manager.htm" target="_blank" rel="noopener">here</a> to Create Connection.</li>
</ol>
<h3>Extract data with Query Mode</h3>
<ol>
<li>Here, we are getting data using Query Mode with Dynamic expression value.</li>
<li>Lets, create a Variable with correct DataType and Value, use the following image.
<div style="width: 442px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-create-variable.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-create-variable.png" alt="SSIS Variables - Create Variable and Store Value" width="432" height="133" /></a><p class="wp-caption-text">SSIS Variables &#8211; Create Variable and Store Value</p></div></li>
<li>Double click Azure Table Storage Source to configure it.</li>
<li>Select the connection we have created before, set AccessMode to Query. You can use the following SQL Query and select Variable. Click here for more <a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=azure-table-storage-source.htm#A_QueryLanguage" target="_blank" rel="noopener">Azure Table Storage Query Examples.</a><br />
<pre class="crayon-plain-tag">SELECT * FROM Customers
WHERE Country = '{{User::varCountry}}'</pre>
<div style="width: 850px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-query-data-preview.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-query-data-preview.png" alt="ZS Azure Table Storage Source - Configure Query Mode" width="840" height="673" /></a><p class="wp-caption-text">ZS Azure Table Storage Source &#8211; Configure Query Mode</p></div></li>
<li>Click on the Preview button to see Data Preview and OK button to save configure setting UI.</li>
<li>From the SSIS toolbox drag and drop Trash Destination on the data flow designer surface.
<div style="width: 529px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ssis-trash-destination-adapter-drag.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ssis-trash-destination-adapter-drag.png" alt="ZS Trash Destination - Drag and Drop" width="519" height="121" /></a><p class="wp-caption-text">ZS Trash Destination &#8211; Drag and Drop</p></div></li>
<li>Now single click on the Azure Table Storage Source, once you see the blue arrow from the source &#8230; connect it to Trash Destination.</li>
<li>Double click on ZS Trash Destination to Configure it.
<div style="width: 622px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ui-trash-destination-settings.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ui-trash-destination-settings.png" alt="ZS Trash Destination - Configure" width="612" height="523" /></a><p class="wp-caption-text">ZS Trash Destination &#8211; Configure</p></div></li>
<li>Click on the OK button to save Trash Destination configure setting UI.</li>
<li>Execute the package and verify source data in the data viewer.
<div style="width: 282px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-extract-data-query-mode.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-extract-data-query-mode.png" alt="SSIS ZS Azure Table Storage Source - Execute the Package" width="272" height="314" /></a><p class="wp-caption-text">SSIS ZS Azure Table Storage Source &#8211; Execute the Package</p></div></li>
</ol>
<h3>Extract data with Table Mode</h3>
<ol>
<li>So, Double click Azure Table Storage Source to configure it.</li>
<li>In the Azure Table Storage Source, Select the connection we have created, set AccessMode to Table and Select Table from the Tables dropdown.
<div style="width: 646px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-table-data-preview.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-table-data-preview.png" alt="SSIS ZS Azure Table Source - Configure Table Mode" width="636" height="473" /></a><p class="wp-caption-text">SSIS ZS Azure Table Source &#8211; Configure Table Mode</p></div></li>
<li>Click on the Preview button to see Data Preview and OK button to save configure setting UI.</li>
<li>From the SSIS toolbox drag and drop Trash Destination on the data flow designer surface.
<div style="width: 529px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ssis-trash-destination-adapter-drag.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ssis-trash-destination-adapter-drag.png" alt="ZS Trash Destination - Drag and Drop" width="519" height="121" /></a><p class="wp-caption-text">ZS Trash Destination &#8211; Drag and Drop</p></div></li>
<li>Now single click on the Azure Table Storage Source, once you see the blue arrow from the source &#8230; connect it to Trash Destination.</li>
<li>Double click on ZS Trash Destination to Configure it.
<div style="width: 622px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ui-trash-destination-settings.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/trash-destination/ui-trash-destination-settings.png" alt="ZS Trash Destination - Configure" width="612" height="523" /></a><p class="wp-caption-text">ZS Trash Destination &#8211; Configure</p></div></li>
<li>Click on the OK button to save Trash Destination configure setting UI.</li>
<li>In the last, Execute the package and verify source data in the data viewer.
<div style="width: 283px" class="wp-caption aligncenter"><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-extract-data-sample.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-table-storage-source/ssis-azure-table-storage-source-extract-data-sample.png" alt="ZS Azure Table Storage Source - Execute the Package" width="273" height="310" /></a><p class="wp-caption-text">ZS Azure Table Storage Source &#8211; Execute the Package</p></div></li>
</ol>
<h2>Conclusion</h2>
<p>After all, In this blog, we learned how to write data in Azure Table Storage in SSIS. We used the Azure Table Storage Destination for write and Azure Table Storage Source to read data from Microsoft Azure Table Storage using Query and Table mode. You can <a href="https://zappysys.com/products/ssis-powerpack/">download SSIS PowerPack here</a> to try many other scenarios not discussed in this blog along with 70+ other components.</p>
<h2><span id="References">References</span></h2>
<p>There are a few details you should use the following links for more information:</p>
<ul>
<li><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-table-storage-destination/" target="_blank" rel="noopener">Azure Table Storage Destination</a></li>
<li><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-table-storage-source/" target="_blank" rel="noopener">Azure Table Storage Source</a></li>
<li><a href="https://zappysys.com/blog/category/ssis/components/ssis-trash-destination/" target="_blank" rel="noopener">ZS Trash Destination</a></li>
<li><a href="https://docs.microsoft.com/en-us/azure/cosmos-db/table-storage-overview" target="_blank" rel="noopener">Microsoft Azure Table Storage</a></li>
<li><strong>Help File:</strong>
<ul>
<li><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/azure-table-storage-destination.htm" target="_blank" rel="noopener">Azure Table Storage Destination</a></li>
<li><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/azure-table-storage-source.htm" target="_blank" rel="noopener">Azure Table Storage Source</a></li>
<li><a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/trash-destination.htm" target="_blank" rel="noopener">ZS Trash Destination</a></li>
</ul>
</li>
</ul>
<p>The post <a href="https://zappysys.com/blog/read-write-azure-table-storage-data-ssis/">How to Read/Write Azure Table Storage data in SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Read and Write in Azure Queue Storage in SSIS</title>
		<link>https://zappysys.com/blog/read-write-azure-queue-storage-ssis/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Sat, 13 Jul 2019 08:01:01 +0000</pubDate>
				<category><![CDATA[SSIS Azure Blob Connection]]></category>
		<category><![CDATA[SSIS Azure Queue Storage Destination]]></category>
		<category><![CDATA[SSIS Azure Queue Storage Source]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azure queue]]></category>
		<category><![CDATA[nagle]]></category>
		<category><![CDATA[queue]]></category>
		<category><![CDATA[ssis]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=7456</guid>

					<description><![CDATA[<p>Introduction In our previous blog we saw How to load data into Azure Blob Storage. Now in this blog, we will How to Read and Write in Azure Queue Storage in SSIS. To illustrate, we will use ZappySys SSIS PowerPack, Which includes several tasks to import/export data from multiples sources to multiple destinations like flat files, Azure, [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/read-write-azure-queue-storage-ssis/">Read and Write in Azure Queue Storage in SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2><span id="Introduction">Introduction</span></h2>
<p><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="aligncenter wp-image-6532 size-thumbnail" style="border: 0px;float: left;margin: 0px 1.5em 1.5em 0px;max-width: 100%;height: auto" src="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png" alt="Azure BLOB Storage" width="150" height="150" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png 225w" sizes="(max-width: 150px) 100vw, 150px" /></a></p>
<p>In our previous blog we saw <a href="https://zappysys.com/blog/ssis-data-load-sql-server-azure-blob-split-files-gzip/" target="_blank" rel="noopener">How to load data into Azure Blob Storage</a>. Now in this blog, we will <strong>How to Read and Write in Azure Queue Storage in SSIS</strong>. To illustrate, we will use <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">ZappySys SSIS PowerPack</a>, Which includes several tasks to import/export data from multiples sources to multiple destinations like flat files, Azure, AWS, databases, Office files and more. They are Coding free, drag and drop high-performance suite of <em>Custom SSIS Components</em> and <em>SSIS Tasks.</em> If you like perform other operations on Azure Blob Storage Files (e.g. Download, Upload, Create, Delete) then <a href="https://zappysys.com/blog/category/ssis/tasks/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">check these articles</a>.</p>
<p>In a nutshell, In this post will focus on how to Read and Write in Azure Storage Queue in SSIS using following tasks/sources.</p>
<p>&nbsp;</p>
<p><strong>Components Mentioned in this article</strong><br />
<div class="su-table su-table-alternate">
<table style="width: 407px">
<tbody>
<tr>
<td style="width: 35px"><img loading="lazy" decoding="async" src="https://i1.wp.com/zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-source/ssis-azure-queue-source.png?w=100&amp;ssl=1" alt="SSIS Azure Blob CSV File Source" width="32" height="32" /></td>
<td style="width: 356px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-source-connector/" target="_blank" rel="noopener">SSIS Azure Queue Storage Source</a></td>
</tr>
<tr>
<td style="width: 35px"><img loading="lazy" decoding="async" src="https://i0.wp.com/zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-queue-storage-destination/ssis-azure-queue-destination.png?w=100&amp;ssl=1" alt="SSIS Azure Blob CSV File Destination" width="32" height="32" /></td>
<td style="width: 356px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-destination-connector/" target="_blank" rel="noopener">SSIS Azure Queue Storage Destination</a></td>
</tr>
</tbody>
</table>
</div>
<h2><span id="Requirements">Prerequisite<br />
</span></h2>
<ol>
<li>First, you will need to have SSIS installed</li>
<li>Secondly, make sure to have SSDT</li>
<li>Download and install <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">Microsoft Azure Storage Emulator</a></li>
<li>Download and install <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Microsoft Azure Storage Explorer</a></li>
<li>Finally, do not forget to install ZappySys <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a></li>
</ol>
<p><strong>NOTE:</strong> If you want to use Live account (Azure Blob Storage) then you can skip Step #3</p>
<h2>What is Azure Blob Storage</h2>
<p>Azure Blob storage is Microsoft&#8217;s object storage solution for the cloud. you can store large amounts of unstructured data, such as text or binary data. Blob storage discloses three resources:</p>
<ul>
<li>Storage account (You can access data objects in Azure Storage through a storage account. For more information, <a href="https://docs.microsoft.com/en-us/azure/storage/common/storage-create-storage-account" target="_blank" rel="noopener">click here</a>.)</li>
<li>The containers in the account(constructs a set of blobs, it is similar to a folder in a file system.<br />
All blobs lie within a container, <strong>Note:</strong> Container name must be lowercase)</li>
<li>The blobs in a container. (Azure Storage offers three types of blobs: block blobs, append blobs, and <a href="https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-pageblob-overview" target="_blank" rel="noopener">page blobs</a>)<br />
See the below-attached diagram. It shows the relationship between these resources.<br />
<a href="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="alignleft wp-image-3569" src="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1-300x152.png" alt="" width="258" height="131" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1-300x152.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/blob1.png 329w" sizes="(max-width: 258px) 100vw, 258px" /></a>You can also use Azure Storage Explorer on your Local machine. Azure Storage Explorer is a standalone app that enables you to easily work with Azure Storage data on Windows, macOS, and Linux. You can use Blob storage to expose data publicly to the world or to store application data privately. <a href="https://docs.microsoft.com/en-us/azure/vs-azure-tools-storage-manage-with-storage-explorer#connect-to-a-storage-account-or-service" target="_blank" rel="noopener">Connect to an Azure storage account or service</a></li>
</ul>
<h2></h2>
<p>&nbsp;</p>
<h2>What is Azure Queue Storage?</h2>
<p>Azure Queue storage is a service for storing large numbers of messages. You access messages from anywhere in the world via authenticated calls using HTTP or HTTPS. A queue message can be up to 64 KB in size. A queue may contain millions of messages, up to the total capacity limit of a storage account.</p>
<h3 id="common-uses">Common uses</h3>
<p>Common uses of Queue storage include:</p>
<ul>
<li>Creating a backlog of work to process asynchronously</li>
<li>Passing messages from an Azure web role to an Azure worker role</li>
</ul>
<h2>Getting Started</h2>
<p>In order to start, we will show several examples. ZappySys includes an <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-source-connector/" target="_blank" rel="noopener">SSIS Azure Queue Storage Source</a> that will help you in reading messages from Azure Queue Storage. And <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-destination-connector/" target="_blank" rel="noopener">SSIS Azure Queue Storage Destination</a> that will help you in insert and delete messages from Azure Queue Storage. Here we are showing you is, How to Read and Write in Azure Storage Queue.</p>
<p>You can connect to your Azure Storage Account by entering your storage account credentials. Here I am showing an example of the use of local Azure Storage Emulator.</p>
<h2>Setup Azure Storage client tools</h2>
<ol>
<li>Once you have <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">downloaded and installed storage emulator</a> You can launch Microsoft Azure Storage Emulator from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3631" style="width: 869px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3631" class="wp-image-3631 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" alt="Microsoft Azure Storage Emulator Physical Location" width="859" height="94" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png 859w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-768x84.png 768w" sizes="(max-width: 859px) 100vw, 859px" /></a><p id="caption-attachment-3631" class="wp-caption-text">Microsoft Azure Storage Emulator Physical Location</p></div></li>
<li>If You can see the below-attached Command Prompt screen after Emulator started. Then you can proceed to start Microsoft Azure Storage Explorer as the Azure Storage Emulator is started successfully.
<div id="attachment_3633" style="width: 710px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3633" class="wp-image-3633 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png" alt="Command Prompt Screen after Microsoft Azure Storage Emulator Started" width="700" height="237" /></a><p id="caption-attachment-3633" class="wp-caption-text">Command Prompt Screen after Microsoft Azure Storage Emulator Started</p></div></li>
<li>Now, You have to <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">download and install Microsoft Azure Storage Explorer</a> and then You can launch Microsoft Azure Storage Explorer from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3635" style="width: 837px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3635" class="wp-image-3635 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" alt="Microsoft Azure Storage Explorer Physical Location" width="827" height="97" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png 827w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-300x35.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-768x90.png 768w" sizes="(max-width: 827px) 100vw, 827px" /></a><p id="caption-attachment-3635" class="wp-caption-text">Microsoft Azure Storage Explorer Physical Location</p></div></li>
</ol>
<h2>Create an Azure Blob Storage Queue</h2>
<p>For Creating a Blob Queue, First of all, you need to go to Microsoft Storage Explorer Window. Then you can go through like this way (Storage Accounts &#8211;&gt; (Development) &#8211;&gt; Queues).</p>
<div id="attachment_7459" style="width: 413px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7459" class="wp-image-7459 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue.png" alt="Microsoft Azure Storage Explorer : Create Blob Queue" width="403" height="583" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue.png 403w, https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue-207x300.png 207w" sizes="(max-width: 403px) 100vw, 403px" /></a><p id="caption-attachment-7459" class="wp-caption-text">Microsoft Azure Storage Explorer : Create Blob Queue</p></div>
<p>And enter the appropriate name to that queue as Queue names can contain only lowercase letters, numbers, and hyphens, and must begin and end with a letter or a number. The name can&#8217;t contain two consecutive hyphens..</p>
<div id="attachment_7460" style="width: 506px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue-name.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7460" class="wp-image-7460 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue-name.png" alt="Microsoft Azure Storage Explorer : Create Blob Queue" width="496" height="722" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue-name.png 496w, https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-create-blob-queue-name-206x300.png 206w" sizes="(max-width: 496px) 100vw, 496px" /></a><p id="caption-attachment-7460" class="wp-caption-text">Microsoft Azure Storage Explorer : Create Blob Queue</p></div>
<h2>Video Tutorial – SSIS Azure Queue Storage &#8211; Bulk Read, Write, Update, Delete Queue Messages</h2>
[youtube https://www.youtube.com/watch?v=3ZQcNiG_jeI]
<h2>Read Azure Queue Messages in SSIS</h2>
<p>Let’s start with an example. We use SSIS Azure Queue Storage Source to read Azure Queue Messages.</p>
<ol>
<li>First of all, Drag and drop Data Flow Task from SSIS Toolbox and double click it to edit.
<div id="attachment_7934" style="width: 470px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7934" class="size-full wp-image-7934" src="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png" alt="Drag and Drop SSIS Data Flow Task from SSIS Toolbox" width="460" height="155" srcset="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png 460w, https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task-300x101.png 300w" sizes="(max-width: 460px) 100vw, 460px" /></a><p id="caption-attachment-7934" class="wp-caption-text">Drag and Drop SSIS Data Flow Task from SSIS Toolbox</p></div></li>
<li>Furthermore, Drag and Drop ZS Azure Queue Source from the SSIS Toolbox.
<div id="attachment_7465" style="width: 673px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-source.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7465" class="wp-image-7465 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-source.png" alt="Drag and Drop ZS Azure Queue Source" width="663" height="629" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-source.png 663w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-source-300x285.png 300w" sizes="(max-width: 663px) 100vw, 663px" /></a><p id="caption-attachment-7465" class="wp-caption-text">Drag and Drop ZS Azure Queue Source</p></div></li>
<li>Now, double click on that Component to Edit the Configurations. Create New Connection and test it.
<div id="attachment_7466" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-connection.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7466" class="wp-image-7466 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-connection-768x536.png" alt="Azure Queue Source Connection" width="720" height="503" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-connection-768x536.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-connection-300x209.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-connection.png 969w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7466" class="wp-caption-text">Azure Queue Source Connection using Microsoft Azure Storage emulator</p></div></li>
<li>Now select the desire Queue from where you wants to read the messages and click on preview.
<div id="attachment_7467" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-preview.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7467" class="wp-image-7467 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-preview-768x603.png" alt="Preview Azure Queue Source Messages" width="720" height="565" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-preview-768x603.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-preview-300x235.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-preview.png 794w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7467" class="wp-caption-text">Preview Azure Queue Source Messages</p></div></li>
<li>That&#8217;s it now we are ready to load this queue messages to another Azure Storage Queue</li>
</ol>
<h2>Write Azure Queue Messages in SSIS</h2>
<p>Let’s start with an example. We use SSIS Azure Queue Storage Destination to insert Azure Queue Messages.</p>
<ol>
<li>First, Drag and Drop ZS Azure Queue Destination from the SSIS Toolbox.
<div id="attachment_7468" style="width: 667px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-destination.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7468" class="wp-image-7468 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-destination.png" alt="Drag and Drop ZS Azure Queue Destination" width="657" height="612" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-destination.png 657w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-drag-drop-azure-queue-destination-300x279.png 300w" sizes="(max-width: 657px) 100vw, 657px" /></a><p id="caption-attachment-7468" class="wp-caption-text">Drag and Drop ZS Azure Queue Destination</p></div></li>
<li>Double click on it to Edit the Configurations. And select the desire Azure Storage Connection.
<div id="attachment_7470" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-connection.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7470" class="wp-image-7470 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-connection-768x699.png" alt="Azure Queue Destination : Select Connection" width="720" height="655" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-connection-768x699.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-connection-300x273.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-connection.png 785w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7470" class="wp-caption-text">Azure Queue Destination : Select Connection</p></div></li>
<li>Go to Component Properties and select the operation as insert and desire queue from the drop down where you wants to insert messages.
<div id="attachment_7472" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-select-queue.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7472" class="wp-image-7472 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-select-queue-768x699.png" alt="Azure Queue Destination : Select Queue to Insert Messages" width="720" height="655" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-select-queue-768x699.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-select-queue-300x273.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-select-queue.png 785w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7472" class="wp-caption-text">Azure Queue Destination : Select Queue to Insert Messages</p></div></li>
<li>Now on Column Mapping tab map the desire columns and click on OK button.
<div id="attachment_7473" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-column-mappings.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7473" class="wp-image-7473 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-column-mappings-768x699.png" alt="Azure Queue Destination : Column Mapping" width="720" height="655" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-column-mappings-768x699.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-column-mappings-300x273.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-destination-column-mappings.png 785w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7473" class="wp-caption-text">Azure Queue Destination : Column Mapping</p></div></li>
<li>That&#8217;s it now execute the package and it will read the Azure Queue messages and insert the messages to that selected queue.
<div id="attachment_7474" style="width: 366px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-destination-execution.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7474" class="wp-image-7474 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-destination-execution.png" alt="Azure Queue Source and Destination Execution" width="356" height="313" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-destination-execution.png 356w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-queue-source-destination-execution-300x264.png 300w" sizes="(max-width: 356px) 100vw, 356px" /></a><p id="caption-attachment-7474" class="wp-caption-text">Azure Queue Source and Destination Execution</p></div></li>
<li>Furthermore, go to MS Azure Storage Exporter and open/refresh that queue and you will find that 15 messages there.
<div id="attachment_7475" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-open-queue.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7475" class="wp-image-7475 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-open-queue-768x599.png" alt="Microsoft Azure Storage : Queues" width="720" height="562" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-open-queue-768x599.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-open-queue-300x234.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/microsoft-azure-storage-explorer-open-queue.png 979w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7475" class="wp-caption-text">Microsoft Azure Storage : Queues</p></div></li>
</ol>
<h2>Performance Tips</h2>
<h3>Disable Nagle in SSIS</h3>
<p>Nagle&#8217;s algorithm is widely implemented across TCP/IP networks as a means to improve network performance. However, it is not optimal in all circumstances (such as highly interactive environments). For Azure Storage, Nagle&#8217;s algorithm has a negative impact on the performance of requests to the table and queue services, and you should disable it if possible.</p>
<p>Please refer to this link for more information: <a href="https://blogs.msdn.microsoft.com/windowsazurestorage/2010/06/25/nagles-algorithm-is-not-friendly-towards-small-requests/" target="_blank" rel="noopener">Click Here</a></p>
<p>To disable Nagle algorithm in SSIS we need to use Script Task at very First step of the Package.</p>
<ol>
<li>In the Package File at the very first step add the Scrip Task and click on Edit Script.
<div id="attachment_7483" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-add-edit-script-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7483" class="wp-image-7483 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-add-edit-script-task-768x504.png" alt="Edit Script Task" width="720" height="473" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-add-edit-script-task-768x504.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-add-edit-script-task-300x197.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-add-edit-script-task-1024x672.png 1024w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-add-edit-script-task.png 1196w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7483" class="wp-caption-text">Edit Script Task</p></div></li>
<li>So that it opens ScriptMain.cs Script class in another visual studio instance. Now add below Line in the Main() function and save it.<br />
<pre class="crayon-plain-tag">System.Net.ServicePointManager.UseNagleAlgorithm = false;</pre>
<div id="attachment_7484" style="width: 711px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-script-task-disable-nagle.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7484" class="wp-image-7484 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-script-task-disable-nagle.png" alt="Script Task : Disable Nagle" width="701" height="924" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-script-task-disable-nagle.png 701w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-script-task-disable-nagle-228x300.png 228w" sizes="(max-width: 701px) 100vw, 701px" /></a><p id="caption-attachment-7484" class="wp-caption-text">Script Task : Disable Nagle Algorithm</p></div></li>
<li>Now go to Script Task and click on OK , so that it&#8217;s save the script and close the class window.
<div id="attachment_7485" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-save-close-script-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7485" class="wp-image-7485 size-medium_large" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-save-close-script-task-768x573.png" alt="Save and close Script Task" width="720" height="537" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-save-close-script-task-768x573.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-save-close-script-task-300x224.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-save-close-script-task.png 915w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-7485" class="wp-caption-text">Save and close Script Task</p></div></li>
<li>That&#8217;s it we have disabled the Nagle Algorithm now you can go to next steps. In upper case we need to add data flow task and follow the steps from the 2# step.
<div id="attachment_7486" style="width: 301px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-script-task-with-data-flow-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7486" class="wp-image-7486 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-script-task-with-data-flow-task.png" alt="Add Data Flow Task" width="291" height="234" /></a><p id="caption-attachment-7486" class="wp-caption-text">Add Data Flow Task</p></div></li>
</ol>
<h3>Increase Max Parallel Threads size</h3>
<p>We can increase the thread size to improve performance further more, in the azure connection manager we can increase Max Parallel Threads size like 20 or more.</p>
<div id="attachment_7487" style="width: 557px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-storage-connection-max-thread.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7487" class="wp-image-7487 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-storage-connection-max-thread.png" alt="Azure Storage Connection : Max Parallel Threads" width="547" height="479" srcset="https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-storage-connection-max-thread.png 547w, https://zappysys.com/blog/wp-content/uploads/2019/07/ssis-azure-storage-connection-max-thread-300x263.png 300w" sizes="(max-width: 547px) 100vw, 547px" /></a><p id="caption-attachment-7487" class="wp-caption-text">Azure Storage Connection : Max Parallel Threads</p></div>
<h2><span id="Conclusion">Conclusion</span></h2>
<p>Above all, in this blog, we learned how to Read and Write in Azure Storage Queues. We used <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-source-connector/" target="_blank" rel="noopener">Azure Queue Storage </a>to read messages from Azure Queue Storage. And <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-queue-storage-destination-connector/" target="_blank" rel="noopener">Azure Queue Storage Destination</a> to insert messages from Azure Queue Storage. You can <a href="https://zappysys.com/products/ssis-powerpack/">download SSIS PowerPack here</a> to try many other scenarios not discussed in this blog along with 70+ other components.</p>
<h2><span id="References">References</span></h2>
<p>Finally, you can use the following links for more information:</p>
<ul>
<li><a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=ssis-azure-queue-storage-source.htm" target="_blank" rel="noopener">Help file : Azure Queue Source</a></li>
<li><a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=ssis-azure-queue-storage-destination.htm" target="_blank" rel="noopener">Help file : Azure Queue Destination</a></li>
</ul>
<p>The post <a href="https://zappysys.com/blog/read-write-azure-queue-storage-ssis/">Read and Write in Azure Queue Storage in SSIS</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SSIS Azure Blob Storage Task Examples (Download, Upload, Delete files / folders)</title>
		<link>https://zappysys.com/blog/ssis-azure-blob-storage-task-examples-download-upload-move-delete-files-folders/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Sat, 30 Mar 2019 09:48:44 +0000</pubDate>
				<category><![CDATA[SSIS Azure Blob Connection]]></category>
		<category><![CDATA[SSIS Azure Blob Storage Task]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[blob]]></category>
		<category><![CDATA[ssis]]></category>
		<category><![CDATA[storage]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=6672</guid>

					<description><![CDATA[<p>Introduction In this article, we will show SSIS Azure Blob Storage task examples. Uploading files using Azure Blob Storage Task or downloading files are common requirements in SSIS. In order to work with Azure Blob Storage, Microsoft SSIS includes the Azure Blob Storage Task that allows to upload files to Azure Blob Storage, download files, creating [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/ssis-azure-blob-storage-task-examples-download-upload-move-delete-files-folders/">SSIS Azure Blob Storage Task Examples (Download, Upload, Delete files / folders)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2><span id="Introduction_8211_Using_SSIS_SFTP_task_FTP_SFTP_FTPS">Introduction</span></h2>
<p><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png"><img loading="lazy" decoding="async" class="alignleft wp-image-6532 size-thumbnail" src="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png" alt="Azure BLOB Storage" width="150" height="150" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png 225w" sizes="(max-width: 150px) 100vw, 150px" /></a>In this article, we will show <strong>SSIS Azure Blob Storage task examples</strong>. Uploading files using Azure Blob Storage Task or downloading files are common requirements in SSIS. In order to work with Azure Blob Storage, Microsoft SSIS includes the Azure Blob Storage Task that allows to upload files to Azure Blob Storage, download files, creating local and remote directories an more. In this article, we will show how to use the <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">SSIS Azure Blob Storage task</a> included in ZappySys <a href="https://zappysys.com/products/ssis-powerpack/">SSIS PowerPack</a>.</p>
<p>Azure Blob Storage Task can be used to perform various operations with Azure Storage objects (blobs and containers) (e.g. Download, Upload, Copy, Move, Rename, Delete, etc). You can also get single property of any Azure blob or get a list of blobs as ADO.net Table and which can be easily looped through using ForEachLoop Task. Most of the operations in this task support recursive search using wild card pattern (e.g. Myfile*.txt).</p>
<h2><span id="Prerequisite"><span id="Requirements">Prerequisite<br />
</span></span></h2>
<ol>
<li>First, you will need to have SSIS installed</li>
<li>Secondly, make sure to have SSDT</li>
<li>Download and install <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">Microsoft Azure Storage Emulator</a></li>
<li>Download and install <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Microsoft Azure Storage Explorer</a></li>
<li>Finally, do not forget to install ZappySys <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a></li>
</ol>
<p><strong>NOTE:</strong> If you want to use Live account (Azure Blob Storage) then you can skip Step #3</p>
<h2><span id="What_is_Azure_Blob_Storage">What is Azure Blob Storage</span></h2>
<p>Azure Blob storage is Microsoft’s object storage solution for the cloud. you can store large amounts of unstructured data, such as text or binary data. Blob storage discloses three resources:</p>
<ul>
<li>Storage account (You can access data objects in Azure Storage through a storage account.<br />
For more information, <a href="https://docs.microsoft.com/en-us/azure/storage/common/storage-create-storage-account" target="_blank" rel="noopener">click here</a>.)</li>
<li>the containers in the account(constructs a set of blobs, it is similar to a folder in a file system.<br />
All blobs lie within a container, <strong>Note:</strong> Container name must be lowercase)</li>
<li>the blobs in a container. (Azure Storage offers three types of blobs: block blobs, append blobs, and <a href="https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-pageblob-overview" target="_blank" rel="noopener">page blobs</a>)<br />
See the below-attached diagram. It shows the relationship between these resources.<br />
<a href="https://i2.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/blob1.png?ssl=1"><img loading="lazy" decoding="async" class=" wp-image-3569 alignleft" src="https://i2.wp.com/zappysys.com/blog/wp-content/uploads/2018/04/blob1.png?resize=258%2C131&amp;ssl=1" alt="" width="258" height="131" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1.png 329w, https://zappysys.com/blog/wp-content/uploads/2018/04/blob1-300x152.png 300w" sizes="(max-width: 258px) 100vw, 258px" /></a>     You can also use Azure Storage Explorer on your Local machine. Azure Storage Explorer is a standalone app that enables you to easily work with Azure Storage data on Windows, macOS, and Linux. You can use Blob storage to expose data publicly to the world or to store application data privately. <a href="https://docs.microsoft.com/en-us/azure/vs-azure-tools-storage-manage-with-storage-explorer#connect-to-a-storage-account-or-service" target="_blank" rel="noopener">Connect to an Azure storage account or service</a></li>
</ul>
<h2></h2>
<p>&nbsp;</p>
<h2>Getting Started</h2>
<p>In order to start, we will show several examples. ZappySys includes an <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">SSIS Azure Blob Storage Task</a> that will allow you to access files / folders from Azure Blob to the Local machine, Upload files(s) to Azure Blob Storage. It will also support Delete, Rename, List, Get Property, Copy, Move, Create, Set Permission … and many more operations. Here we are showing you is, How to upload, download, move and delete files / folders from Azure Blob Storage.</p>
<p>You can connect to your Azure Storage Account by entering your storage account credentials. Here I am showing an example of the use of local Azure Storage Emulator.</p>
<h2>Setup Azure Storage client tools</h2>
<ol>
<li>Once you have <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">downloaded and installed storage emulator</a> You can launch Microsoft Azure Storage Emulator from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3631" style="width: 869px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3631" class="wp-image-3631 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" alt="Microsoft Azure Storage Emulator Physical Location" width="859" height="94" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png 859w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-768x84.png 768w" sizes="(max-width: 859px) 100vw, 859px" /></a><p id="caption-attachment-3631" class="wp-caption-text">Microsoft Azure Storage Emulator Physical Location</p></div></li>
<li>If You can see the below-attached Command Prompt screen after Emulator started. Then you can proceed to start Microsoft Azure Storage Explorer as the Azure Storage Emulator is started successfully.
<div id="attachment_3633" style="width: 710px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3633" class="wp-image-3633 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png" alt="Command Prompt Screen after Microsoft Azure Storage Emulator Started" width="700" height="237" /></a><p id="caption-attachment-3633" class="wp-caption-text">Command Prompt Screen after Microsoft Azure Storage Emulator Started</p></div></li>
<li>Now, You have to <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">download and install Microsoft Azure Storage Explorer</a> and then You can launch Microsoft Azure Storage Explorer from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3635" style="width: 837px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3635" class="wp-image-3635 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" alt="Microsoft Azure Storage Explorer Physical Location" width="827" height="97" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png 827w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-300x35.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-768x90.png 768w" sizes="(max-width: 827px) 100vw, 827px" /></a><p id="caption-attachment-3635" class="wp-caption-text">Microsoft Azure Storage Explorer Physical Location</p></div></li>
</ol>
<h2>Create an Azure Blob Storage Container</h2>
<p>For Creating a Blob Container, First of all, you need to go to Microsoft Storage Explorer Window. Then you can go through like this way (Storage Accounts &#8211;&gt; (Development) &#8211;&gt; Blob Containers).</p>
<div id="attachment_3637" style="width: 556px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3637" class="wp-image-3637 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png" alt="Microsoft Azure Storage Explorer: Create Blob Container" width="546" height="584" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png 546w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747-280x300.png 280w" sizes="(max-width: 546px) 100vw, 546px" /></a><p id="caption-attachment-3637" class="wp-caption-text">Microsoft Azure Storage Explorer: Create a Blob Container</p></div>
<p>you can also create a Virtual Directory under it. A Virtual Directory does not actually exist in Azure until you paste, drag or upload blobs into it.</p>
<div id="attachment_3638" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3638" class="wp-image-3638 size-large" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-1024x749.png" alt="Creating the new Virtual Directory under Blob Container" width="720" height="527" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-1024x749.png 1024w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-300x220.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-768x562.png 768w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container.png 1163w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-3638" class="wp-caption-text">Creating the new Virtual Directory under Blob Container</p></div>
<h2>SSIS Azure Blob Storage Task Examples</h2>
<p>Let´s start with an example. In this SSIS Azure Blob Storage Task File task example, we will upload, download, move and delete files / folders from Azure Blob Storage.</p>
<ol>
<li style="list-style-type: none">
<ol>
<li>First of All, Drag and Drop Azure Blob Storage Task from SSIS Toolbox and double click it to edit
<div id="attachment_3639" style="width: 613px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3639" class="wp-image-3639 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task.png" alt="Drag and Drop Azure Blob Storage Task" width="603" height="271" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task.png 603w, https://zappysys.com/blog/wp-content/uploads/2018/04/zs-azure-blob-storage-task-300x135.png 300w" sizes="(max-width: 603px) 100vw, 603px" /></a><p id="caption-attachment-3639" class="wp-caption-text">Drag and Drop Azure Blob Storage Task</p></div></li>
<li>The following options are available in Azure Blob Storage Task:
<div id="attachment_6677" style="width: 680px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6677" class="wp-image-6677 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options.png" alt="Option to upload, download files in SSIS" width="670" height="616" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options.png 670w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-storage-task-options-300x276.png 300w" sizes="(max-width: 670px) 100vw, 670px" /></a><p id="caption-attachment-6677" class="wp-caption-text">Options to upload, download files in SSIS</p></div></li>
<li>You can also overwrite files and folder, skip all, overwrite if source is older, overwrite if the file size is different, rename files and more:
<div id="attachment_6678" style="width: 692px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6678" class="wp-image-6678 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task.png" alt="Overwrite files in SSIS" width="682" height="492" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task.png 682w, https://zappysys.com/blog/wp-content/uploads/2019/03/overwrite-action-ssis-za-am-task-300x216.png 300w" sizes="(max-width: 682px) 100vw, 682px" /></a><p id="caption-attachment-6678" class="wp-caption-text">Overwrite files in SSIS</p></div></li>
<li>Let&#8217;s select the <strong>Download Azure file(s) to local directory</strong>. Now select/add The Source path, Check Recursive Scan to get all the sub files and sub folders and it&#8217;s files and add Target Path, This option will download files. In Path AccessMode we can use Direct to write the path directly or to use an SSIS variable.
<div id="attachment_6735" style="width: 595px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6735" class="wp-image-6735 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files.png" alt="ssis-az-blob-aws-s3-download-files" width="585" height="522" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files.png 585w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-download-files-300x268.png 300w" sizes="(max-width: 585px) 100vw, 585px" /></a><p id="caption-attachment-6735" class="wp-caption-text">SSIS Azure Blob Storage Task – Download files from Azure Blob Storage</p></div></li>
<li>That&#8217;s it now execute the package and it will download all the files and sub folders from the Azure Blob Storage Task to Local File Machine.</li>
</ol>
</li>
</ol>
<ol>
<li>Now Let&#8217;s configure the task to upload the local directory files and folder to Azure Blob Storage like below and execute the package. And also in this example i created the variable and stored target folder path in it and used that variable Target Path Variable.
<div id="attachment_6759" style="width: 595px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-upload-files.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6759" class="wp-image-6759 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-upload-files.png" alt="SSIS Azure Blob Storage Task – Upload files from Azure Blob Storage" width="585" height="523" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-upload-files.png 585w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-upload-files-300x268.png 300w" sizes="(max-width: 585px) 100vw, 585px" /></a><p id="caption-attachment-6759" class="wp-caption-text">SSIS Azure Blob Storage Task – Upload files from Azure Blob Storage</p></div></li>
<li>Let&#8217;s configure the task to delete Azure Blob Storage files like below and execute the package.
<div id="attachment_6743" style="width: 591px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-delete-files.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6743" class="wp-image-6743 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-delete-files.png" alt="SSIS Azure Blob Storage Task – Delete files from Azure Blob Storage" width="581" height="523" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-delete-files.png 581w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-delete-files-300x270.png 300w" sizes="(max-width: 581px) 100vw, 581px" /></a><p id="caption-attachment-6743" class="wp-caption-text">SSIS Azure Blob Storage Task – Delete files from Azure Blob Storage</p></div></li>
<li>Let&#8217;s configure the task to move Azure Blob Storage files to another directory like below and execute the package.
<div id="attachment_6746" style="width: 566px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-move-files.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6746" class="wp-image-6746 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-move-files.png" alt="SSIS Azure Blob Storage Task – Move files from Azure Blob Storage" width="556" height="476" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-move-files.png 556w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-move-files-300x257.png 300w" sizes="(max-width: 556px) 100vw, 556px" /></a><p id="caption-attachment-6746" class="wp-caption-text">SSIS Azure Blob Storage Task – Move files from Azure Blob Storage</p></div></li>
<li>That&#8217;s it like upper examples you can configure Azure Blob Storage Task to use it&#8217;s other options also.</li>
<li>Let&#8217;s see other SSIS Azure Blob Storage Task examples in below sections</li>
</ol>
<h2>Working with advanced filters</h2>
<p>In order to understand filters, we will create an example for you. This time we will create SSIS Azure Blob Storage task example to show how to exclude some files from the downloading process.</p>
<ol>
<li>In addition, it is also possible to add advanced filters to the SSIS Azure Blob Storage task to exclude or include files and folders. The following example shows how to use the Advanced filters. In the <strong>Azure Blob Storage Task, </strong>go to the Advanced Filter page and in Exclude RegX we will write \.exe$ to exclude the file with exe extension to be downloaded. You can use RegX (regular expressions) in the advanced filter:
<div id="attachment_6693" style="width: 691px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-advanced-filters.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6693" class="wp-image-6693 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-advanced-filters.png" alt="Advanced filters" width="681" height="487" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-advanced-filters.png 681w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-advanced-filters-300x215.png 300w" sizes="(max-width: 681px) 100vw, 681px" /></a><p id="caption-attachment-6693" class="wp-caption-text">Advanced filters</p></div></li>
</ol>
<p>&nbsp;</p>
<h2>Working with wildcards in SSIS Azure Blob Storage task (Multiple files only)</h2>
<p>In order to understand wildcards, the new example will show how to work with Wildcards will help you to work with multiple files or folder with common characteristics.</p>
<ol>
<li>The following example shows how to copy all the files will all the extensions in the source folder. We use the *.*, which means that any file name with any extension will be downloaded:
<div id="attachment_6695" style="width: 690px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-wildcards.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6695" class="wp-image-6695 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-wildcards.png" alt="Working with Wildcards" width="680" height="487" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-wildcards.png 680w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-wildcards-300x215.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></a><p id="caption-attachment-6695" class="wp-caption-text">Working with Wildcards</p></div></li>
<li>If we want to download all the files with extension txt, use the following Path:<br />
<pre class="crayon-plain-tag">/source/*.txt;</pre>
</li>
<li>Another example would be to download all the files with the following names: file1.txt, file2.txt and file3.txt.  We could use the following Path:<br />
<pre class="crayon-plain-tag">/source/file?.txt</pre>
</li>
</ol>
<h2></h2>
<h2><strong>Working with SSIS expressions and variables in Azure Blob Storage Task</strong></h2>
<p>In order to understand expressions, the following example will show how to work with SSIS expressions combined with variables in the SSIS Azure Blob Storage task. In this example we will delete files in Azure Blob Storage using variables and expressions.</p>
<div class="messageTextWrapper">
<p class="urlPreviewText">ZappySys Providers simple and powerful Placeholders. You can still use SSIS expression language. Placeholders allow direct Variable Use easy to see compared to hidden SSIS Expression (C# style). Placeholders have simple embedding use of variables.</p>
</div>
<ol>
<li> First, we will first create a variable in SSIS. In this example the file name is <strong>MyFile</strong> and the Value<strong> file1</strong>.
<div id="attachment_2994" style="width: 782px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/03/ssis.sftp-variable.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-2994" class="size-full wp-image-2994" src="https://zappysys.com/blog/wp-content/uploads/2018/03/ssis.sftp-variable.png" alt="Create a SSIS variable" width="772" height="205" srcset="https://zappysys.com/blog/wp-content/uploads/2018/03/ssis.sftp-variable.png 772w, https://zappysys.com/blog/wp-content/uploads/2018/03/ssis.sftp-variable-300x80.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/03/ssis.sftp-variable-768x204.png 768w" sizes="(max-width: 772px) 100vw, 772px" /></a><p id="caption-attachment-2994" class="wp-caption-text">Create an SSIS variable</p></div></li>
<li>As a second step, we will write in path the value<strong> \destination\{{User.MyFile}}.txt. </strong>This will concatenate the folder destination with the variable MyFile. The task will delete the file1.txt from the Azure Blob Storage folder.
<div id="attachment_6699" style="width: 687px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-variable-in-path.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6699" class="wp-image-6699 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-variable-in-path.png" alt="Using SSIS expressions" width="677" height="487" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-variable-in-path.png 677w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-working-with-variable-in-path-300x216.png 300w" sizes="(max-width: 677px) 100vw, 677px" /></a><p id="caption-attachment-6699" class="wp-caption-text">Using SSIS expressions</p></div></li>
<li>The next example will show how to create a Azure Blob Storage file using expressions and variables in SSIS:
<div id="attachment_6700" style="width: 689px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-aws-task-create-file.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6700" class="wp-image-6700 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-aws-task-create-file.png" alt="Create file" width="679" height="481" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-aws-task-create-file.png 679w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-aws-task-create-file-300x213.png 300w" sizes="(max-width: 679px) 100vw, 679px" /></a><p id="caption-attachment-6700" class="wp-caption-text">Create file</p></div></li>
<li>Content to write is the content of the file. In <strong>Target, </strong>go to path and write the following: For more information on placeholders <a href="https://zappysys.com/onlinehelp/ssis-powerpack/scr/ssis-format-specifiers.htm#A1" target="_blank" rel="noopener">check this post</a> and also check <a href="https://zappysys.zendesk.com/hc/en-us/articles/115004918633-How-to-format-Path-URL-using-date-time-format" target="_blank" rel="noopener">this post</a>.<br />
<pre class="crayon-plain-tag">/destination/{{User::FileName,MM-dd-yyyy}}</pre>
</li>
<li>We are using a variable in SSIS named FileName of type DateTime. We are concatenating the Azure Blob Storage folder destination with the variable. As you can see, the expressions with ZappySys are very simple.</li>
</ol>
<h2>Example to verify if file exists in SSIS Azure Blob Storage task</h2>
<p>Finally, we will verify if a file in Azure Blob Storage exists or not using the SSIS Azure Blob Storage task.</p>
<ol>
<li>In order to start, we will use the SSIS variables, create a variable of Boolean type named FileExists. In <strong>Storage Action, </strong>select <strong>Get Azure file exist status. </strong>In path, select the path of the file to verify if it exists or not.
<div id="attachment_6749" style="width: 593px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-file-exist.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6749" class="wp-image-6749 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-file-exist.png" alt="SSIS Azure Blob Storage Task – Check File Exist in Azure Blob Storage" width="583" height="523" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-file-exist.png 583w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-blob-aws-s3-file-exist-300x269.png 300w" sizes="(max-width: 583px) 100vw, 583px" /></a><p id="caption-attachment-6749" class="wp-caption-text">SSIS Azure Blob Storage Task – Check File Exist in Azure Blob Storage</p></div></li>
<li>Secondly, we will use the <strong>ZS Logging Task </strong>to check the value of the variable File Exists. This task will show the value of the variable in the log. Drag and drop the task and join it with the ZS Azure Blob Storage Task:
<div id="attachment_6702" style="width: 279px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-to-log-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6702" class="wp-image-6702 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-az-to-log-task.png" alt="The SSIS Log task" width="269" height="260" /></a><p id="caption-attachment-6702" class="wp-caption-text">The SSIS Log task</p></div></li>
<li>In order to get the value, we will insert it in the Logging Task. To do that, insert the Variable and select the FileExists variable:
<div id="attachment_3005" style="width: 634px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/03/ssis-ftp-verify-folder-exists.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3005" class="size-full wp-image-3005" src="https://zappysys.com/blog/wp-content/uploads/2018/03/ssis-ftp-verify-folder-exists.png" alt="Configuring variable" width="624" height="501" srcset="https://zappysys.com/blog/wp-content/uploads/2018/03/ssis-ftp-verify-folder-exists.png 624w, https://zappysys.com/blog/wp-content/uploads/2018/03/ssis-ftp-verify-folder-exists-300x241.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></a><p id="caption-attachment-3005" class="wp-caption-text">Add the variable in the task logging</p></div></li>
<li>Finally, run the package and verify the Output (you can use View and Output to see the output) and check the value of the Logging Task. If the file exists, the value will be true. If it does not exist, the value will be false.
<div id="attachment_3004" style="width: 1036px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2018/03/SFTP-read-variables.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3004" class="size-full wp-image-3004" src="https://zappysys.com/blog/wp-content/uploads/2018/03/SFTP-read-variables.png" alt="Verify the value of the variable in the SSIS output" width="1026" height="234" srcset="https://zappysys.com/blog/wp-content/uploads/2018/03/SFTP-read-variables.png 1026w, https://zappysys.com/blog/wp-content/uploads/2018/03/SFTP-read-variables-300x68.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/03/SFTP-read-variables-768x175.png 768w, https://zappysys.com/blog/wp-content/uploads/2018/03/SFTP-read-variables-1024x234.png 1024w" sizes="(max-width: 1026px) 100vw, 1026px" /></a><p id="caption-attachment-3004" class="wp-caption-text">Verify the variable in Output</p></div></li>
</ol>
<h2>How to loop through Azure Blob Storage files in SSIS</h2>
<p>You can also loop through files to perform custom action file by by. Azure Blob Storage Task support Action to <strong>get File List as ADO.net Recordset</strong></p>
<p>To get File list from Azure Blob Storage Server perform the following steps.</p>
<ol>
<li>From Storage Action select <strong><strong>Get Azure files as ADO.net DataTable<br />
</strong></strong></p>
<div id="attachment_6703" style="width: 615px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-get-files-as-ado.net-datatable.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6703" class="wp-image-6703 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-get-files-as-ado.net-datatable.png" alt="Get files as ADO.net DataTable" width="605" height="295" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-get-files-as-ado.net-datatable.png 605w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-get-files-as-ado.net-datatable-300x146.png 300w" sizes="(max-width: 605px) 100vw, 605px" /></a><p id="caption-attachment-6703" class="wp-caption-text">Get files as ADO.net DataTable</p></div>
<p>&nbsp;</li>
<li>Create new Azure Blob Storage Connection by clicking New next to connection dropdown.</li>
<li>Select Source Path (e.g  <strong>\myroot\folder\*.txt </strong> )</li>
<li>Select or create new SSIS Variable (e.g. <strong>varFiles</strong> ) which will hold file list result (Must be Object datatype variable).</li>
<li>Click OK to close.</li>
<li>Create 3 more SSIS variables to hold File Path (String), Name (String) and Size (Int32). We will use in the next step.</li>
<li>Now drag SSIS ForEach Loop Container Task from SSIS Toolbox</li>
<li>Edit Loop Task and Select <strong>Foreach ADO Enumerator</strong> from the Enumerator dropdown</li>
<li>Select variable (e.g. <strong><strong>varFiles)<br />
</strong></strong></p>
<div id="attachment_346" style="width: 635px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-346" class="wp-image-346 size-full" src="https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset.png" alt="Loop through files in SSIS using ForEach Loop Task (use ADO.net Recordset variable)" width="625" height="563" srcset="https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset.png 625w, https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset-300x270.png 300w" sizes="(max-width: 625px) 100vw, 625px" /></a><p id="caption-attachment-346" class="wp-caption-text">Loop through files in SSIS using ForEach Loop Task (use ADO.net Recordset variable)</p></div></li>
<li>Click on Variable Mappings Tab and configure like below.
<div id="attachment_345" style="width: 582px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset-variable-mapping.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-345" class="size-full wp-image-345" src="https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset-variable-mapping.png" alt="Variable Mappings for ForEach Loop Task - Loop through files in a folder using SSIS" width="572" height="272" srcset="https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset-variable-mapping.png 572w, https://zappysys.com/blog/wp-content/uploads/2016/02/ssis-looping-through-files-ado-net-recordset-variable-mapping-300x143.png 300w" sizes="(max-width: 572px) 100vw, 572px" /></a><p id="caption-attachment-345" class="wp-caption-text">Variable Mappings for ForEach Loop Task &#8211; Loop through files in a folder using SSIS</p></div></li>
<li>Drag ZS Logging Task and place inside Loop and Display variables</li>
<li>That&#8217;s it</li>
</ol>
<p>For more information to <a href="//zappysys.com/blog/get-list-of-files-and-folders-in-ssis-for-looping/" target="_blank" rel="noopener">loop through files on local machine using SSIS check this article</a>.</p>
<h2>Conclusion</h2>
<p>To conclude, we can say that working with Azure Blob Storage is now very simple. In this article, we looked at SSIS Azure Blob Storage Task examples on how to upload, download, delete files and folders. We used variables, wildcards and expressions. If you liked the tasks you can start using them by downloading SSIS PowerPack from our <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">web site here</a>. We saw different SSIS Azure Blob Storage Task examples to understand how to use the task in different scenarios.</p>
<p>Thanks for your time.</p>
<h2>References</h2>
<ul>
<li><a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">About SSIS PowerPack</a></li>
<li><a href="https://docs.microsoft.com/en-us/sql/integration-services/expressions/integration-services-ssis-expressions" target="_blank" rel="noopener">Integration Services (SSIS) Expressions</a></li>
<li>Help File : <a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=azure-cloud-storage-task.htm" target="_blank" rel="noopener">Azure Storage Task</a></li>
</ul>
<p>The post <a href="https://zappysys.com/blog/ssis-azure-blob-storage-task-examples-download-upload-move-delete-files-folders/">SSIS Azure Blob Storage Task Examples (Download, Upload, Delete files / folders)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Read Azure Blob Storage Files in SSIS (CSV, JSON, XML) &#8211; Gen2 / Gen1</title>
		<link>https://zappysys.com/blog/read-azure-blob-storage-files-ssis-csv-json-xml/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Sat, 16 Mar 2019 06:03:00 +0000</pubDate>
				<category><![CDATA[SSIS Azure Blob Connection]]></category>
		<category><![CDATA[SSIS Azure Blob CSV Source]]></category>
		<category><![CDATA[SSIS Azure Blob JSON Source]]></category>
		<category><![CDATA[SSIS Azure Blob Storage Task]]></category>
		<category><![CDATA[SSIS Azure Blob XML Source]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azure blog storage]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[ssis]]></category>
		<category><![CDATA[xml]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=6529</guid>

					<description><![CDATA[<p>Introduction In our previous blog we saw how to load data into Azure Blob Storage. Now in this blog, we will see How to read Azure Blob Storage Files in SSIS (CSV, JSON, XML Format files). To illustrate, we will use ZappySys SSIS PowerPack, which includes several tasks to import/export data from multiples sources to multiple destinations like [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/read-azure-blob-storage-files-ssis-csv-json-xml/">Read Azure Blob Storage Files in SSIS (CSV, JSON, XML) &#8211; Gen2 / Gen1</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="alignleft wp-image-6532 size-thumbnail" src="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png" alt="Azure BLOB Storage" width="150" height="150" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/03/AzureStorageLogo.png 225w" sizes="(max-width: 150px) 100vw, 150px" /></a>In our previous blog we saw <a href="https://zappysys.com/blog/ssis-data-load-sql-server-azure-blob-split-files-gzip/" target="_blank" rel="noopener">how to load data into Azure Blob Storage</a>. Now in this blog, we will see <strong>How to read Azure Blob Storage Files in SSIS (CSV, JSON, XML Format files)</strong>. To illustrate, we will use <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">ZappySys SSIS PowerPack</a>, which includes several tasks to import/export data from multiples sources to multiple destinations like flat files, Azure, AWS, databases, Office files and more. They are Coding free, drag and drop high-performance suite of <em>Custom SSIS Components</em> and <em>SSIS Tasks.</em> If you like perform other operations on Azure Blob Storage Files (e.g. Download, Upload, Create, Delete) then <a href="https://zappysys.com/blog/category/ssis/tasks/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">check these articles</a>.</p>
<p>In nutshell, this post will focus on how to Read Azure Blob Storage files in SSIS using following tasks / sources.</p>
<p>&nbsp;</p>
<p><strong>Components Mentioned in this article</strong><br />
<div class="su-table su-table-alternate">
<table style="width: 407px">
<tbody>
<tr>
<td style="width: 35px"><img loading="lazy" decoding="async" src="https://i1.wp.com/zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-blob-csv-source/ssis-azure-blob-csv-file-source.png?zoom=1.100000023841858&amp;w=720&amp;ssl=1" alt="SSIS Azure Blob CSV File Source" width="32" height="32" /></td>
<td style="width: 356px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-source-csv-file-read-blob-storage/" target="_blank" rel="noopener">Azure Blob CSV File Source</a></td>
</tr>
<tr>
<td style="width: 35px"><img loading="lazy" decoding="async" src="https://i0.wp.com/zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-blob-csv-destination/ssis-azure-blob-csv-file-destination.png?zoom=1.100000023841858&amp;w=720&amp;ssl=1" alt="SSIS Azure Blob CSV File Destination" width="32" height="32" /></td>
<td style="width: 356px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-destination-csv-file-write-blob-storage/" target="_blank" rel="noopener">Azure Blob CSV File Destination</a></td>
</tr>
<tr>
<td style="width: 35px"><img loading="lazy" decoding="async" src="https://i1.wp.com/zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-blob-xml-source/ssis-azure-blob-xml-file-source.png?zoom=1.100000023841858&amp;w=720&amp;ssl=1" alt="SSIS Azure Blob XML File Source" width="32" height="32" /></td>
<td style="width: 356px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-xml-file-source/" target="_blank" rel="noopener">Azure Blob XML File Source</a></td>
</tr>
<tr>
<td style="width: 35px"><img loading="lazy" decoding="async" src="https://i0.wp.com/zappysys.com/onlinehelp/ssis-powerpack/scr/images/azure-blob-json-source/ssis-azure-blob-json-file-source.png?zoom=1.100000023841858&amp;w=720&amp;ssl=1" alt="SSIS Azure Blob JSON File Source" width="32" height="32" /></td>
<td style="width: 356px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-json-file-source/" target="_blank" rel="noopener">Azure Blob JSON File Source</a></td>
</tr>
</tbody>
</table>
</div>
<h2><span id="Requirements">Prerequisite<br />
</span></h2>
<ol>
<li>First, you will need to have SSIS installed</li>
<li>Secondly, make sure to have SSDT</li>
<li>Download and install <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">Microsoft Azure Storage Emulator</a></li>
<li>Download and install <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">Microsoft Azure Storage Explorer</a></li>
<li>Finally, do not forget to install ZappySys <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a></li>
</ol>
<p><strong>NOTE:</strong> If you want to use Live account (Azure Blob Storage) then you can skip Step #3</p>
<h2>What is Azure Blob Storage</h2>
<p>Azure Blob storage is Microsoft&#8217;s object storage solution for the cloud. you can store large amounts of unstructured data, such as text or binary data. Blob storage discloses three resources:</p>
<ul>
<li>Storage account (You can access data objects in Azure Storage through a storage account.<br />
For more information, <a href="https://docs.microsoft.com/en-us/azure/storage/common/storage-create-storage-account" target="_blank" rel="noopener">click here</a>.)</li>
<li>the containers in the account(constructs a set of blobs, it is similar to a folder in a file system.<br />
All blobs lie within a container, <strong>Note:</strong> Container name must be lowercase)</li>
<li>the blobs in a container. (Azure Storage offers three types of blobs: block blobs, append blobs, and <a href="https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-pageblob-overview" target="_blank" rel="noopener">page blobs</a>)<br />
See the below-attached diagram. It shows the relationship between these resources.<br />
<a href="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1.png"><img loading="lazy" decoding="async" class=" wp-image-3569 alignleft" src="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1-300x152.png" alt="" width="258" height="131" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/blob1-300x152.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/blob1.png 329w" sizes="(max-width: 258px) 100vw, 258px" /></a>     You can also use Azure Storage Explorer on your Local machine. Azure Storage Explorer is a standalone app that enables you to easily work with Azure Storage data on Windows, macOS, and Linux. You can use Blob storage to expose data publicly to the world or to store application data privately. <a href="https://docs.microsoft.com/en-us/azure/vs-azure-tools-storage-manage-with-storage-explorer#connect-to-a-storage-account-or-service" target="_blank" rel="noopener">Connect to an Azure storage account or service</a></li>
</ul>
<h2></h2>
<p>&nbsp;</p>
<h2>Getting Started</h2>
<p>In order to start, we will show several examples. ZappySys includes an <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">SSIS Azure Blob Source for CSV/JSON/XML File</a> that will help you in reading CSV, JSON and XML Files from Azure Blob to the Local machine, Upload files(s) to Azure Blob Storage. It will also support Delete, Rename, List, Get Property, Copy, Move, Create, Set Permission … and many more operations. Here we are showing you is, How to download files from Azure Blob Storage.</p>
<p>You can connect to your Azure Storage Account by entering your storage account credentials. Here I am showing an example of the use of local Azure Storage Emulator.</p>
<h2>Setup Azure Storage client tools</h2>
<ol>
<li>Once you have <a href="https://go.microsoft.com/fwlink/?LinkId=717179&amp;clcid=0x4009" target="_blank" rel="noopener">downloaded and installed storage emulator</a> You can launch Microsoft Azure Storage Emulator from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3631" style="width: 869px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3631" class="wp-image-3631 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png" alt="Microsoft Azure Storage Emulator Physical Location" width="859" height="94" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location.png 859w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-location-768x84.png 768w" sizes="(max-width: 859px) 100vw, 859px" /></a><p id="caption-attachment-3631" class="wp-caption-text">Microsoft Azure Storage Emulator Physical Location</p></div></li>
<li>If You can see the below-attached Command Prompt screen after Emulator started. Then you can proceed to start Microsoft Azure Storage Explorer as the Azure Storage Emulator is started successfully.
<div id="attachment_3633" style="width: 710px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3633" class="wp-image-3633 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-emulator-screen-after-started-e1552723801433.png" alt="Command Prompt Screen after Microsoft Azure Storage Emulator Started" width="700" height="237" /></a><p id="caption-attachment-3633" class="wp-caption-text">Command Prompt Screen after Microsoft Azure Storage Emulator Started</p></div></li>
<li>Now, You have to <a href="https://azure.microsoft.com/en-us/features/storage-explorer/" target="_blank" rel="noopener">download and install Microsoft Azure Storage Explorer</a> and then You can launch Microsoft Azure Storage Explorer from its Physical location or from the desktop or start menu shortcut.
<div id="attachment_3635" style="width: 837px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3635" class="wp-image-3635 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png" alt="Microsoft Azure Storage Explorer Physical Location" width="827" height="97" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location.png 827w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-300x35.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-location-768x90.png 768w" sizes="(max-width: 827px) 100vw, 827px" /></a><p id="caption-attachment-3635" class="wp-caption-text">Microsoft Azure Storage Explorer Physical Location</p></div></li>
</ol>
<h2>Create an Azure Blob Storage Container</h2>
<p>For Creating a Blob Container, First of all, you need to go to Microsoft Storage Explorer Window. Then you can go through like this way (Storage Accounts &#8211;&gt; (Development) &#8211;&gt; Blob Containers).</p>
<div id="attachment_3637" style="width: 556px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3637" class="wp-image-3637 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png" alt="Microsoft Azure Storage Explorer: Create Blob Container" width="546" height="584" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747.png 546w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-blob-container-e1552723740747-280x300.png 280w" sizes="(max-width: 546px) 100vw, 546px" /></a><p id="caption-attachment-3637" class="wp-caption-text">Microsoft Azure Storage Explorer: Create a Blob Container</p></div>
<p>you can also create a Virtual Directory under it. A Virtual Directory does not actually exist in Azure until you paste, drag or upload blobs into it.</p>
<div id="attachment_3638" style="width: 730px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3638" class="wp-image-3638 size-large" src="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-1024x749.png" alt="Creating the new Virtual Directory under Blob Container" width="720" height="527" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-1024x749.png 1024w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-300x220.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container-768x562.png 768w, https://zappysys.com/blog/wp-content/uploads/2018/04/microsoft-azure-storage-explorer-create-new-virtual-directory-under-blob-container.png 1163w" sizes="(max-width: 720px) 100vw, 720px" /></a><p id="caption-attachment-3638" class="wp-caption-text">Creating the new Virtual Directory under Blob Container</p></div>
<h2>Read Azure Blob Storage Files in SSIS (CSV, JSON, XML)</h2>
<p>Let´s start with an example. In this SSIS Azure Blob Source for CSV/JSON/XML File task example, we will read CSV/JSON/XML files from Azure Blob Storage to SQL Server database.</p>
<ol>
<li>First of All, Drag and drop Data Flow Task from SSIS Toolbox and double click it to edit.
<div id="attachment_7934" style="width: 470px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-7934" class="wp-image-7934 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png" alt="Drag and Drop SSIS Data Flow Task from SSIS Toolbox" width="460" height="155" srcset="https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task.png 460w, https://zappysys.com/blog/wp-content/uploads/2019/09/ssis-drag-drop-data-flow-task-300x101.png 300w" sizes="(max-width: 460px) 100vw, 460px" /></a><p id="caption-attachment-7934" class="wp-caption-text">Drag and Drop SSIS Data Flow Task from SSIS Toolbox</p></div></li>
<li>Drag and Drop relevant Azure Blob Source for CSV/JSON/XML File Task from the SSIS Toolbox.
<div id="attachment_6586" style="width: 710px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-add-task.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6586" class="wp-image-6586 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-add-task-e1552988071678.png" alt="Add Azure Blob Source Tasks" width="700" height="412" /></a><p id="caption-attachment-6586" class="wp-caption-text">Add Azure Blob Source Tasks</p></div></li>
<li>Create a connection for Azure Blob Storage Account.
<div id="attachment_6538" style="width: 645px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-source-select-connection-manager.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6538" class="wp-image-6538 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-source-select-connection-manager.png" alt="Create Azure Storage Connection" width="635" height="635" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-source-select-connection-manager.png 635w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-source-select-connection-manager-150x150.png 150w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-source-select-connection-manager-300x300.png 300w" sizes="(max-width: 635px) 100vw, 635px" /></a><p id="caption-attachment-6538" class="wp-caption-text">Create Azure Storage Connection</p></div></li>
<li>We can also connect the Microsoft Azure Storage emulator also like this.
<div id="attachment_3642" style="width: 631px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/04/azure-blob-storage-account-connection-screen.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3642" class="wp-image-3642 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/04/azure-blob-storage-account-connection-screen.png" alt="Connection Form of Azure Blob Storage Account" width="621" height="542" srcset="https://zappysys.com/blog/wp-content/uploads/2018/04/azure-blob-storage-account-connection-screen.png 621w, https://zappysys.com/blog/wp-content/uploads/2018/04/azure-blob-storage-account-connection-screen-300x262.png 300w" sizes="(max-width: 621px) 100vw, 621px" /></a><p id="caption-attachment-3642" class="wp-caption-text">Connection Form of Azure Blob Storage Account</p></div></li>
<li>Select the relevant single file to read from Azure Blob Storage in their relevant source of CSV/JSON/XML File Task.
<div id="attachment_6539" style="width: 944px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-select-File.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6539" class="wp-image-6539 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-select-File.png" alt="Select File From Azure Blob Storage" width="934" height="582" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-select-File.png 934w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-select-File-300x187.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-select-File-768x479.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-select-File-436x272.png 436w" sizes="(max-width: 934px) 100vw, 934px" /></a><p id="caption-attachment-6539" class="wp-caption-text">Select File From Azure Blob Storage</p></div></li>
<li>We can also read the multiple files stored in Azure Blob Storage using wildcard pattern supported e.g. dbo.tblNames*.csv / dbo.tblNames*.json / dbo.tblNames*.xml in relevant source task
<div id="attachment_6540" style="width: 557px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-set-multiple-Filepath.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6540" class="wp-image-6540 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-set-multiple-Filepath.png" alt="Use wildcard pattern .* to read multiple files data" width="547" height="178" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-set-multiple-Filepath.png 547w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-Azure-Blob-Source-set-multiple-Filepath-300x98.png 300w" sizes="(max-width: 547px) 100vw, 547px" /></a><p id="caption-attachment-6540" class="wp-caption-text">Use wildcard pattern .* to read multiple files data</p></div></li>
<li>We can also read the zip and gzip compressed files also without extracting it in the specific Azure Blob Source for CSV/JSON/XML File Task.
<div id="attachment_6541" style="width: 698px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-storage-source-read-zip-gzip-compressed-files.png" target="_blank" rel="noopener"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6541" class="wp-image-6541 size-full" src="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-storage-source-read-zip-gzip-compressed-files.png" alt="Reading zip and gzip compressed files (stream mode)" width="688" height="273" srcset="https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-storage-source-read-zip-gzip-compressed-files.png 688w, https://zappysys.com/blog/wp-content/uploads/2019/03/ssis-azure-blob-storage-source-read-zip-gzip-compressed-files-300x119.png 300w" sizes="(max-width: 688px) 100vw, 688px" /></a><p id="caption-attachment-6541" class="wp-caption-text">Reading zip and gzip compressed files (stream mode)</p></div></li>
<li>That&#8217;s it, we are ready to load this file(s) data into the SQL Server.</li>
</ol>
<h2>Load Azure Blob Storage Files data into SQL Server</h2>
<div class="content_block" id="custom_post_widget-5617"><p>ZappySys SSIS PowerPack makes it easy to load data from various sources such as REST, SOAP, JSON, XML, CSV or from other source into SQL Server, or PostgreSQL, or Amazon Redshift, or other  targets. The <strong>Upsert Destination</strong> component allows you to automatically insert new records and update existing ones based on key columns. Below are the detailed steps to configure it.</p>
<h3>Step 1: Add Upsert Destination to Data Flow</h3>
<ol>
<li>Drag and drop the <strong>Upsert Destination</strong> component from the SSIS Toolbox.</li>
<li>Connect your source component (e.g., JSON / REST / Other Source) to the Upsert Destination.</li>
</ol>
<div class="wp-caption aligncenter">
<a href="https://zappysys.com/blog/wp-content/uploads/2017/08/ssis-data-flow-drag-drop-upsert-destination.png">
<img loading="lazy" decoding="async" class="size-full" alt="" src="https://zappysys.com/blog/wp-content/uploads/2017/08/ssis-data-flow-drag-drop-upsert-destination.png" /></a>
<p class="wp-caption-text">SSIS - Data Flow - Drang and Drop Upsert Destination Component</p>
</div>
<h3>Step 2: Configure Target Connection</h3>
<ol>
<li>Double-click the <strong>Upsert Destination</strong> component to open the configuration window.</li>
<li>Under <strong>Connection</strong>, select an existing target connection or click <strong>NEW</strong> to create a new connection.
<ul>
<li>Example: SQL Server, or PostgreSQL, or Amazon Redshift.</li>
</ul>
</li>
</ol>
<h3>Step 3: Select or Create Target Table</h3>
<ol>
<li>In the <strong>Target Table</strong> dropdown, select the table where you want to load data.</li>
<li>Optionally, click <strong>NEW</strong> to create a new table based on the source columns.</li>
</ol>
<div class="wp-caption aligncenter">
<a href="https://zappysys.com/blog/wp-content/uploads/2020/09/upsert-destination-configuration.png">
<img loading="lazy" decoding="async" class="size-full" alt="" src="https://zappysys.com/blog/wp-content/uploads/2020/09/upsert-destination-configuration.png" /></a>
<p class="wp-caption-text">Configure SSIS Upsert Destination Connection - Loading data (REST / SOAP / JSON / XML /CSV) into SQL Server or other target using SSIS</p>
</div>
<h3>Step 4: Map Columns</h3>
<ol>
<li>Go to the <strong>Mappings</strong> tab.</li>
<li>Click <strong>Auto Map</strong> to map source columns to target columns by name.</li>
<li>Ensure you <strong>check the Primary key column(s)</strong> that will determine whether a record is inserted or updated.</li>
<li>You can manually adjust the mappings if necessary.</li>
</ol>
 <div class="wp-caption aligncenter">
<a href="https://zappysys.com/blog/wp-content/uploads/2020/09/upsert-destination-key.png">
<img loading="lazy" decoding="async" class="size-full" alt="" src="https://zappysys.com/blog/wp-content/uploads/2020/09/upsert-destination-key.png" /></a>
<p class="wp-caption-text">SSIS Upsert Destination - Columns Mappings</p>
</div>
<h3>Step 5: Save Settings</h3>
<ul>
<li>Click <strong>OK</strong> to save the Upsert Destination configuration.</li>
</ul>
<h3>Step 6: Optional: Add Logging or Analysis</h3>
<ul>
<li>You may add extra destination components to log the number of inserted vs. updated records for monitoring or auditing purposes.</li>
</ul>
<h3>Step 7: Execute the Package</h3>
<ul>
<li>Run your SSIS package and verify that the data is correctly inserted and updated in the target table.</li>
</ul>
<div class="wp-caption aligncenter">
<a href="https://zappysys.com/blog/wp-content/uploads/2018/12/ssis-upsert-destination-execute.png">
<img loading="lazy" decoding="async" class="size-full" alt="" src="https://zappysys.com/blog/wp-content/uploads/2018/12/ssis-upsert-destination-execute.png" /></a>
<p class="wp-caption-text">SSIS Upsert Destination Execution</p>
</div></div>
<h2>Read / Write data to Azure Data Lake Storage Gen 2 / Gen 1 (CSV / XML / JSON)</h2>
<p>Check the below articles if you like to know more about how to write to Azure Blob Storage.</p>
<p><strong>Article#1</strong></p>
<p><a href="https://community.zappysys.com/t/how-to-read-write-from-azure-data-lake-storage-gen2-in-ssis/125">https://community.zappysys.com/t/how-to-read-write-from-azure-data-lake-storage-gen2-in-ssis/125</a></p>
<p><strong>Article#2</strong></p>
<blockquote class="wp-embedded-content" data-secret="7nwUGMR4gx"><p><a href="https://zappysys.com/blog/ssis-data-load-sql-server-azure-blob-split-files-gzip/">SSIS Data Load &#8211; SQL Server to Azure Blob (Split Files, GZip)</a></p></blockquote>
<p><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" src="https://zappysys.com/blog/ssis-data-load-sql-server-azure-blob-split-files-gzip/embed/#?secret=7nwUGMR4gx" data-secret="7nwUGMR4gx" width="600" height="338" title="&#8220;SSIS Data Load &#8211; SQL Server to Azure Blob (Split Files, GZip)&#8221; &#8212; ZappySys Blog" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></p>
<p>&nbsp;</p>
<h2><span id="Conclusion">Conclusion</span></h2>
<p>Above all, in this blog, we learned how to Read Azure Blob Storage Files in SSIS. We used <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-source-csv-file-read-blob-storage/" target="_blank" rel="noopener">Azure Blob Source for CSV File</a>, <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-json-file-source/" target="_blank" rel="noopener">Azure Blob Source for JSON File</a> and <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-xml-file-source/" target="_blank" rel="noopener">Azure Blob Source for XML File</a> to read the file(s) from Microsoft Azure Blob Storage and load data into SQL server. You can <a href="https://zappysys.com/products/ssis-powerpack/">download SSIS PowerPack here</a> to try many other scenarios not discussed in this blog along with 70+ other components.</p>
<h2><span id="References">References</span></h2>
<p>Finally, you can use the following links for more information:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-source-csv-file-read-blob-storage/" target="_blank" rel="noopener">Azure Blob Source for CSV File.</a></li>
<li><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-json-file-source/" target="_blank" rel="noopener">Blob Source for JSON File</a></li>
<li><a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-xml-file-source/" target="_blank" rel="noopener">Azure Blob Source for XML File</a></li>
<li><a href="https://azure.microsoft.com/en-in/services/storage/blobs/" target="_blank" rel="noopener">Microsoft Azure Blob Storage</a></li>
<li><strong>Help File:</strong> Documentation of <a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=ssis-azure-blob-csv-source.htm" target="_blank" rel="noopener">Azure Blob Source for CSV File</a>, <a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=ssis-azure-blob-json-source.htm" target="_blank" rel="noopener">Azure Blob Source for JSON File</a> and <a href="https://zappysys.com/onlinehelp/ssis-powerpack/index.htm#page=ssis-azure-blob-xml-source.htm" target="_blank" rel="noopener">Azure Blob Source for XML File</a></li>
</ul>
</li>
</ul>
<p>The post <a href="https://zappysys.com/blog/read-azure-blob-storage-files-ssis-csv-json-xml/">Read Azure Blob Storage Files in SSIS (CSV, JSON, XML) &#8211; Gen2 / Gen1</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Setting Metadata key / value in SSIS Amazon S3 / Azure Storage Task</title>
		<link>https://zappysys.com/blog/setting-metadata-key-value-ssis-amazon-s3-azure-storage-task/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Thu, 17 Jan 2019 15:21:54 +0000</pubDate>
				<category><![CDATA[SSIS Amazon Storage Task]]></category>
		<category><![CDATA[SSIS Azure Blob Storage Task]]></category>
		<category><![CDATA[aws]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[s3]]></category>
		<category><![CDATA[ssis]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=6107</guid>

					<description><![CDATA[<p>Introduction In this post we will see how to set Metadata key/value in Azure Blob Storage Task and Amazon Storage Task (S3 Task). We will also see how to set them dynamically at runtime (Use SSIS Expression). Set Amazon S3 Task Metadata (Key / Value Pairs) Here is how you can set Metadata in Amazon [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/setting-metadata-key-value-ssis-amazon-s3-azure-storage-task/">Setting Metadata key / value in SSIS Amazon S3 / Azure Storage Task</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p>In this post we will see how to set Metadata key/value in <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/">Azure Blob Storage Task</a> and <a href="https://zappysys.com/products/ssis-powerpack/ssis-amazon-s3-task/">Amazon Storage Task (S3 Task)</a>. We will also see how to set them dynamically at runtime (Use SSIS Expression).</p>
<div class="content_block" id="custom_post_widget-2523"><h2><span id="Prerequisites">Prerequisites</span></h2>
Before we perform the steps listed in this article, you will need to make sure the following prerequisites are met:
<ol style="margin-left: 1.5em;">
 	<li><abbr title="SQL Server Integration Services">SSIS</abbr> designer installed. Sometimes it is referred to as <abbr title="Business Intelligence Development Studio">BIDS</abbr> or <abbr title="SQL Server Data Tools">SSDT</abbr> (<a href="https://docs.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt" target="_blank" rel="noopener">download it from the Microsoft site</a>).</li>
 	<li>Basic knowledge of SSIS package development using <em>Microsoft SQL Server Integration Services</em>.</li>
 	<li>Make sure <span style="text-decoration: underline;"><a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">ZappySys SSIS PowerPack</a></span> is installed (<a href="https://zappysys.com/products/ssis-powerpack/download/" target="_blank" rel="noopener">download it</a>, if you haven't already).</li>
 	<li>(<em>Optional step</em>)<em>.</em> <a href="https://zappysys.zendesk.com/hc/en-us/articles/360035974593" target="_blank" rel="noopener">Read this article</a>, if you are planning to deploy packages to a server and schedule their execution later.</li>
</ol></div>
<h2>Set Amazon S3 Task Metadata (Key / Value Pairs)</h2>
<p>Here is how you can set Metadata in Amazon S3 Task.</p>
<div style="width: 525px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="figureimage" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/amazon-s3-task/ui-amazon-s3-task-metadata.png" alt="Setting Amazon S3 Metadata (Key/Value Pairs) in SSIS Amazon Storage Task" width="515" height="333" /><p class="wp-caption-text">Setting Amazon S3 Metadata (Key/Value Pairs) in SSIS Amazon Storage Task</p></div>
<h2>Set Azure Blob Storage Task Metadata (Key / Value Pairs)</h2>
<p>Just like S3 Task you can use same UI in Azure blob storage task too.</p>
<h2>Set Metadata Key/Value Dynamically (SSIS Expression)</h2>
<p>So far you have set metadata using static value. What if you have to set Dynamically at runtime?</p>
<p>Basically Metadata is passed as XML Format in the task like below.</p><pre class="crayon-plain-tag">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;ArrayOfStringKeyValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
	&lt;StringKeyValue&gt;
		&lt;Key&gt;x-amz-key1&lt;/Key&gt;
		&lt;Value&gt;AAAAAAA&lt;/Value&gt;
	&lt;/StringKeyValue&gt;
	&lt;StringKeyValue&gt;
		&lt;Key&gt;x-amz-key2&lt;/Key&gt;
		&lt;Value&gt;BBBBBBB&lt;/Value&gt;
	&lt;/StringKeyValue&gt;	
&lt;/ArrayOfStringKeyValue&gt;</pre><p>
Whate we will do is take above format and make it dynamic using SSIS Expression.</p>
<p>Perform the following steps for that.</p>
<ol>
<li>Select your Amazon Storage Task or Azure Storage Task and right click &gt; Select Properties.</li>
<li>In the Properties Grid check Property name MetadataKeyValue. Copy XML Value from there (We will use it in expression)</li>
<li>Now double click Amazon Storage Task or Azure Storage Task</li>
<li>Click on Expression Button</li>
<li>Select MetadataKeyValue property and for Value enter below expression&#8230; Use previously copied XML text  and change Value part with your own SSIS variable. In below example we are passing Just one Metadata Key/Value pair ( Name=x-amz-meta-filename  , Value=Coming from @[User::MyFileNameVariable] )<br />
Note that we have escaped double quote with <pre class="crayon-plain-tag">\"</pre>  and replaced static value with <pre class="crayon-plain-tag">&lt;Value&gt;" + @[User::MyFileNameVariable] + "&lt;/Value&gt;</pre> .<br />
<pre class="crayon-plain-tag">"&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;"
+ "&lt;ArrayOfStringKeyValue xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"&gt;"
+ "	&lt;StringKeyValue&gt;"
+ "		&lt;Key&gt;x-amz-meta-file-name&lt;/Key&gt;"
+ "		&lt;Value&gt;" + @[User::MyFileNameVariable] + "&lt;/Value&gt;"
+ "	&lt;/StringKeyValue&gt;"
+ "	&lt;StringKeyValue&gt;"
+ "		&lt;Key&gt;x-amz-meta-something&lt;/Key&gt;"
+ "		&lt;Value&gt;BBBBBBB&lt;/Value&gt;"
+ "	&lt;/StringKeyValue&gt;"	
+ "&lt;/ArrayOfStringKeyValue&gt;"</pre>
<div id="attachment_6108" style="width: 1090px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2019/01/ssis-amazon-s3-storage-metadata-dynamic-expression.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6108" class="size-full wp-image-6108" src="https://zappysys.com/blog/wp-content/uploads/2019/01/ssis-amazon-s3-storage-metadata-dynamic-expression.png" alt="Set Amazon S3 File Metadata Key/Value dynamically" width="1080" height="892" srcset="https://zappysys.com/blog/wp-content/uploads/2019/01/ssis-amazon-s3-storage-metadata-dynamic-expression.png 1080w, https://zappysys.com/blog/wp-content/uploads/2019/01/ssis-amazon-s3-storage-metadata-dynamic-expression-300x248.png 300w, https://zappysys.com/blog/wp-content/uploads/2019/01/ssis-amazon-s3-storage-metadata-dynamic-expression-768x634.png 768w, https://zappysys.com/blog/wp-content/uploads/2019/01/ssis-amazon-s3-storage-metadata-dynamic-expression-1024x846.png 1024w" sizes="(max-width: 1080px) 100vw, 1080px" /></a><p id="caption-attachment-6108" class="wp-caption-text">Set Amazon S3 File Metadata Key/Value dynamically</p></div></li>
<li> Click OK and that&#8217;s it.</li>
</ol>
<p>The post <a href="https://zappysys.com/blog/setting-metadata-key-value-ssis-amazon-s3-azure-storage-task/">Setting Metadata key / value in SSIS Amazon S3 / Azure Storage Task</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SSIS Data Load &#8211; SQL Server to Azure Blob (Split Files, GZip)</title>
		<link>https://zappysys.com/blog/ssis-data-load-sql-server-azure-blob-split-files-gzip/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Mon, 29 Oct 2018 19:58:19 +0000</pubDate>
				<category><![CDATA[SSIS Azure Blob CSV Destination]]></category>
		<category><![CDATA[SSIS Azure Blob Storage Task]]></category>
		<category><![CDATA[SSIS CSV Export Task]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azure blob storage]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[gzip]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=5257</guid>

					<description><![CDATA[<p>Introduction In this blog post you will see how easy it is to load large amount of data from SQL Server to Azure Blob Storage using SSIS. We will export / compress data to multiple files. For demo purpose we will use SQL Server as relational source but you can use same steps for any [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/ssis-data-load-sql-server-azure-blob-split-files-gzip/">SSIS Data Load &#8211; SQL Server to Azure Blob (Split Files, GZip)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p>In this blog post you will see how easy it is to load large amount of data from SQL Server to Azure Blob Storage using SSIS. We will export / compress data to multiple files.</p>
<p>For demo purpose we will use SQL Server as relational source but you can use same steps for any database engine such as Oracle, MySQL, DB2. In this post we will use <a href="//zappysys.com/products/ssis-powerpack/ssis-export-csv-file-task/" target="_blank" rel="noopener">Export CSV Task</a> and <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">Azure Blob Storage Task </a> to achieve desired integration with Azure Blob with drag and drop approach. You can also export JSON or XML data to Azure Blob using same techniques (Use <a href="//zappysys.com/products/ssis-powerpack/ssis-export-json-file-task/" target="_blank" rel="noopener">Export JSON Task</a>  or <a href="//zappysys.com/products/ssis-powerpack/ssis-export-xml-file-task/" target="_blank" rel="noopener">Export XML Task</a> ).</p>
<p>Our goal is to achieve following things</p>
<ul>
<li>Extract large amount of data from SQL Server Table or Query and export to CSV files</li>
<li>Generate CSV files in compressed format (*.gz) to speedup upload and save data transfer cost to Azure</li>
<li>Split CSV files by row count</li>
<li>Upload data to Azure Blob using highly parallel manner for maximum speed</li>
</ul>
<p>There are three different ways you can achieve data export to Azure Blob using SSIS.</p>
<ol>
<li><strong>Method-1 (Fastest)</strong>: Use two step process (First export SQL Server data to local files using <a href="//zappysys.com/products/ssis-powerpack/ssis-export-csv-file-task/" target="_blank" rel="noopener">Export Task</a> and then upload files to Azure using  <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">Azure Blob Storage Task </a> )</li>
<li><strong>Method-2 (Slower)</strong>: Use <a href="//zappysys.com/products/ssis-powerpack/ssis-export-csv-file-task/" target="_blank" rel="noopener">Export Task</a> with Azure Blob Connection as Target rather than save to Local files.</li>
<li><strong>Method-3 (Slower)</strong>: Use Data flow components like <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-destination-csv-file-write-blob-storage/" target="_blank" rel="noopener">Azure Blob Destination for CSV</a>  (for JSON / XML  use Method1 or Method2)</li>
</ol>
<p>Each method has its own advantage / disadvantage. If you prefer to upload / compress / split large amount of data then we recommend Method#1 (Two steps). If you have not very huge dataset then you can use Method#2 or Method#3. For Last method you can only use CSV export option (we don&#8217;t have JSON/ XML Destination for Azure Blob yet &#8211; we may add in future)</p>
<p><strong>Screenshot of SSIS Package</strong></p>
<div id="attachment_707" style="width: 835px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-server-data-upload-to-amazon-s3.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-707" class="wp-image-707 size-full" src="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-server-data-upload-to-amazon-s3.png" alt="Extract SQL Server Data to CSV files in SSIS (Bulk export) Split / GZip Compress / upload files to Azure Blob Storage" width="825" height="430" srcset="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-server-data-upload-to-amazon-s3.png 825w, https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-server-data-upload-to-amazon-s3-300x156.png 300w" sizes="(max-width: 825px) 100vw, 825px" /></a><p id="caption-attachment-707" class="wp-caption-text">Extract SQL Server Data to CSV files in SSIS (Bulk export) Split / GZip Compress / upload files to Azure Blob Storage</p></div>
<h2>Method-1 : Upload SQL data to Azure Blob in Two steps</h2>
<p>In this section we will see first method (recommended) to upload SQL data to Azure Blob. This is the fastest approach if you have lots of data to upload.  In this approach we first create CSV files from SQL Server data on local disk using <a href="https://zappysys.com/products/ssis-powerpack/ssis-export-csv-file-task/" target="_blank" rel="noopener">SSIS Export CSV Task</a>. After that in second step we upload all files to Azure Blob using <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">SSIS Azure Storage Task</a>.</p>
<h3>Step-1: Configure Source Connection in Export CSV Task</h3>
<p>To extract data from SQL Server you can use Export CSV Task. It has many options which makes it possible to split large amount of data into multiple files. You can specify single table or multiple tables as your data source.</p>
<p>For multiple table use vertical bar. e.g.  dbo.Customers|dbo.Products|dbo.Orders. When you export this it will create 3 files ( dbo.Customers.csv , dbo.Products.csv, dbo.Orders.csv )</p>
<p><strong>Steps:</strong></p>
<ol>
<li>Drag ZS Export CSV Task from Toolbox</li>
<li>Double click task to configure</li>
<li>From connection drop down select New connection option (OLEDB or ADO.net)</li>
<li>Once connection is configured for Source database specify SQL Query to extract data as below
<div id="attachment_705" style="width: 528px" class="wp-caption alignnone"><a href="//zappysys.com/blog/wp-content/uploads/2016/07/export-sql-server-table-query-data-to-csv-fast.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-705" class="size-full wp-image-705" src="//zappysys.com/blog/wp-content/uploads/2016/07/export-sql-server-table-query-data-to-csv-fast.png" alt="Export SQL Server Table or Query as CSV file (Bulk export in SSIS)" width="518" height="494" srcset="https://zappysys.com/blog/wp-content/uploads/2016/07/export-sql-server-table-query-data-to-csv-fast.png 518w, https://zappysys.com/blog/wp-content/uploads/2016/07/export-sql-server-table-query-data-to-csv-fast-300x286.png 300w" sizes="(max-width: 518px) 100vw, 518px" /></a><p id="caption-attachment-705" class="wp-caption-text">Export SQL Server Table or Query as CSV file (Bulk export in SSIS)</p></div></li>
<li>Now go to target tab. Here you can specify full path for file. e.g. c:\ssis\temp\azure\cust.csv</li>
</ol>
<h3>Step-2: Compress CSV Files in SSIS ( GZIP format &#8211; *.gz )</h3>
<p>Above steps will export file as CSV format without splitting or compression. But to compress file once exported you can go to Target tab of Export CSV Task and check [<strong>Compress file to *.gz format</strong>] option.</p>
<div id="attachment_706" style="width: 579px" class="wp-caption alignnone"><a href="//zappysys.com/blog/wp-content/uploads/2016/07/compress-csv-files-in-ssis.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-706" class="size-full wp-image-706" src="//zappysys.com/blog/wp-content/uploads/2016/07/compress-csv-files-in-ssis.png" alt="Compress exported SQL Server data files to GZip ( *.gz) in SSIS Export CSV Task" width="569" height="462" srcset="https://zappysys.com/blog/wp-content/uploads/2016/07/compress-csv-files-in-ssis.png 569w, https://zappysys.com/blog/wp-content/uploads/2016/07/compress-csv-files-in-ssis-300x244.png 300w" sizes="(max-width: 569px) 100vw, 569px" /></a><p id="caption-attachment-706" class="wp-caption-text">Compress exported SQL Server data files to GZip ( *.gz) in SSIS Export CSV Task</p></div>
<h3>Step-3: Split CSV files by row count or data size in SSIS</h3>
<p>Now lets look at how to split exported CSV files into multiple files so we can upload many files in parallel. Goto Split Options and check [<strong>Enable Split by Size/Rows</strong>]
<div id="attachment_708" style="width: 435px" class="wp-caption alignnone"><a href="//zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-split-csv-files-sql-data.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-708" class="size-full wp-image-708" src="//zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-split-csv-files-sql-data.png" alt="Using SSIS Split Exported CSV files (Split by row count or size)" width="425" height="489" srcset="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-split-csv-files-sql-data.png 425w, https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-split-csv-files-sql-data-261x300.png 261w" sizes="(max-width: 425px) 100vw, 425px" /></a><p id="caption-attachment-708" class="wp-caption-text">Using SSIS Split Exported CSV files (Split by row count or size)</p></div>
<h3>Step-4: Upload CSV files to Azure Blob &#8211; Using multi threaded option</h3>
<p>Now final thing is use <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-storage-task/" target="_blank" rel="noopener">Azure Storage Task</a> to upload files to Azure.</p>
<p><strong>Steps:</strong></p>
<ol>
<li>Drag ZS Azure Storage Task from SSIS toolbox</li>
<li>Double click Azure Storage Task to configure it</li>
<li>Specify Action = UploadFilesToAzure</li>
<li>Specify Source file path (or pattern) e.g. c:\SSIS\temp\azure\*.*</li>
<li>Now in the Target connection dropdown click [New]</li>
<li>When Connection UI opens Enter your Account, Secret Key (Leave all other parameters default if you not sure)</li>
<li>Click Test and close connection UI</li>
<li>On the Target path on Azure Storage Task enter your bucket and folder path where you want to upload local files. For example your container name is bw-east-1 and folder is sqldata then enter as below<br />
<strong>bw-east-1/sqldata/</strong></li>
<li>Click ok and Run package to test full package</li>
</ol>
<h2>Method-2 : Upload SQL data to Azure Blob without local stage (One step)</h2>
<p>Now let&#8217;s change previous approach little bit to send SQL server data directly to Azure Blob without any Landing area on local disk.  <a href="//zappysys.com/products/ssis-powerpack/ssis-export-csv-file-task/" target="_blank" rel="noopener">Export CSV Task</a> , <a href="//zappysys.com/products/ssis-powerpack/ssis-export-json-file-task/" target="_blank" rel="noopener">Export JSON Task</a>  and <a href="//zappysys.com/products/ssis-powerpack/ssis-export-xml-file-task/" target="_blank" rel="noopener">Export XML Task</a> all of them supports Azure Blob / Azure Blob and Secure FTP (SFTP) connection as target (Only available in <strong>Pro Edition</strong>). We will use this feature in following section.</p>
<p>This approach helps to avoid any local disk need and it may be useful for security reason for some users. However drawback of this approach is, it wont use parallel threads to upload large amount of data like previous method.</p>
<p>Following change will be needed on Export task to upload SQL data directly to Azure / FTP or Azure storage.</p>
<div id="attachment_5252" style="width: 859px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-data-to-s3-csv-compress-gzip.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5252" class="size-full wp-image-5252" src="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-data-to-s3-csv-compress-gzip.png" alt="Export SQL data to multiple files to Azure Blob, Azure, Secure FTP (SFTP) in Stream Mode. Compress GZip, Overwrite, Split Options" width="849" height="627" srcset="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-data-to-s3-csv-compress-gzip.png 849w, https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-data-to-s3-csv-compress-gzip-300x222.png 300w, https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-export-sql-data-to-s3-csv-compress-gzip-768x567.png 768w" sizes="(max-width: 849px) 100vw, 849px" /></a><p id="caption-attachment-5252" class="wp-caption-text">Export SQL data to multiple files to Azure Blob, Amazon S3, Secure FTP (SFTP) in Stream Mode using SSIS. Configure Compress GZip, Overwrite, Split Options</p></div>
<h2>Method-3 : Using Azure Blob destination &#8211; Generate Azure Blob file from any source</h2>
<p>Now let&#8217;s look at third approach to save data from any SSIS Source to Azure Blob file. Advantage of this approach is you are not limited to few source options provided by Export CSV Task. If you have complex data transformation needed in Data Flow before sending data to Azure then use this approach.  We will use <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-destination-csv-file-write-blob-storage/" target="_blank" rel="noopener">Azure Blob Destination for CSV</a> as below</p>
<ol>
<li>Drag SSIS Data flow task from toolbox</li>
<li>Create necessary source connection (e.g. OLEDB connection)</li>
<li>Create Azure Blob Connection (Right click in Connection Managers panel in bottom and click New connection and select <strong>ZS-Azure-STORAGE</strong> type )</li>
<li>Once connection managers are created Go to data flow designer and Drag OLEDB Source</li>
<li>Configure OLEDB Source to read desired data from source system (e.g. SQL Server / Oracle)</li>
<li>Once source is configured drag <a href="https://zappysys.com/products/ssis-powerpack/ssis-azure-blob-destination-csv-file-write-blob-storage/" target="_blank" rel="noopener">ZS Azure Blob CSV File Destination</a> from SSIS toolbox</li>
<li>Double click Azure Destination and configure as below
<ol>
<li>On Connection Managers tab select Azure Connection (We created in earlier section).</li>
<li>Properties tab configure like below screenshot</li>
<li>On Input Columns tab select desired column you like to write in the target file. Your name from upstream will be taken as is for target file. So make sure to name upstream columns correctly.</li>
<li>Click OK to save UI</li>
</ol>
</li>
<li>Execute package and check your Azure Bucket to see files got created.</li>
</ol>
<div id="attachment_5253" style="width: 729px" class="wp-caption alignnone"><a href="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-amazon-s3-csv-destination-split-compress-gzip-options.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5253" class="size-full wp-image-5253" src="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-amazon-s3-csv-destination-split-compress-gzip-options.png" alt="Loading SQL Server data into Azure Blob Container (Split, Compress Gzip Options) - SSIS Azure Blob CSV File Destination" width="719" height="782" srcset="https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-amazon-s3-csv-destination-split-compress-gzip-options.png 719w, https://zappysys.com/blog/wp-content/uploads/2016/07/ssis-amazon-s3-csv-destination-split-compress-gzip-options-276x300.png 276w" sizes="(max-width: 719px) 100vw, 719px" /></a><p id="caption-attachment-5253" class="wp-caption-text">Loading SQL Server data into Azure Container Files (Split, Compress Gzip Options) &#8211; SSIS Azure Blob CSV File Destination</p></div>
<h2>Conclusion</h2>
<p>In this post you have seen how easy it is to upload / archive your SQL Server data (or any other RDBMS data) to Azure Blob Storage in few clicks. <a href="//zappysys.com/products/ssis-powerpack/">Try SSIS PowerPack</a> for free and find out yourself how easy it is to integrate SQL Server and Azure Blob using SSIS.</p>
<p>The post <a href="https://zappysys.com/blog/ssis-data-load-sql-server-azure-blob-split-files-gzip/">SSIS Data Load &#8211; SQL Server to Azure Blob (Split Files, GZip)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Sentiment Analysis in SSIS using Azure AI &#8211; Machine Learning REST API</title>
		<link>https://zappysys.com/blog/sentiment-analysis-in-ssis-azure-ai-machine-learning-rest-api/</link>
		
		<dc:creator><![CDATA[ZappySys Team]]></dc:creator>
		<pubDate>Thu, 07 Jun 2018 21:05:48 +0000</pubDate>
				<category><![CDATA[REST API]]></category>
		<category><![CDATA[REST API Integration]]></category>
		<category><![CDATA[SSIS JSON Source (File/REST)]]></category>
		<category><![CDATA[SSIS PowerPack]]></category>
		<category><![CDATA[artificial intelligence]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[Cognitive Services]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[machine learning]]></category>
		<category><![CDATA[rest api]]></category>
		<category><![CDATA[sentiment analysis]]></category>
		<category><![CDATA[ssis]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=3791</guid>

					<description><![CDATA[<p>Introduction to Sentiment Analysis in SSIS In this article, we will show how to do sentiment Analysis in SSIS of text using artificial intelligence. It is very important for a company to measure customer satisfaction. Today, it is possible to do sentiment and use artificial intelligence and detect if a customer liked or not our [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/sentiment-analysis-in-ssis-azure-ai-machine-learning-rest-api/">Sentiment Analysis in SSIS using Azure AI &#8211; Machine Learning REST API</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction to Sentiment Analysis in SSIS</h2>
<p><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/cognitive-services-azure-text-analytics.png"><img loading="lazy" decoding="async" class=" wp-image-3851 alignleft" src="https://zappysys.com/blog/wp-content/uploads/2018/06/cognitive-services-azure-text-analytics.png" alt="sentiment analysis in SSIS" width="93" height="93" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/cognitive-services-azure-text-analytics.png 185w, https://zappysys.com/blog/wp-content/uploads/2018/06/cognitive-services-azure-text-analytics-150x150.png 150w" sizes="(max-width: 93px) 100vw, 93px" /></a>In this article, we will show how to do <strong>sentiment Analysis in SSIS</strong> of text using artificial intelligence. It is very important for a company to measure customer satisfaction. Today, it is possible to do sentiment and use <strong>artificial intelligence</strong> and detect if a customer liked or not our products based in on a comment?<br />
Yes, it is. Now it is possible to analyze text and detect customer feelings. In this article, we will show how to detect the feelings of a comment, how to export the results in a Database and how to display some information based on the feelings.</p>
<p>In this article we will be using <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">ZappySys SSIS PowerPack</a> components and <strong>Microsoft Azure Service for <a href="https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/" target="_blank" rel="noopener">Text Analytics</a></strong> (i.e. <a href="https://azure.microsoft.com/en-us/services/cognitive-services/" target="_blank" rel="noopener">Cognitive Services</a>) to make things work:<br />
<div class="su-table su-table-alternate">
<table width="300">
<tbody>
<tr style="line-height: 0px">
<td width="50px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-rest-api-web-service-task/" target="_blank" rel="noopener"><br />
<img loading="lazy" decoding="async" class="alignnone size-full wp-image-3074" src="https://zappysys.com/images/SSIS-PowerPack/ssis-rest-api-web-service-task.png" alt="SSIS REST API Web Service Task " width="50" height="50" /></a></td>
<td style="vertical-align: middle"><a href="https://zappysys.com/products/ssis-powerpack/ssis-rest-api-web-service-task/" target="_blank" rel="noopener">SSIS REST API Web Service Task<br />
</a></td>
</tr>
<tr style="line-height: 0px">
<td style="height: 58px" width="50px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-json-file-source/" target="_blank" rel="noopener"><br />
<img loading="lazy" decoding="async" class="alignnone size-full wp-image-3074" src="https://zappysys.com/images/SSIS-PowerPack/SSIS-Json-Source-Adapter.png" alt="SSIS JSON Source (File, REST API, OData Connector)" width="50" height="50" /></a></td>
<td style="vertical-align: middle;height: 58px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-json-file-source/" target="_blank" rel="noopener">SSIS JSON Source (File, REST API, OData Connector)</a></td>
</tr>
<tr style="line-height: 0px">
<td style="height: 58px" width="50px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-json-file-destination-connector/" target="_blank" rel="noopener"><br />
<img loading="lazy" decoding="async" class="alignnone size-full wp-image-3074" src="https://zappysys.com/onlinehelp/ssis-powerpack/scr/images/json-file-destination/ssis-json-file-destination.png" alt="SSIS JSON File Destination (Create JSON File)" width="50" height="50" /></a></td>
<td style="vertical-align: middle;height: 58px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-json-file-destination-connector/" target="_blank" rel="noopener">SSIS JSON File Destination (Create JSON File)<br />
</a></td>
</tr>
<tr style="line-height: 0px">
<td style="height: 58px" width="50px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-export-json-file-task/" target="_blank" rel="noopener"><br />
<img loading="lazy" decoding="async" class="alignnone size-full wp-image-3074" src="https://zappysys.com/images/SSIS-PowerPack/ssis-export-json-file-task.png" alt="SSIS JSON File Destination (Create JSON File)" width="50" height="50" /></a></td>
<td style="vertical-align: middle;height: 58px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-export-json-file-task/" target="_blank" rel="noopener">SSIS Export JSON File Task<br />
</a></td>
</tr>
<tr style="line-height: 0px">
<td style="height: 58px" width="50px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-logging-task-free/" target="_blank" rel="noopener"><br />
<img loading="lazy" decoding="async" class="alignnone size-full wp-image-3074" src="https://zappysys.com/images/SSIS-PowerPack/ssis-logging-task.png" alt="SSIS JSON File Destination (Create JSON File)" width="50" height="50" /></a></td>
<td style="vertical-align: middle;height: 58px"><a href="https://zappysys.com/products/ssis-powerpack/ssis-logging-task-free/" target="_blank" rel="noopener">SSIS Logging Task (FREE)</a></td>
</tr>
</tbody>
</table>
</div>
<h2>Requirements</h2>
<ul>
<li>In order to start, we will use SSDT with SQL Server Integration Services(SSIS). SSIS is a Microsoft Powerful tool to import, export data and automate tasks.</li>
<li><a href="https://zappysys.com/products/ssis-powerpack/download/">Secondly, ZappySys SSIS PowerPack</a>, which is a powerful tool to make REST API calls and other tools that we will use to get data and analyze data and export the data.</li>
<li>Finally, an <strong>Azure</strong> Account will be required to access the <strong>Text Analytics Services</strong>.</li>
</ul>
<h2>Getting started</h2>
<p>In order to start with the Sentiment Analysis in SSIS, we will show first how to analyze text and detect the customer feelings. If it is a positive feeling, the value will be 1 or close to 1. If the feeling is negative, the value will be 0 or close to 0. Let’s start with a simple example of 2 real customer reviews:</p>
<p>First review:</p><pre class="crayon-plain-tag">I looked everywhere for a product that could easily integrate to a specific web portal backend API via 
JSON, and after many attempts, the ZappySys product was the only solution that could give me all the 
options I needed in a quick &amp; clean interface within SSIS. Coupled with some great tech support and 
customer support, I would definitely recommend ZappySys SSIS PowerPack...</pre><p>
Second review</p><pre class="crayon-plain-tag">The responsiveness of your support staff during the evaluation period really has been excellent. 
I’ve contacted them a few times with queries specific to the scenario I am working with and they have 
answered straight away via chat and provide exactly the detailed technical input required to progress...</pre><p>
In order to detect the feelings, we will use the Microsoft Cognitive Services. Microsoft included in Azure pretty nice services to Analyze text, translate text, detect sentiments, language understanding, and several other services. In this example, we will use the sentiment detector service.</p>
<h3>Create a service for Sentiment Analysis in SSIS using Azure</h3>
<ol>
<li>First, log in to the <a href="https://portal.azure.com">Azure Portal</a>.
<div class="mceTemp"></div>
</li>
<li>Secondly, in the Portal, press the + green icon and select <strong>AI+ Machine Learning</strong> and select <strong>Text Analysis</strong>:<br />
Also, enter a name, a location and select a resource group and a pricing Tier.</p>
<div id="attachment_3804" style="width: 881px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-Analytics-API-Service.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3804" class="size-full wp-image-3804" src="https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-Analytics-API-Service.png" alt="Azure text analytics services" width="871" height="429" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-Analytics-API-Service.png 871w, https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-Analytics-API-Service-300x148.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-Analytics-API-Service-768x378.png 768w" sizes="(max-width: 871px) 100vw, 871px" /></a><p id="caption-attachment-3804" class="wp-caption-text">Add text Analytics</p></div></li>
<li>Finally, check the endpoints and the keys. We will use that information to connect with REST API in SSIS.
<div id="attachment_3805" style="width: 1240px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-analytics-endpoint.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3805" class="size-full wp-image-3805" src="https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-analytics-endpoint.png" alt="Azure Endpoint for Text Analytics" width="1230" height="358" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-analytics-endpoint.png 1230w, https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-analytics-endpoint-300x87.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-analytics-endpoint-768x224.png 768w, https://zappysys.com/blog/wp-content/uploads/2018/06/Azure-text-analytics-endpoint-1024x298.png 1024w" sizes="(max-width: 1230px) 100vw, 1230px" /></a><p id="caption-attachment-3805" class="wp-caption-text">Endpoint in Azure</p></div></li>
</ol>
<h3>Using REST API for Sentiment Analysis in SSIS</h3>
<ol>
<li>First, we want to detect the feelings. To do it, we will use the REST API task included with the ZappySys SSIS PowerPack.
<div id="attachment_3806" style="width: 329px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-rest-api-azure.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3806" class="size-full wp-image-3806" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-rest-api-azure.png" alt="Tool to invoke Azure Text Analytics" width="319" height="219" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-rest-api-azure.png 319w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-rest-api-azure-300x206.png 300w" sizes="(max-width: 319px) 100vw, 319px" /></a><p id="caption-attachment-3806" class="wp-caption-text">SSIS Rest API Task</p></div></li>
<li>Secondly, we will specify the URL and in the Raw Edit we will add the key to enter. The URL is the Endpoint that we had in the Azure Portal. It should be something like this:<br />
<pre class="crayon-plain-tag">https://eastus2.api.cognitive.microsoft.com/text/analytics/v2.0/sentiment</pre>
</li>
<li>Also, enter the key that can be obtained in the Azure Portal. It will be something like this in the HTTP Header:<br />
<pre class="crayon-plain-tag">Ocp-Apim-Subscription-Key: 0e99402669b54beaa2af705d6c</pre>
</li>
<li>In addition, in the Body Request, we will create something like the following:<br />
<pre class="crayon-plain-tag">{
  "documents": [
    {
      "language": "en",
      "id": "1",
      "text": "I looked everywhere for a product that could easily integrate to a specific web portal backend api via JSON, and after many attempts, the ZappySys product was the only solution that could give me all the options I needed in a quick &amp; clean interface within SSIS."
    },
    {
      "language": " en ",
      "id": " 2 ",
      "text": "The responsiveness of your support staff during the evaluation period really has been excellent.I’ve contacted them a few times with queries specific to the scenario I am working with and they have answered straight away via chat and provide exactly the detailed technical input required to progress."
    }
  ]
}</pre>
</li>
<li>In addition, the JSON text includes the ID (1 and 2), which is just an identifier. The language is to specify the language of the text. Currently it supports English (en), Spanish (es), Portuguese from Portugal (pt-PT) and other languages. For a complete list, you can check this link:<br />
<pre class="crayon-plain-tag">https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/text-analytics-supported-languages</pre>
</li>
<li>The REST API tasks should look like this:
<div id="attachment_3807" style="width: 810px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-rest-api-azure-text-analytics.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3807" class="size-full wp-image-3807" src="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-rest-api-azure-text-analytics.png" alt="REST API connection to Azure Text Analytics" width="800" height="654" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-rest-api-azure-text-analytics.png 800w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-rest-api-azure-text-analytics-300x245.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-rest-api-azure-text-analytics-768x628.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a><p id="caption-attachment-3807" class="wp-caption-text">SSIS REST API connection to Azure Cognitive services</p></div></li>
<li>Also, when we press the Test Request/Response button, we can see the score of the comments:
<div id="attachment_3808" style="width: 622px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-detect-feeling-text-analysis-positive-negative-feeling.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3808" class="size-full wp-image-3808" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-detect-feeling-text-analysis-positive-negative-feeling.png" alt="Feeling scores" width="612" height="579" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-detect-feeling-text-analysis-positive-negative-feeling.png 612w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-detect-feeling-text-analysis-positive-negative-feeling-300x284.png 300w" sizes="(max-width: 612px) 100vw, 612px" /></a><p id="caption-attachment-3808" class="wp-caption-text">Score detecting feelings</p></div></li>
<li>Finally, the scores are 0.84 and 0.789. They are closer to 1, so they are 2 positive comments. So, we could read comments and detect if the feelings are positive or negative. Also, it is possible to store the results in a file or in a variable:
<div id="attachment_3809" style="width: 810px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-API-results-to-variable-file.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3809" class="size-full wp-image-3809" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-API-results-to-variable-file.png" alt="Save JSON results in SSIS variables" width="800" height="654" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-API-results-to-variable-file.png 800w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-API-results-to-variable-file-300x245.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-API-results-to-variable-file-768x628.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a><p id="caption-attachment-3809" class="wp-caption-text">SSIS save JSON result to a variable</p></div></li>
</ol>
<h3>How to detect Sentiment Analysis in SSIS using a database</h3>
<p>In the previous example, we show how to detect the sentiments of text. The text must be in JSON format, so it is necessary to convert the data from JSON. In this new example, we will show how to convert comments from an SQL Server database to JSON and then we will learn how to export the scores of the sentiments to SQL Server and count how many users are happy and unhappy. The package will have the following tasks:</p>
<div id="attachment_3810" style="width: 370px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-to-json-rest-api.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3810" class="size-full wp-image-3810" src="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-to-json-rest-api.png" alt="Artificial intelligence package in SSIS" width="360" height="476" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-to-json-rest-api.png 360w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-to-json-rest-api-227x300.png 227w" sizes="(max-width: 360px) 100vw, 360px" /></a><p id="caption-attachment-3810" class="wp-caption-text">SSIS package to count positive and negative sentiments using AI</p></div>
<p>We will first show how to export reviews stored in an SQL Server database to a JSON format necessary to be read by REST API.</p>
<h3>Export SQL Server data to JSON format</h3>
<ol>
<li>First of all, we will use a table named comments. The code to create the table with data is the following:<br />
<pre class="crayon-plain-tag">CREATE TABLE [dbo].[comment](
[comments] [nchar](2000) NULL,
[id] [smallint] IDENTITY(1,1) NOT NULL,
CONSTRAINT [PK_comment] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET IDENTITY_INSERT [dbo].[comment] ON

INSERT [dbo].[comment] ([comments], [id]) VALUES (N'Great product. I love it. ', 1)
INSERT [dbo].[comment] ([comments], [id]) VALUES (N'It is not bad. I will use it. ', 2)
INSERT [dbo].[comment] ([comments], [id]) VALUES (N'The product is wonderful ', 3)
INSERT [dbo].[comment] ([comments], [id]) VALUES (N'I hate this product. I do not know why is it online ', 4)
SET IDENTITY_INSERT [dbo].[comment] OFF</pre>
The table is this one:</p>
<div id="attachment_3812" style="width: 323px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-review-opinions-table.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3812" class="size-full wp-image-3812" src="https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-review-opinions-table.png" alt="SQL table with some reviews" width="313" height="115" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-review-opinions-table.png 313w, https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-review-opinions-table-300x110.png 300w" sizes="(max-width: 313px) 100vw, 313px" /></a><p id="caption-attachment-3812" class="wp-caption-text">Sample table to detect feelings</p></div></li>
<li>Secondly, we want to convert this SQL table to JSON like this to send the data to our Azure REST API text analytics service:<br />
<pre class="crayon-plain-tag">{
"documents": [
{
"id": 1,
"text": "Great product. I love it. "
},
{
"id": 2,
"text": "It is not bad. I will use it. "
},
{
"id": 3,
"text": "The product is wonderful "
},
{
"id": 4,
"text": "I hate this product. I do not know why is it online "
}
]
}</pre>
</li>
<li>Also, will use the Export JSON Task include in the ZappySys SSIS PowerPack.<br />
First, in Source, enter your server name, connection, and SQL Server Database and check the Use Custom Layout option:</p>
<div id="attachment_3814" style="width: 833px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-custom-json-layout.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3814" class="size-full wp-image-3814" src="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-custom-json-layout.png" alt="Task in SSIS to export from SQL Server to JSON" width="823" height="612" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-custom-json-layout.png 823w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-custom-json-layout-300x223.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-custom-json-layout-768x571.png 768w" sizes="(max-width: 823px) 100vw, 823px" /></a><p id="caption-attachment-3814" class="wp-caption-text">SSIS export to JSON task</p></div></li>
<li>Check the Single Dataset Array option and on Dataset, right click and select Add Dataset:
<div id="attachment_3815" style="width: 828px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-json-task.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3815" class="size-full wp-image-3815" src="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-json-task.png" alt="SSIS task to export to JSON" width="818" height="315" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-json-task.png 818w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-json-task-300x116.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-json-task-768x296.png 768w" sizes="(max-width: 818px) 100vw, 818px" /></a><p id="caption-attachment-3815" class="wp-caption-text">Add JSON data set</p></div></li>
<li>Also, write a DataSet name, select the SQL Server database connection and select the table comment that contains the comments to export to JSON. You can export data from Tables, Views, queries and stored procedures with parameters using our Export JSON Task:
<div id="attachment_3816" style="width: 462px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-sql-to-json.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3816" class="size-full wp-image-3816" src="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-sql-to-json.png" alt="Task in SSIS to get data from SQL Server to JSON" width="452" height="438" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-sql-to-json.png 452w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-export-sql-to-json-300x291.png 300w" sizes="(max-width: 452px) 100vw, 452px" /></a><p id="caption-attachment-3816" class="wp-caption-text">SSIS get tables views to convert to JSON</p></div></li>
<li>In addition, right-click Mapping and select Add Document Array:<br />
Next, add an Element name and press OK:</p>
<div id="attachment_3818" style="width: 612px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-add-json-document-array.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3818" class="size-full wp-image-3818" src="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-add-json-document-array.png" alt="Add JSON array document in SSIS" width="602" height="513" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-add-json-document-array.png 602w, https://zappysys.com/blog/wp-content/uploads/2018/06/ssis-add-json-document-array-300x256.png 300w" sizes="(max-width: 602px) 100vw, 602px" /></a><p id="caption-attachment-3818" class="wp-caption-text">SSIS add array document</p></div></li>
<li>Next, right-click documents and select Add Elements:
<div id="attachment_3819" style="width: 833px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-add-element-JSON-array.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3819" class="size-full wp-image-3819" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-add-element-JSON-array.png" alt="JSON element in SSIS" width="823" height="612" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-add-element-JSON-array.png 823w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-add-element-JSON-array-300x223.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-add-element-JSON-array-768x571.png 768w" sizes="(max-width: 823px) 100vw, 823px" /></a><p id="caption-attachment-3819" class="wp-caption-text">Add JSON element in SSIS</p></div></li>
<li>Also, add the comments and the id:
<div id="attachment_3820" style="width: 405px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-elements-added.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3820" class="size-full wp-image-3820" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-elements-added.png" alt="Elements in JSON" width="395" height="438" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-elements-added.png 395w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-elements-added-271x300.png 271w" sizes="(max-width: 395px) 100vw, 395px" /></a><p id="caption-attachment-3820" class="wp-caption-text">JSON elements added in SSIS</p></div></li>
<li>The format displayed will be like this:
<div id="attachment_3822" style="width: 931px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-to-json.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3822" class="size-full wp-image-3822" src="https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-to-json.png" alt="SSIS Output in JSON format" width="921" height="607" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-to-json.png 921w, https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-to-json-300x198.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/sql-server-to-json-768x506.png 768w" sizes="(max-width: 921px) 100vw, 921px" /></a><p id="caption-attachment-3822" class="wp-caption-text">SSIS SQL Server data in JSON Format</p></div></li>
<li>Another thing that you have to do is go to the Target tab, the target location will be a variable and we will store the JSON in a variable named jsonvar:
<div id="attachment_3823" style="width: 833px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-JSON-result-to-variable.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3823" class="size-full wp-image-3823" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-JSON-result-to-variable.png" alt="SSIS Save JSON into variable" width="823" height="612" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-JSON-result-to-variable.png 823w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-JSON-result-to-variable-300x223.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-JSON-result-to-variable-768x571.png 768w" sizes="(max-width: 823px) 100vw, 823px" /></a><p id="caption-attachment-3823" class="wp-caption-text">Save JSON into variable</p></div></li>
</ol>
<h3>How to get the feelings using REST API</h3>
<p>In the previous section, we exported data from SQL Server to a JSON format and stored the data in an SSIS variable named jsonvar. In this new section, we will call the API to get Analyze the text and detect if the comments are positive or negative.</p>
<div id="attachment_3824" style="width: 384px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-REST-API-call-Azure-Text-Analytics.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3824" class="size-full wp-image-3824" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-REST-API-call-Azure-Text-Analytics.png" alt="SSIS detect feelings with REST API" width="374" height="469" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-REST-API-call-Azure-Text-Analytics.png 374w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-REST-API-call-Azure-Text-Analytics-239x300.png 239w" sizes="(max-width: 374px) 100vw, 374px" /></a><p id="caption-attachment-3824" class="wp-caption-text">REST API detect feelings SSIS</p></div>
<ol>
<li>First, we will use the REST API to invoke the Azure Analytics Text services. We will use the Web URL of the Create a service to Analyze text using Azure section at the beginning of the article and in the HTTP Headers, go Raw Edit and specify the Ocp-Apim-Subscription key. You can also see this information in the Analyze test using Azure section.</li>
<li>Secondly, in the body (Request Data), we will use the variable with JSON results generated by the Export to JSON task in the previous section:
<div id="attachment_3825" style="width: 810px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/Detect-sentiment-analysys-in-SSIS.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3825" class="size-full wp-image-3825" src="https://zappysys.com/blog/wp-content/uploads/2018/06/Detect-sentiment-analysys-in-SSIS.png" alt="Text Analysis using REST API in SSIS" width="800" height="654" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/Detect-sentiment-analysys-in-SSIS.png 800w, https://zappysys.com/blog/wp-content/uploads/2018/06/Detect-sentiment-analysys-in-SSIS-300x245.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/Detect-sentiment-analysys-in-SSIS-768x628.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a><p id="caption-attachment-3825" class="wp-caption-text">Header information REST API</p></div></li>
<li>Finally, you will store the results in a file named sentiment.json using the Response Settings tab:
<div id="attachment_3826" style="width: 810px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-sentiment-detection-to-json-file.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3826" class="size-full wp-image-3826" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-sentiment-detection-to-json-file.png" alt="SSIS JSON results into a file" width="800" height="654" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-sentiment-detection-to-json-file.png 800w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-sentiment-detection-to-json-file-300x245.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-sentiment-detection-to-json-file-768x628.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a><p id="caption-attachment-3826" class="wp-caption-text">Save JSON results into a file in SSIS</p></div></li>
</ol>
<h3>Export JSON results to SQL Server</h3>
<ol>
<li>We have a file with the Sentiments in a file names sentiments.json and we want to export the JSON file to SQL Server to count the values and do some queries. To do that, we will use the Data Flow task:
<div id="attachment_3827" style="width: 415px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-export-JSON-data-to-SQL-Server.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3827" class="size-full wp-image-3827" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-export-JSON-data-to-SQL-Server.png" alt="SSIS to export text anallytics results to SQL Server" width="405" height="235" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-export-JSON-data-to-SQL-Server.png 405w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-export-JSON-data-to-SQL-Server-300x174.png 300w" sizes="(max-width: 405px) 100vw, 405px" /></a><p id="caption-attachment-3827" class="wp-caption-text">Export from JSON to SQL in SSIS</p></div></li>
<li>In the Data Flow task, use the JSON Source and join to the OLE DB Destination. The JSON Source will read our JSON file and the OLE DB Destination will connect to SQL Server:
<div id="attachment_3829" style="width: 395px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-task.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3829" class="size-full wp-image-3829" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-task.png" alt="JSON Source to export data to SQL Server" width="385" height="230" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-task.png 385w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-task-300x179.png 300w" sizes="(max-width: 385px) 100vw, 385px" /></a><p id="caption-attachment-3829" class="wp-caption-text">The JSON Source in SSIS</p></div></li>
<li>Also, in JSON Source task, enter the path of the JSON file. In Filter write the following filter:<br />
<pre class="crayon-plain-tag">$.documents[*]</pre>
<div id="attachment_3830" style="width: 836px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-filter.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3830" class="size-full wp-image-3830" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-filter.png" alt="SSIS JSON filters" width="826" height="733" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-filter.png 826w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-filter-300x266.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-JSON-Source-filter-768x682.png 768w" sizes="(max-width: 826px) 100vw, 826px" /></a><p id="caption-attachment-3830" class="wp-caption-text">Add filters to JSON data</p></div></li>
<li>Also, we will create the following table named feeling to store the JSON results to SQL Server and use the OLEDB Destination to store JSON values into the SQL table. In this example, the scores of the feelings:<br />
<pre class="crayon-plain-tag">CREATE TABLE [dbo].[Feeling]([score] 
[float] NULL,
[id] [int] NULL ) 
ON [PRIMARY] GO</pre>
<div id="attachment_3831" style="width: 831px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-SQL-Server-OLEDB-Destination.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3831" class="size-full wp-image-3831" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-SQL-Server-OLEDB-Destination.png" alt="Table to store score of text analytics" width="821" height="715" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-SQL-Server-OLEDB-Destination.png 821w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-SQL-Server-OLEDB-Destination-300x261.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-SQL-Server-OLEDB-Destination-768x669.png 768w" sizes="(max-width: 821px) 100vw, 821px" /></a><p id="caption-attachment-3831" class="wp-caption-text">SQL Server SSIS Oledb</p></div></li>
</ol>
<h3>Count positive and negative feelings in SSIS</h3>
<p>We stored the feelings in an SQL Server table. Now, we need to count them and then publish the values into variables.</p>
<div id="attachment_3838" style="width: 336px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-T-SQL-result-into-variable.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3838" class="size-full wp-image-3838" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-T-SQL-result-into-variable.png" alt="SQL Query with single result" width="326" height="471" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-T-SQL-result-into-variable.png 326w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-store-T-SQL-result-into-variable-208x300.png 208w" sizes="(max-width: 326px) 100vw, 326px" /></a><p id="caption-attachment-3838" class="wp-caption-text">Store T-SQL results into</p></div>
<ol>
<li>In order to start, we will create two SSIS variables. One named positive and another negative of type int16. We will store the positive feelings in one variable and negative feelings in another.</li>
<li>Secondly, we will use the Execute SQL Task. In connection, you must provide your SQL Server name, database, credentials. Go to Result Set and select single row.</li>
<li>In SQLStatement, write the following query to count the positive feelings:<br />
<pre class="crayon-plain-tag">select count(score) as positive 
from dbo.feeling 
where score&gt;0.5</pre>
<div id="attachment_3839" style="width: 747px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-select-count-into-variable.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3839" class="size-full wp-image-3839" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-select-count-into-variable.png" alt="Save SQL query result into an SSIS variable" width="737" height="631" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-select-count-into-variable.png 737w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-save-select-count-into-variable-300x257.png 300w" sizes="(max-width: 737px) 100vw, 737px" /></a><p id="caption-attachment-3839" class="wp-caption-text">Save T-SQL count result in a variable</p></div></li>
<li>Also, in result set specify 0 in Result Name and select the Positive variable.
<div id="attachment_3841" style="width: 747px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-result-set-variable.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3841" class="size-full wp-image-3841" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-result-set-variable.png" alt="SSIS result set into a variable" width="737" height="631" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-result-set-variable.png 737w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-result-set-variable-300x257.png 300w" sizes="(max-width: 737px) 100vw, 737px" /></a><p id="caption-attachment-3841" class="wp-caption-text">Handle SSIS Results Set</p></div></li>
<li>In addition, to count the negative feeling we will use the same Execute SQL Task with the following query and store the results in the negative SSIS variable:<br />
<pre class="crayon-plain-tag">select count(score) as negative 
from dbo.feeling 
where score&lt;0.5</pre>
<div id="attachment_3843" style="width: 747px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-negative-sentiment.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3843" class="size-full wp-image-3843" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-negative-sentiment.png" alt="SSIS store SQL results into variable" width="737" height="631" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-negative-sentiment.png 737w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-negative-sentiment-300x257.png 300w" sizes="(max-width: 737px) 100vw, 737px" /></a><p id="caption-attachment-3843" class="wp-caption-text">Store number of negative sentiments into SSIS variable</p></div></li>
<li>Finally, in Result Set, Assign the values to the negative variable:</li>
</ol>
<h3>Show positive and negative feelings using an SSIS variable</h3>
<p>Finally, we will show the number of positive and negative feelings using the ZS Logging Task. This task allows storing variable values in a File, the Log file a messagebox. The article will show the value in the Output log.</p>
<ol>
<li>In order to start, in the ZS Logging task use the ExecutionLog Log mode. We will send the following text to show the variables in the output:<br />
<pre class="crayon-plain-tag">Positive feelings: {{User::Positive}}.
Negative feelings: {{User::Negative}}</pre>
&nbsp;</p>
<p>&nbsp;</p>
<div id="attachment_3847" style="width: 635px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-variables-Output.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3847" class="size-full wp-image-3847" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-variables-Output.png" alt="Show number of negative comments" width="625" height="504" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-variables-Output.png 625w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-variables-Output-300x242.png 300w" sizes="(max-width: 625px) 100vw, 625px" /></a><p id="caption-attachment-3847" class="wp-caption-text">SSIS variables in output</p></div></li>
<li>Finally, if you run the package in the Visual Studio output, you will be able to see the that the positive feelings are 3 and negative feelings 1:
<div id="attachment_3848" style="width: 878px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-two-variables-in-output.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3848" class="size-full wp-image-3848" src="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-two-variables-in-output.png" alt="SSIS variables values displayed" width="868" height="96" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-two-variables-in-output.png 868w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-two-variables-in-output-300x33.png 300w, https://zappysys.com/blog/wp-content/uploads/2018/06/SSIS-show-two-variables-in-output-768x85.png 768w" sizes="(max-width: 868px) 100vw, 868px" /></a><p id="caption-attachment-3848" class="wp-caption-text">Show variables in output</p></div></li>
</ol>
<h2>Conclusion about Sentiment Analysis in SSIS</h2>
<p>In this article, we learned how to use text analytics using Microsoft Azure Services. Specifically, we use a sentiment detector to detect if sentiments are positive or negative using Artificial Intelligence.<br />
Also, to detect that, we need to convert the text to JSON format. We learn how to convert data from an SQL Server database to JSON using our SSIS Export to JSON task. We also used our REST API to invoke the Microsoft Text Analytic services in Azure to detect the sentiments of our data.<br />
Finally, we use the JSON Source to export the information to SQL Server and count the positive and negative sentiments.<br />
To conclude, If you want to try yourself, you can download the <a href="https://zappysys.com/products/ssis-powerpack/download/">ZappySys SSIS PowerPack here</a>.</p>
<h2>References to Sentiment Analysis in SSIS</h2>
<p>Finally, for more information about Text Analytics, JSON conversion, refer to these links:</p>
<ul>
<li><a href="https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/">Microsoft Azure Text Analytics</a></li>
<li><a href="https://zappysys.com/blog/call-rest-api-using-ssis-web-service-task/">Call REST API using SSIS Web Service Task / JSON / XML Source</a></li>
<li><a href="https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/how-tos/text-analytics-how-to-sentiment-analysis">How to detect sentiment in Text Analytics</a></li>
</ul>
<p>The post <a href="https://zappysys.com/blog/sentiment-analysis-in-ssis-azure-ai-machine-learning-rest-api/">Sentiment Analysis in SSIS using Azure AI &#8211; Machine Learning REST API</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
