{"id":662,"date":"2016-07-01T13:27:53","date_gmt":"2016-07-01T13:27:53","guid":{"rendered":"http:\/\/zappysys.com\/blog\/?p=662"},"modified":"2018-11-14T18:10:37","modified_gmt":"2018-11-14T18:10:37","slug":"how-to-query-amazon-dynamodb-read-write-update","status":"publish","type":"post","link":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/","title":{"rendered":"How to Read \/ Write Amazon DynamoDB in SSIS"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p>In this article we will look at how to Read \/ Write Amazon DynamoDB in SSIS. ZappySys developed many AWS related components but in this article we will look at 3 Tasks\/Components for DynamoDB Integration Scenarios (Read, Write, Update, Bulk Insert, Create \/ Drop Table etc.).\u00a0We will discuss how to use\u00a0<a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-dynamodb-source\/\" target=\"_blank\" rel=\"noopener\">SSIS DynamoDB Source Connector<\/a> , <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-dynamodb-destination\/\" target=\"_blank\" rel=\"noopener\">SSIS DynamoDB\u00a0Destination Connector<\/a> and <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-amazon-dynamodb-executesql-task\/\" target=\"_blank\" rel=\"noopener\">SSIS DynamoDB ExecuteSQL Task<\/a> . DynamoDB Source connector supports familiar\u00a0<strong>SQL Like query language<\/strong> so any DBA or SQL user can learn it in no time. ZappySys developed highly sophisticated engine to turn your SQL Query into native DynamoDB query. For more information check <a href=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/index.htm#page=amazon-dynamodb-source.htm\" target=\"_blank\" rel=\"noopener\">this help file<\/a><\/p>\n<div style=\"width: 265px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-amazon-dynamodb-source-extract-data-sample.png\" alt=\"SSIS Amazon DynamoDB Source Connector - Extract data from DynamoDB\" width=\"255\" height=\"208\" \/><p class=\"wp-caption-text\">Extract data from Amazon DynamoDB in SSIS<\/p><\/div>\n<div class=\"content_block\" id=\"custom_post_widget-2523\"><h2><span id=\"Prerequisites\">Prerequisites<\/span><\/h2>\n<p>Before we perform the steps listed in this article, you will need to make sure the following prerequisites are met:<\/p>\n<ol style=\"margin-left: 1.5em;\">\n<li><abbr title=\"SQL Server Integration Services\">SSIS<\/abbr> designer installed.\u00a0Sometimes 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>\n<li>Basic knowledge of SSIS package\u00a0development using\u00a0<em>Microsoft SQL Server Integration Services<\/em>.<\/li>\n<li>Make sure\u00a0<span style=\"text-decoration: underline;\"><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/\" target=\"_blank\" rel=\"noopener\">ZappySys SSIS PowerPack<\/a><\/span>\u00a0is installed (<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/download\/\" target=\"_blank\" rel=\"noopener\">download it<\/a>, if you haven&#8217;t already).<\/li>\n<li>(<em>Optional step<\/em>)<em>.<\/em>\u00a0<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>\n<\/ol>\n<\/div>\n<h2>Video Tutorial &#8211;\u00a0Read\/Write\/Update data in Amazon DynamoDB in SSIS<\/h2>\n<p>Below video tutorial will show you from start to end how to use ZappySys Components to perform various AWS DynamoDB Integration Tasks such as Reading Bulk data, Writing bulk data, Executing ad-hock Command for DynamoDB (such as Create\/Drop Table). Get Row Count etc.<br \/>\n<div class=\"lyte-wrapper fourthree\" style=\"width:480px;max-width:100%;margin:5px auto;\"><div class=\"lyMe\" id=\"WYL_yt70gZRQ9bA\"><div id=\"lyte_yt70gZRQ9bA\" data-src=\"https:\/\/zappysys.com\/blog\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2Fyt70gZRQ9bA%2Fhqdefault.jpg\" class=\"pL\"><div class=\"tC\"><div class=\"tT\"><\/div><\/div><div class=\"play\"><\/div><div class=\"ctrl\"><div class=\"Lctrl\"><\/div><div class=\"Rctrl\"><\/div><\/div><\/div><noscript><a href=\"https:\/\/youtu.be\/yt70gZRQ9bA\" rel=\"nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=https%3A%2F%2Fi.ytimg.com%2Fvi%2Fyt70gZRQ9bA%2F0.jpg\" alt=\"\" width=\"480\" height=\"340\" \/><br \/>Watch this video on YouTube<\/a><\/noscript><\/div><\/div><div class=\"lL\" style=\"max-width:100%;width:480px;margin:5px auto;\"><\/div><\/p>\n<h2>Using Amazon DynamoDB Emulator for Local Testing<\/h2>\n<p>If you don&#8217;t have AWS Cloud account and you still want to try DynamoDB related options in SSIS then you can use FREE Local Emulator for DynamoDB.<\/p>\n<ol>\n<li>\u00a0<a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/DynamoDBLocal.html\" target=\"_blank\" rel=\"noopener\">Download it from here<\/a>.<\/li>\n<li>Extract to local folder (e.g. c:\\tools\\dynamodb_local<\/li>\n<li>Create a batch file there call it RunDynamo.bat and you can put command like below.\n<pre class=\"\">\"java.exe\" -Djava.library.path=.\/DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb<\/pre>\n<p>Or (Java Home Path not set use below)<\/p>\n<pre class=\"\">\"C:\\Program Files\\Java\\jdk--YOUR-VERSION\\bin\\java.exe\" -Djava.library.path=.\/DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb<\/pre>\n<\/li>\n<li>Double click Batch file to launch DynamoDB Local instance<\/li>\n<\/ol>\n<h2>Connect to DynamoDB in SSIS<\/h2>\n<p>Now lets look at step by step how to Connect to DynamoDB in SSIS. For Simple demo we will use \u00a0<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-amazon-dynamodb-executesql-task\/\">ZS Amazon DynamoDB ExecuteSQL Task<\/a>\u00a0but in next section we will show you How to Read \/ Write DynamoDB Data using other SSIS Components.<\/p>\n<h3>Create SSIS DynamoDB Connection \/ List Tables Example<\/h3>\n<ol>\n<li>Installed <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/download\/\" target=\"_blank\" rel=\"noopener\">SSIS PowerPack<\/a> if you have not done it.<\/li>\n<li>Open SSIS Package<\/li>\n<li>Drag and drop\u00a0<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-amazon-dynamodb-executesql-task\/\">ZS Amazon DynamoDB ExecuteSQL Task<\/a>\u00a0 from SSIS Toolbox<\/li>\n<li>Double click to edit the task<\/li>\n<li>Click New button next to Connection Dropdown<\/li>\n<li>Select DynamoDB from Service Type. If you are connecting to Local DynamoDB then check DynamoDB Local option else enter your AWS Account Access Key and Secret Key to connect to Cloud Instance.\n<div id=\"attachment_5386\" style=\"width: 1147px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-5386\" class=\"size-full wp-image-5386\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png\" alt=\"Create new Amazon DynamoDB Connection in SSIS  - Use Amazon DynamoDB Execute SQL Task - List Tables Example\" width=\"1137\" height=\"657\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png 1137w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection-300x173.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection-768x444.png 768w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection-1024x592.png 1024w\" sizes=\"(max-width: 1137px) 100vw, 1137px\" \/><\/a><p id=\"caption-attachment-5386\" class=\"wp-caption-text\">Create new Amazon DynamoDB Connection in SSIS &#8211; Use Amazon DynamoDB Execute SQL Task &#8211; List Tables Example<\/p><\/div><\/li>\n<li>Click Test Connection to confirm and click OK to save Connection.<\/li>\n<li>Back to ExecuteSQL Task UI, Click on Examples dropdown and select command like List Tables.<\/li>\n<li>Click Test \/ Preview button.<\/li>\n<\/ol>\n<h3>Create DynamoDB Table Example<\/h3>\n<p>Now lets look at how to create DynamoDB table in SSIS Amazon DynamoDB ExecuteSQL Task.<\/p>\n<p>Change your Command Type Option to <strong>CreateTableSafe <\/strong>(Safe Suffix means, do not throw error if table already exists).<\/p>\n<p>Enter the following Command and Click Test \/ Preview Result button to create new table called Customers. Primary Key for table is CustomerID.<\/p>\n<pre class=\"lang:js decode:true\">{\r\n    \/*For more info visit : http:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/APIReference\/API_CreateTable.html *\/\r\n\r\n    TableName: 'Customers',\r\n    Wait : true, \/* Wait until table status is ACTIVE *\/ \r\n    AttributeDefinitions: [\r\n        \/*Below two columns used in Composite Primary Key *\/\r\n        {\r\n            AttributeName: 'CustomerID',\r\n            AttributeType: 'S'\r\n        }\r\n    ],\r\n    KeySchema: [\r\n        {\r\n            AttributeName: 'CustomerID',\r\n            KeyType: 'HASH'\r\n        }\r\n    ],\r\n    ProvisionedThroughput: {\r\n        ReadCapacityUnits: 5,\r\n        WriteCapacityUnits: 5\r\n    }\r\n}\r\n<\/pre>\n<p>&nbsp;<\/p>\n<h2>Write data to Amazon DynamoDB in SSIS<\/h2>\n<p>Loading data into Amazon DynamoDB can be easily done using <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-dynamodb-destination\/\" target=\"_blank\" rel=\"noopener\">SSIS DynamoDB\u00a0Destination Connector.<\/a>\u00a0It supports loading data two different ways. You can insert Raw JSON documents or Masp individual columns too. Let&#8217;s look at both ways.<\/p>\n<h3>Create Sample DynamoDB Table (via AWS Console)<\/h3>\n<div><\/div>\n<div>In the previous section, we mentioned how to create a DynamoDB Table using DynamoDB ExecuteSQL Task. If you want to learn how to create DynamoDB Table via Console then follow below steps. You can skip reading this section if you already created sample Customers table or know how this process works.<\/div>\n<div>\n<ol>\n<li><a>In order to connect to Amazon DynamoDB from SSIS you will need Access Key and Secret Key. Ask your SysAdmin or responsible person to provide that to you. Your keys will look something like this: (<b>this is just example key which may differ in your case<\/b>)<\/a>\n<pre>AccessKey: AKIAIOSFODNN7EXAMPLE\r\nSecretKey: wJalrXUtnFEMI\/K7MDENG\/bPxRfiCYEXAMPLEKEY\r\n<\/pre>\n<p><a href=\"http:\/\/docs.aws.amazon.com\/IAM\/latest\/UserGuide\/id_credentials_access-keys.html\" target=\"_blank\" rel=\"noopener\">Click here<\/a>\u00a0to read more how to get your AccessKey and Secret Key<\/li>\n<li>For this sample exercise we will need new DynamoDB table (with CustomerID column as HASH key, see below screenshots). To create new dynamoDB table perform following steps\n<ul>\n<li>Click on create table under DynamoDB console<\/li>\n<li>On Primary Key screen give table name (e.g. Customer), Pick Key Type=HASH, enter keyname=CustomerID and click next<br \/>\n<img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-aws-dynamodb-create-table.png\" alt=\"Create Amazon DynamoDB Table for SSIS Testing - Primary Key HASH or RANGE\" \/><\/li>\n<li>On index screen no need to enter anything for this exercise so just click next<\/li>\n<li>On Read\/Write throughput just enter 1 in both fields and click next<br \/>\n<img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-aws-dynamodb-create-table-read-write-throughput.png\" alt=\"Create Amazon DynamoDB Table for SSIS Testing - Read WRITE Throughput\" \/><\/li>\n<li>Review and finalize table creation by clicking Create. It may take few minutes to provision DynamoDB table (Check for AVAILABLE status)<br \/>\n<img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-aws-dynamodb-create-table-status-check.png\" alt=\"Create Amazon DynamoDB Table for SSIS Testing - Verify Status\" \/><\/li>\n<\/ul>\n<\/li>\n<li>Once you have created DynamoDB table, got Account Key (its like UserID) and Secret Key (its like password) you may proceed to next section.<\/li>\n<\/ol>\n<\/div>\n<h3>Load data into DynamoDB (Column Mappings Mode)<\/h3>\n<p>First lets look at how to load sample Customers data into DynamoDB Table using Simple column mapping mode.<\/p>\n<div><a id=\"A_StepByStep\"><\/a>In this section you will learn\u00a0how to use Amazon DynamoDB Destination Adapter to write data to Amazon DynamoDB Table.<\/div>\n<div><\/div>\n<div>\n<ol>\n<li>From the SSIS toolbox drag and drop\u00a0<i>Data Flow Task<\/i>\u00a0on the control flow designer surface.<\/li>\n<li>Double click on the Data Flow task to see Data Flow designer surface.<\/li>\n<li>Right Click in Connection Manager Panel and select [New Connection&#8230;] menu item.\n<div style=\"width: 268px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" title=\"Create new SSIS connection\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-aws-dynamodb-pick-connection-type-click.png\" alt=\"Create new SSIS connection\" width=\"258\" height=\"182\" \/><p class=\"wp-caption-text\">Create new SSIS connection<\/p><\/div><\/li>\n<li>Pick <strong>ZS-AWS-STORAGE<\/strong> connection type. On New Connection Dialogbox Select ServiceType from Top Dropdown, Enter AccessKey and SecrentKey and Click Test connection to verify credentials.<br \/>\n<img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-aws-dynamodb-pick-connection-type.png\" alt=\"Create SSIS Amazon DynamoDB Connection - Choose Type\" \/><br \/>\n<img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-amazon-dynamodb-destination-configure-connection.png\" alt=\"Configure SSIS Amazon DynamoDB Destination Connection\" \/><\/li>\n<li>Click OK to save connection information.<\/li>\n<li>From the SSIS toolbox drag and drop <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/dummy-data-source-free\/\" target=\"_blank\" rel=\"noopener\">ZS Dummy Data Source<\/a>\u00a0on the dataflow designer surface.<\/li>\n<li>Double click Dummy Data Source to configure it.<\/li>\n<li>From Template pick Customer and enter row count=50 (For sample dataset has less than 100 unique values so lets pick small number).<br \/>\n<img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-aws-dynamodb-sample-data.png\" alt=\"Configure SSIS Dummy Data Generator Source\" \/><\/li>\n<li>From the SSIS toolbox drag and drop\u00a0<i>Amazon DynamoDB Destination<\/i>\u00a0on the dataflow designer surface.<\/li>\n<li>Now single click on the Dummy Data Source, once you see blue arrow from source &#8230; connect it to DynamoDB Destination.<\/li>\n<li>Now double click Amazon DynamoDB Destination to configure it.<\/li>\n<li>On [Connection Manager] tab select DynamoDB connection manager.<br \/>\n<img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-amazon-dynamodb-destination-select-adapter-connection.png\" alt=\"Configure SSIS Amazon DynamoDB Destination Adapter - Connection Tab\" \/><\/li>\n<li>Click on [Component Properties] tab and select AccessMode=Table and Pick DynamoDB table from Tables dropdown list.\n<div style=\"width: 599px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-amazon-dynamodb-destination-select-table.png\" alt=\"Configure SSIS Amazon DynamoDB Destination Adapter - Component Tab\" width=\"589\" height=\"527\" \/><p class=\"wp-caption-text\">Configure SSIS Amazon DynamoDB Destination Adapter &#8211; Component Tab<\/p><\/div><\/li>\n<li>Click on [Mappings] tab and verify mapping. If dynamoDB table is new table and its empty then all input columns will be automatically mapped. If DynamoDB table is existing table then you can manually pick mapping columns by dragging it from source list to target list.\n<div style=\"width: 638px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-amazon-dynamodb-destination-select-mappings.png\" alt=\"Configure SSIS Amazon DynamoDB Destination Adapter - Mapping Tab\" width=\"628\" height=\"572\" \/><p class=\"wp-caption-text\">Configure SSIS Amazon DynamoDB Destination Adapter &#8211; Mapping Tab<\/p><\/div><\/li>\n<li>Click OK to save settings.<\/li>\n<li>Execute the package and verify target data by going to your AWS Console under DynamoDB section.\n<div style=\"width: 282px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-dynamodb-write-data-sample.png\" alt=\"Execute SSIS Amazon DynamoDB Destination Adapter - Load Data\" width=\"272\" height=\"175\" \/><p class=\"wp-caption-text\">Execute SSIS Amazon DynamoDB Destination Adapter &#8211; Load Data<\/p><\/div><\/li>\n<li>That&#8217;s it. Now you can go back to your AWS COnsole and verify inserted data in DynamoDB Table.\n<div style=\"width: 812px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-dynamodb-console-verify-record-count.png\" alt=\"SSIS Load Test - View DynamoDB Data in AWS Console - Record Count Check\" width=\"802\" height=\"371\" \/><p class=\"wp-caption-text\">SSIS Load Test &#8211; View DynamoDB Data in AWS Console &#8211; Record Count Check<\/p><\/div><\/li>\n<\/ol>\n<\/div>\n<div>\n<h2><\/h2>\n<\/div>\n<h3>Insert JSON documents into DynamoDB (RAW Mode)<\/h3>\n<p>Previous simple approach can be used if you have simple JSON structure in DynamoDB (i.e. no nested array). Now let&#8217;s look at how to create nested JSON documents and load into DynamoDB using RAW loading approach. With this method you can create nested JSON from multiple SQL Server tables or other sources (e.g. File, Oracle, MySQL, DB2).<\/p>\n<p>You can use <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-generator-transform\/\">JSON Generator Transform<\/a> or Template Transform to generate JSON documents in Data flow and then load into DynamoDB. <a href=\"https:\/\/zappysys.com\/blog\/category\/ssis\/components\/ssis-json-generator-transform\/\">Check these article to learn more on JSON Generator use cases<\/a>.<\/p>\n<div><img decoding=\"async\" class=\"figureimage\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-destination\/ssis-dynamodb-insert-json-documents.png\" alt=\"Amazon DynamoDB Data Load - Inserting Raw JSON Document\" \/><\/div>\n<div><\/div>\n<div>Video Tutorial &#8211; Creating Nested JSON for data loading<\/div>\n<div><\/div>\n<div>Below video tutorial was created for <a href=\"https:\/\/zappysys.com\/blog\/tag\/mongodb\/\" target=\"_blank\" rel=\"noopener\">MongoDB<\/a> but concepts are almost identical for DynamoDB data loading.<\/div>\n<div><\/div>\n<div><div class=\"lyte-wrapper fourthree\" style=\"width:480px;max-width:100%;margin:5px auto;\"><div class=\"lyMe\" id=\"WYL_FkQjUahzMJQ\"><div id=\"lyte_FkQjUahzMJQ\" data-src=\"https:\/\/zappysys.com\/blog\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FFkQjUahzMJQ%2Fhqdefault.jpg\" class=\"pL\"><div class=\"tC\"><div class=\"tT\"><\/div><\/div><div class=\"play\"><\/div><div class=\"ctrl\"><div class=\"Lctrl\"><\/div><div class=\"Rctrl\"><\/div><\/div><\/div><noscript><a href=\"https:\/\/youtu.be\/FkQjUahzMJQ\" rel=\"nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=https%3A%2F%2Fi.ytimg.com%2Fvi%2FFkQjUahzMJQ%2F0.jpg\" alt=\"\" width=\"480\" height=\"340\" \/><br \/>Watch this video on YouTube<\/a><\/noscript><\/div><\/div><div class=\"lL\" style=\"max-width:100%;width:480px;margin:5px auto;\"><\/div><\/div>\n<div><\/div>\n<h2>Read from Amazon DynamoDB in SSIS<\/h2>\n<p>Now lets move onto the next part &#8211; How to read data from DynamoDB in SSIS. DynamoDB\u00a0is NoSQL database and it doesn&#8217;t have support for SQL Query language like any other RDBMS.\u00a0But no worry.. If you using <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-dynamodb-source\/\" target=\"_blank\" rel=\"noopener\">SSIS DynamoDB Source Connector<\/a> then it supports custom SQL query language so it turns SQL into DynamoDB native API commands. This makes it super easy for any SQL Developer to use connector in drag and drop manner saving huge amount of time.<\/p>\n<p>Let&#8217;s see how to read data from DyanmoDB Table<\/p>\n<ol>\n<li>Drag data flow<\/li>\n<\/ol>\n<h3>Specifying Options in WITH Clause of DynamoDB Query:<\/h3>\n<ul>\n<li>Specify SCAN mode using <em>SCAN<\/em> option\n<pre class=\"codeblock\">select * from mytable where SomeColumn &gt; 55 WITH(SCAN)<\/pre>\n<\/li>\n<li>Specify SCAN mode with LIMIT of 1000 rows\n<pre class=\"codeblock\">select * from mytable where SomeColumn &gt; 55 WITH(SCAN, LIMIT=1000)<\/pre>\n<\/li>\n<li>Specify QUERY mode using <em>QUERY<\/em> option\n<pre class=\"codeblock\">select * from mytable where MyHashKeyColumn = 'XYZ' And MyRangeKey &gt; '1223' WITH(QUERY)<\/pre>\n<\/li>\n<li>Specify QUERY mode using <em>QUERY<\/em> option, and use of <em>INDEX<\/em>\n<pre class=\"codeblock\">select * from mytable where MyHashKeyColumn = 'XYZ' And MyRangeKey &gt; '1223' and Phone LIKE '111-%' WITH(QUERY, INDEX=idxPhone)<\/pre>\n<\/li>\n<\/ul>\n<h3>Query Amazon DynamoDB with Date\/Time column<\/h3>\n<p>There is no Datetime datatype in DynamoDB but if you are storing your date values in <a href=\"http:\/\/en.wikipedia.org\/wiki\/ISO_8601\" target=\"_blank\" rel=\"noopener\">ISO 8601 DateTime Format<\/a> as string then your query will understand automatically if you specify &gt;<em>, &gt;=, &lt;, &lt;= or BETWEEN<\/em> Filter Condition<\/p>\n<pre class=\"lang:tsql decode:true \">select * from Orders where OrderDate &gt; '2015-12-31T23:59:59.000Z' WITH(SCAN)<\/pre>\n<h3>Using SSIS variable to query DynamoDB Date\/Time column<\/h3>\n<p>If you want to make your query dynamic then you can use SSIS variable placeholder (use quote around it). If your variable DataType is datetime then you can format it using following way so it has ISO date format. If your variable DataType is String then make sure its correctly formatted.<\/p>\n<pre class=\"lang:tsql decode:true \">select * from Orders where OrderDate &gt; '{{User::vMyDate,yyyy-MM-ddTHH:mm:ssZ}}' WITH(SCAN)<\/pre>\n<p><a href=\"http:\/\/en.wikipedia.org\/wiki\/ISO_8601\" target=\"_blank\" rel=\"noopener\">Click here to see various ISO date formats<\/a><\/p>\n<h3>Amazon DynamoDB Query Examples (DynamoDB Filter) :<\/h3>\n<pre class=\"lang:tsql decode:true \">-- Selecting all columns \r\nselect * from CustomerTest\r\n\r\n-- Selecting multiple columns \r\nselect CustomerID,CompanyName from CustomerTest\r\n\r\n-- Selecting multiple columns, where some attribute name has space in it\r\nselect CustomerID,[Contact Title] from CustomerTest\r\n\r\n-- Find records where City attribute is missing (Missing is different than actual NULL value {City: null, Id:1} -vs- {Id:1} )\r\n\r\nselect * from CustomerTest Where City IS  NULL \r\n-- Find records where City attribute is NULL (i.e. attribute is found but value is NULL e.g. {City: null, Id:1} )\r\n\r\nselect * from CustomerTest Where City =  NULL \r\n\r\n-- Using Where clause with simple condition, select all columns\r\nselect * from CustomerTest Where CustomerID='ALC3R'\r\n\r\n-- Limiting records returned from query using TOP clause (Similar as LIMIT found in some RDBMS query engine)\r\nselect top 7 * from CustomerTest\r\n\r\n-- Using OR  \r\nselect * from CustomerTest Where CustomerID = 'ALFKI' OR CustomerID = 'BOLID'\r\n\r\n-- Using AND  \r\nselect * from CustomerTest Where CustomerID = 'ALFKI' AND Age &gt;\r\n 3\r\n\r\n-- Using comparison operators \r\nselect * from CustomerTest Where CustomerID &lt;&gt; 'ALFKI'\r\n\r\nselect * from CustomerTest Where CustomerID != 'ALFKI'\r\n\r\nselect * from CustomerTest Where Age &gt; 5\r\n\r\nselect * from CustomerTest Where Age &gt;= 5\r\n\r\nselect * from CustomerTest Where Age &lt; 5\r\n\r\nselect * from CustomerTest Where Age = 5 AND CustomerID = 'C5'<\/pre>\n<p>&nbsp;<\/p>\n<h2>Amazon DynamoDB Source Connector Screenshots<\/h2>\n<h3>Amazon DynamoDB Source &#8211; Configure Connection<\/h3>\n<p><img decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-amazon-dynamodb-source-configure-connection.png\" alt=\"SSIS Amazon DynamoDB Source Connector General Settings\" \/><\/p>\n<div>\n<h3>Amazon DynamoDB Source &#8211; Query DynamoDB using SQL language<\/h3>\n<p><img decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-amazon-dynamodb-source-settings.png\" alt=\"SSIS Amazon DynamoDB Source Connector - Query DynamoDB using SQL language\" \/><\/p>\n<\/div>\n<div>\n<h3>Query Amazon DynamoDB &#8211; Read from Table Mode<\/h3>\n<div style=\"width: 541px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-amazon-dynamodb-source-table-data-preview.png\" alt=\"SSIS Amazon DynamoDB Source - Read from Table\" width=\"531\" height=\"349\" \/><p class=\"wp-caption-text\">Query Amazon DynamoDB &#8211; Read from Table Mode<\/p><\/div>\n<\/div>\n<div>\n<h3>Amazon DynamoDB Source &#8211; Select Columns<\/h3>\n<div style=\"width: 660px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-amazon-dynamodb-source-select-columns.png\" alt=\"SSIS Amazon DynamoDB Source Connector - Select Columns\" width=\"650\" height=\"480\" \/><p class=\"wp-caption-text\">Amazon DynamoDB Source &#8211; Select Columns<\/p><\/div>\n<\/div>\n<div>\n<h3>Query Amazon DynamoDB &#8211; Read from nested array using JSON Path<\/h3>\n<div style=\"width: 762px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-dynamodb-extract-array-read-json-documents-jsonpath.png\" alt=\"SSIS Amazon DynamoDB Source Connector - Read from nested array using JSON Path\" width=\"752\" height=\"530\" \/><p class=\"wp-caption-text\">Query Amazon DynamoDB &#8211; Read from nested array using JSON Path<\/p><\/div>\n<\/div>\n<div>\n<h3>Query Amazon DynamoDB &#8211; Advanced JSON Filter Options<\/h3>\n<p><img decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-dynamodb-extract-array-read-json-documents-jsonpath-options.png\" alt=\"SSIS Amazon DynamoDB Source Connector - Advanced JSON Filter Options\" \/><\/p>\n<\/div>\n<div>\n<h3>Query Amazon DynamoDB\u00a0&#8211; Extract RAW JSON documents<\/h3>\n<p><img decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-amazon-dynamodb-extract-json-documents-raw-mode.png\" alt=\"SSIS Amazon DynamoDB Source Connector - Amazon DynamoDB Source - Extract RAW JSON documents\" \/><\/p>\n<\/div>\n<div>\n<h3>Amazon DynamoDB Source &#8211; Extract data from DynamoDB<\/h3>\n<p><img decoding=\"async\" class=\"figureimage\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-source\/ssis-amazon-dynamodb-source-extract-data-sample.png\" alt=\"SSIS Amazon DynamoDB Source Connector - Extract data from DynamoDB\" \/><\/p>\n<h2><\/h2>\n<h2>Update Documents in DynamoDB<\/h2>\n<p>Now let&#8217;s look at how to Update Documents in DynamoDB. Amazon DynamoDB does not allow Bulk Update so you have to do row by row processing. You have to submit UpdateItem Command as per <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/APIReference\/API_UpdateItem.html\" target=\"_blank\" rel=\"noopener\">this document<\/a>. We will update Document for matching condition and update specific columns in this example. By default Document is matched By Key unless you supply additional Condition in the command (e.g. &#8220;ConditionExpression&#8221;: &#8220;LastPostedBy = :val2&#8221; ) .<\/p>\n<ol>\n<li>Drag <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/dummy-data-source-free\/\" target=\"_blank\" rel=\"noopener\">ZS Dummy Data Source<\/a> and configure like previous section with Customers Template. You can also use OLEDB Source for read DB data.<\/li>\n<li>Now drag <a href=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/ssis-template-transform.htm\">ZS Template Transform<\/a>. You can enter command\u00a0 like below to match record by Key and Update CompanyName and Phone fields (for demo we added -MY-NEW suffix in the data )\n<pre class=\"lang:js decode:true\">{\r\n    \"TableName\": \"Customers\",\r\n    \"Key\": { \"CustomerID\": { \"S\": \"&lt;%CustomerID%&gt;\" } },\r\n    \"UpdateExpression\": \"set CompanyName = :val1, Phone = :val2\",\r\n    \"ExpressionAttributeValues\": {\r\n        \":val1\": {\"S\": \"&lt;%CompanyName,JSONENCODE%&gt;-MY-NEW\"},\r\n        \":val2\": {\"S\": \"&lt;%Phone,JSONENCODE%&gt;-MY-NEW\"}\r\n    }\r\n}<\/pre>\n<p>If you have multi Key then use like this (e.g. CustomerID + ProductID )<\/p>\n<pre class=\"lang:default decode:true\">\"Key\": { \"CustomerID\": { \"S\": \"&lt;%CustomerID%&gt;\" } ,\u00a0 \"ProductID\": { \"S\": \"&lt;%ProductID%&gt;\" } \u00a0 },<\/pre>\n<p>Also you can add additional condition on the top of Key JOIN criteria like below (e.g. Match Country too)<\/p>\n<pre class=\"lang:js decode:true\">{\r\n    \"TableName\": \"Customers\",\r\n    \"Key\": { \"CustomerID\": { \"S\": \"&lt;%CustomerID%&gt;\" } },\r\n    \"UpdateExpression\": \"set CompanyName = :val1, Phone = :val2\",\r\n    \"ConditionExpression\": \"Country = :val3\",\r\n    \"ExpressionAttributeValues\": {\r\n        \":val1\": {\"S\": \"&lt;%CompanyName,JSONENCODE%&gt;-MY-NEW\"},\r\n        \":val2\": {\"S\": \"&lt;%Phone,JSONENCODE%&gt;-MY-NEW\"},\r\n        \":val3\": {\"S\": \"&lt;%Country,JSONENCODE%&gt;\"}\r\n    }\r\n}<\/pre>\n<p>&nbsp;<\/p>\n<div id=\"attachment_5387\" style=\"width: 960px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-amazon-dynamodb-update-example.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-5387\" class=\"size-full wp-image-5387\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-amazon-dynamodb-update-example.png\" alt=\"Update Amazon DynamoDB Table - Use SSIS Template Transform\" width=\"950\" height=\"586\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-amazon-dynamodb-update-example.png 950w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-amazon-dynamodb-update-example-300x185.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-amazon-dynamodb-update-example-768x474.png 768w\" sizes=\"(max-width: 950px) 100vw, 950px\" \/><\/a><p id=\"caption-attachment-5387\" class=\"wp-caption-text\">Update Amazon DynamoDB Table &#8211; Use SSIS Template Transform<\/p><\/div><\/li>\n<li>Connect Template Transform to ZS DynamoDB Destination<\/li>\n<li>Now drag ZS Amazon DynamoDB Destination\n<ol>\n<li>On first tab Select Connection<\/li>\n<li>On second tab Change Action to <strong>Update<\/strong>, Select Table as <strong>Customers<\/strong><\/li>\n<li>On Mappings tab Map <strong>TemplateOutput<\/strong> column to <strong>__DOCUMENT__<\/strong> column. Remove any other mappings. If you dont see columns in Target just click Refresh.<\/li>\n<\/ol>\n<\/li>\n<li>Thats it now run Data flow to Update records. AFter execution you can review updated records in DynamoDB.<\/li>\n<\/ol>\n<h2>Call\/Execute Ad-Hoc DynamoDB commands<\/h2>\n<p>Sometimes you have need to call\u00a0ad-hoc Amazon DynamoDB commands which are different than read\/write. For that you can use <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-amazon-dynamodb-executesql-task\/\" target=\"_blank\" rel=\"noopener\">Amazon DynamoDB ExecuteSQL Task<\/a>.<\/p>\n<div style=\"width: 710px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-executesql-task\/ssis-amazon-dynamodb-create-table-request.png\"><img decoding=\"async\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/amazon-dynamodb-executesql-task\/ssis-amazon-dynamodb-create-table-request.png\" alt=\"Call Amazon DynamoDB API Commands (Create\/Drop Table, Get, Put)\" width=\"700\" \/><\/a><p class=\"wp-caption-text\">Call Amazon DynamoDB API Commands (Create\/Drop Table, Get, Put)<\/p><\/div>\n<h2>Conclusion<\/h2>\n<p>Amazon DynamoDB is one of the most popular Managed NoSQL database in cloud at fraction of cost of traditional RDBMS. Extracting\/Writing\/Updating data into DynamoDB can be challenge without right toolset. ZappySys AWS Connectors\/Tasks makes it super easy for various AWS Integration scenarios (S3, Redshift, DynamoDB, JSON, Redshift etc). Try <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/\">SSIS PowerPack for FREE<\/a>\u00a0to uncover many more things you can do.<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction In this article we will look at how to Read \/ Write Amazon DynamoDB in SSIS. ZappySys developed many AWS related components but in this article we will look at 3 Tasks\/Components for DynamoDB Integration Scenarios (Read, Write, Update, Bulk Insert, Create \/ Drop Table etc.).\u00a0We will discuss how to use\u00a0SSIS DynamoDB Source Connector [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5386,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[408,410,118,409,131,267],"tags":[29,142,6,82,3,12,120,4],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\r\n<title>How to Read \/ Write Amazon DynamoDB in SSIS | ZappySys Blog<\/title>\r\n<meta name=\"description\" content=\"Learn how to query Amazon DynamoDB using SQL query. Read Amazon DynamoDB, Update , Create, Alter, Drop using SSIS Amazon DynamoDB connectors without coding.\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"How to Read \/ Write Amazon DynamoDB in SSIS | ZappySys Blog\" \/>\r\n<meta property=\"og:description\" content=\"Learn how to query Amazon DynamoDB using SQL query. Read Amazon DynamoDB, Update , Create, Alter, Drop using SSIS Amazon DynamoDB connectors without coding.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/\" \/>\r\n<meta property=\"og:site_name\" content=\"ZappySys Blog\" \/>\r\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ZappySys\/\" \/>\r\n<meta property=\"article:published_time\" content=\"2016-07-01T13:27:53+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2018-11-14T18:10:37+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png\" \/>\r\n\t<meta property=\"og:image:width\" content=\"1137\" \/>\r\n\t<meta property=\"og:image:height\" content=\"657\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\r\n<meta name=\"author\" content=\"ZappySys\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/zappysys\/\" \/>\r\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"ZappySys\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/\",\"url\":\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/\",\"name\":\"How to Read \/ Write Amazon DynamoDB in SSIS | ZappySys Blog\",\"isPartOf\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png\",\"datePublished\":\"2016-07-01T13:27:53+00:00\",\"dateModified\":\"2018-11-14T18:10:37+00:00\",\"author\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82\"},\"description\":\"Learn how to query Amazon DynamoDB using SQL query. Read Amazon DynamoDB, Update , Create, Alter, Drop using SSIS Amazon DynamoDB connectors without coding.\",\"breadcrumb\":{\"@id\":\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#primaryimage\",\"url\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png\",\"contentUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png\",\"width\":1137,\"height\":657,\"caption\":\"Create new Amazon DynamoDB Connection in SSIS - Use Amazon DynamoDB Execute SQL Task - List Tables Example\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/zappysys.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Read \/ Write Amazon DynamoDB in SSIS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/zappysys.com\/blog\/#website\",\"url\":\"https:\/\/zappysys.com\/blog\/\",\"name\":\"ZappySys Blog\",\"description\":\"SSIS \/ ODBC Drivers \/ API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/zappysys.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82\",\"name\":\"ZappySys\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g\",\"caption\":\"ZappySys\"},\"sameAs\":[\"http:\/\/www.zappysys.com\/\",\"https:\/\/www.facebook.com\/ZappySys\/\",\"https:\/\/twitter.com\/https:\/\/twitter.com\/zappysys\/\"],\"url\":\"https:\/\/zappysys.com\/blog\/author\/admin\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Read \/ Write Amazon DynamoDB in SSIS | ZappySys Blog","description":"Learn how to query Amazon DynamoDB using SQL query. Read Amazon DynamoDB, Update , Create, Alter, Drop using SSIS Amazon DynamoDB connectors without coding.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/","og_locale":"en_US","og_type":"article","og_title":"How to Read \/ Write Amazon DynamoDB in SSIS | ZappySys Blog","og_description":"Learn how to query Amazon DynamoDB using SQL query. Read Amazon DynamoDB, Update , Create, Alter, Drop using SSIS Amazon DynamoDB connectors without coding.","og_url":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/","og_site_name":"ZappySys Blog","article_author":"https:\/\/www.facebook.com\/ZappySys\/","article_published_time":"2016-07-01T13:27:53+00:00","article_modified_time":"2018-11-14T18:10:37+00:00","og_image":[{"width":1137,"height":657,"url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png","type":"image\/png"}],"author":"ZappySys","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/zappysys\/","twitter_misc":{"Written by":"ZappySys","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/","url":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/","name":"How to Read \/ Write Amazon DynamoDB in SSIS | ZappySys Blog","isPartOf":{"@id":"https:\/\/zappysys.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#primaryimage"},"image":{"@id":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#primaryimage"},"thumbnailUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png","datePublished":"2016-07-01T13:27:53+00:00","dateModified":"2018-11-14T18:10:37+00:00","author":{"@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82"},"description":"Learn how to query Amazon DynamoDB using SQL query. Read Amazon DynamoDB, Update , Create, Alter, Drop using SSIS Amazon DynamoDB connectors without coding.","breadcrumb":{"@id":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#primaryimage","url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png","contentUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/07\/ssis-connect-amazon-dynamodb-executesql-task-local-live-connection.png","width":1137,"height":657,"caption":"Create new Amazon DynamoDB Connection in SSIS - Use Amazon DynamoDB Execute SQL Task - List Tables Example"},{"@type":"BreadcrumbList","@id":"https:\/\/zappysys.com\/blog\/how-to-query-amazon-dynamodb-read-write-update\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zappysys.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Read \/ Write Amazon DynamoDB in SSIS"}]},{"@type":"WebSite","@id":"https:\/\/zappysys.com\/blog\/#website","url":"https:\/\/zappysys.com\/blog\/","name":"ZappySys Blog","description":"SSIS \/ ODBC Drivers \/ API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zappysys.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82","name":"ZappySys","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g","caption":"ZappySys"},"sameAs":["http:\/\/www.zappysys.com\/","https:\/\/www.facebook.com\/ZappySys\/","https:\/\/twitter.com\/https:\/\/twitter.com\/zappysys\/"],"url":"https:\/\/zappysys.com\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/662"}],"collection":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/comments?post=662"}],"version-history":[{"count":14,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/662\/revisions"}],"predecessor-version":[{"id":5388,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/662\/revisions\/5388"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media\/5386"}],"wp:attachment":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media?parent=662"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/categories?post=662"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/tags?post=662"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}