1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1699],{71699:function(e,t,a){a.r(t);var s=a(85893);a(31360),a(86523),a(22546),a(16206),a(5692);var i=a(35116);a(20297),a(85554),a(41664);var r=a(66045),n=a(67294),o=a(9008),l=a.n(o),c=a(97005),h=a(25675),d=a.n(h),m=a(8120);let p=e=>{let{data:t}=e,{frontmatter:a}=t,{title:o,BanDesktop:h,BanMobile:p,rightLogo:g}=a,[u,x]=(0,n.useState)(null);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(l(),{children:[(0,s.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"https://schema.org/","@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Home",item:"https://www.ittstar.com/"},{"@type":"ListItem",position:2,name:"Blogs",item:"https://www.ittstar.com/blogs"},{"@type":"ListItem",position:3,name:"Migrating Data from Data Warehouse using AWS Schema Conversion Tool (SCT)",item:"https://www.ittstar.com/migrating-data-from-data-warehouse-to-redshift"}]})}}),(0,s.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"https://schema.org","@type":"BlogPosting",mainEntityOfPage:{"@type":"WebPage","@id":"https://www.ittstar.com/migrating-data-from-data-warehouse-to-redshift"},headline:"Migrating Data from Data Warehouse to Redshift: A Step-by-Step Guide",description:"Learn the process of migrating data from traditional data warehouses to Amazon Redshift, covering planning, data preparation, transfer methods, and post-migration validation.",image:"",author:{"@type":"Organization",name:"ITTStar",url:"https://www.ittstar.com/"},publisher:{"@type":"Organization",name:"ITTStar",logo:{"@type":"ImageObject",url:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/ittstar_logo.webp"}},datePublished:""})}})]}),(0,s.jsxs)("section",{className:"",children:[(0,s.jsx)(r.default,{title:o,mobile:p,desktop:h,rightLogo:g}),(0,s.jsx)("nav",{class:"flex p-5 container-xl","aria-label":"Breadcrumb",children:(0,s.jsxs)("ol",{class:"inline-flex items-center space-x-1 md:space-x-2 rtl:space-x-reverse",children:[(0,s.jsx)("li",{class:"inline-flex items-center",children:(0,s.jsxs)("a",{href:"https://www.ittstar.com",class:"inline-flex items-center text-sm font-medium text-gray-700 hover:text-blue-600 dark:text-gray-400 dark:hover:text-white",children:[(0,s.jsx)("svg",{class:"w-3 h-3 me-2.5","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{d:"m19.707 9.293-2-2-7-7a1 1 0 0 0-1.414 0l-7 7-2 2a1 1 0 0 0 1.414 1.414L2 10.414V18a2 2 0 0 0 2 2h3a1 1 0 0 0 1-1v-4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v4a1 1 0 0 0 1 1h3a2 2 0 0 0 2-2v-7.586l.293.293a1 1 0 0 0 1.414-1.414Z"})}),"Home"]})}),(0,s.jsx)("li",{children:(0,s.jsxs)("div",{class:"flex items-center",children:[(0,s.jsx)("svg",{class:"rtl:rotate-180 w-3 h-3 text-gray-400 mx-1","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 6 10",children:(0,s.jsx)("path",{stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m1 9 4-4-4-4"})}),(0,s.jsx)("a",{href:"/blogs",class:"ms-1 text-sm font-medium text-gray-700 hover:text-blue-600 md:ms-2 dark:text-gray-400 dark:hover:text-white",children:"Blogs"})]})}),(0,s.jsx)("li",{children:(0,s.jsxs)("div",{class:"flex items-center",children:[(0,s.jsx)("svg",{class:"rtl:rotate-180 w-3 h-3 text-gray-400 mx-1","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 6 10",children:(0,s.jsx)("path",{stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m1 9 4-4-4-4"})}),(0,s.jsx)("a",{href:"/migrating-data-from-data-warehouse-to-redshift",class:"ms-1 text-sm font-medium text-gray-700 hover:text-blue-600 md:ms-2 dark:text-gray-400 dark:hover:text-white",children:" Migrating Data from Data Warehouse using AWS Schema Conversion Tool (SCT)"})]})})]})}),(0,s.jsx)("div",{className:"section container-xl",children:(0,s.jsx)("section",{class:"p-4",children:(0,s.jsx)("div",{class:"container-xl",children:(0,s.jsxs)("div",{class:"row",children:[(0,s.jsxs)("div",{class:"col-md-12 col-sm-12 text-black lg:text-justify",children:[(0,s.jsx)("h3",{class:"mt-8 text-2xl font-bold text-black",children:"Migrating Data from Data Warehouse to Redshift using AWS Schema Conversion Tool (SCT) and Data Extraction Agent"}),(0,s.jsxs)("p",{children:["In this blog, I will explain the components and configurations required to ",(0,s.jsx)(m.Z,{href:"/cloud-migration",children:"migrate Oracle data warehouse to Amazon Redshift"})," using AWS Schema Conversion Tool (SCT) and the Data Extraction Agent. Although Oracle Data Warehouse is used in this example, the same migration approach can be applied to other supported enterprise data warehouses. This implementation demonstrates a scalable approach for modernizing legacy analytics platforms on AWS. ."]}),(0,s.jsx)("p",{class:"font-semibold",children:"Setting up the components"}),(0,s.jsx)("p",{class:"font-semibold",children:"Source"}),(0,s.jsxs)("p",{children:["The migration environment includes an Oracle source database, an Amazon Redshift cluster, and ",(0,s.jsx)(m.Z,{href:"/cloud-managed-services",children:"AWS Schema Conversion Tool for Redshift migration"}),". AWS SCT analyzes the source schema, converts database objects to Amazon Redshift
1-compatible structures, and simplifies enterprise data warehouse migration with minimal manual effort."]}),(0,s.jsx)("p",{class:"font-semibold",children:"Target"}),(0,s.jsx)("p",{children:"Create a Redshift Cluster. I have created a cluster with 1 Node of size t2.small."}),(0,s.jsx)("p",{class:"font-semibold",children:"Schema Conversion Tool"}),(0,s.jsxs)("p",{children:[(0,s.jsx)(m.Z,{href:"/cloud-migration",children:"Oracle to Amazon Redshift migration using AWS SCT"})," automates schema assessment, object conversion, and migration planning before data transfer begins. This approach reduces migration complexity while improving compatibility between Oracle Data Warehouse and Amazon Redshift."]}),(0,s.jsx)("p",{class:"font-semibold",children:"JDBC Drivers"}),(0,s.jsx)("p",{children:"Download the JDBC drivers for Oracle and Redshift. These need to be copied to both the instances where SCT and Data Extraction Agent are installed."}),(0,s.jsx)("p",{class:"font-semibold",children:"Trust and Key Stores"}),(0,s.jsx)("p",{children:"Generate Java trust and key stores with passwords to be configured in both SCT and Data Extraction Agent. I have used the SettingsâGlobal SettingsâSecurity tab in SCT to generate trust and key store. I copied the same files onto the EC2 instance where Data Extraction Agent is installed. This will allow SSL connection from SCT to the Data Extraction Agent to be successful."}),(0,s.jsx)("p",{class:"font-semibold",children:"Data Extraction Agent"}),(0,s.jsxs)("p",{children:["The ",(0,s.jsx)(m.Z,{href:"/cloud-managed-services",children:"AWS SCT and Data Extraction Agent implementation"})," enables secure extraction of large datasets from enterprise data warehouses before loading them into Amazon Redshift. This approach is well suited for large-scale migration projects where performance and scalability are critical."]}),(0,s.jsx)("p",{children:"- Copy the setup file âaws-schema-conversion-tool-extractor-version.msiâ to the server and install the Agent."}),(0,s.jsx)("p",{children:"- Copy Oracle and Redshift JDBC drivers to the server."}),(0,s.jsx)("p",{children:"- Copy trust and key store files generated in the SCT tool to the server."}),(0,s.jsx)("p",{children:"- Select/Enter path to the drivers, trust and key stores when prompted."}),(0,s.jsx)("p",{children:"- Start the Extraction Agent by navigating to the installation directory in command prompt and running the batch file âStartAgent.batâ"}),(0,s.jsx)("p",{class:"font-semibold",children:"Security Groups and Network ACL"}),(0,s.jsx)("p",{children:"Make sure security groups and Network ACLs in the VPC allow communication between the SCT, Data Extraction Agent, Oracle RDS and Redshift instances over the ports used."}),(0,s.jsx)("p",{class:"font-semibold",children:"Configure SCT Project for Migration"}),(0,s.jsx)("p",{children:"1. Update JDBC Driver path under Settings âGlobal Settings âDrivers for Oracle and Redshift drivers."}),(0,s.jsx)("p",{children:"2. Generate trust and key stores under Settings âGlobal Settings âSecurity. Copy same trust and key stores onto the EC2 instance where Data Extraction Agent is installed."}),(0,s.jsx)("p",{children:"3. Update your AWS credentials and S3 Bucket Folder under SettingsâGlobal SettingsâAWS Profile. This is needed for the agent to upload extracted data to S3 bucket."}),(0,s.jsx)("p",{children:"4. Create a new project in SCT using FileâNew Project"}),(0,s.jsx)("p",{children:"- Select Data warehouse (OLAP)"}),(0,s.jsx)("p",{children:"- Oracle DW for Source"}),(0,s.jsx)("p",{children:"- Leave target as Amazon Redshift (This is the only option available)"}),(0,s.jsx)("p",{children:"5. Click on Connect to Oracle DW and provide connection details to the Oracle RDS instance and click on Test Connection to make sure connection is successful. I used the âService Nameâ for Type and provided the RDS endpoint details for the connection."}),(0,s.jsx)("p",{children:"6. Click on Connect to Redshift and provide connection details. Click on Test Connection to make sure connection is successful. After configuring both connections, Main View showing source and target server objects is displayed as highlighted in the picture below."}),(0,s.jsx)("p",{children:"7. Migrate the schema from Oracle DW to Redshift."}),(0,s.jsx)("p",{children:"- Right click on the schema to be migrated and select âconvert schemaâ."}),(0,s.jsx)("p",{children:"- Select the schema to be converted in the target and select âApply to databaseâ."}),(0,s.jsx)("p",{children:"- This will create the schema with all the objects in the Redshift database without any data. We will register the agent and migrate the data in the steps below."}),(0,s.jsx)("p",{children:"- Click on Viewâ Assessment Report View to identify any objects that need to be manually converted to Redshift."}),(0,s.jsx)("p",{children:"8. Register Agent"}),(0,s.jsx)("p",{children:"- In the AWS SCT tool, click on ViewâData Migration View."}),(0,s.jsx)("p",{children:"- Click on Register Button to register the SCT Extractor Agent."}),(0,s.jsx)("p",{children:"- Provide the description, Host name and port number (default 8192). Hostname can be Data Extraction Agent instanceâs public IP/hostname, private IP/hostname where you have VPN connection to your VPC. Select the checkbox âUse SSLâ and select the Trust and Key Store in the âSSL Tabâ."}),(0,s.jsx)("p",{children:"- Click on Test Connection and then Register."}),(0,s.jsx)("p",{children:"9. Create Local Migration Task"}),(0,s.jsx)("p",{children:"- Right click on Tables in Source Schema âCreate Local Task."}),(0,s.jsx)("p",{children:"- Select the âMigration Modeâ based on the requirement. I selected Extract, Upload & Copy because it will extract the data from the source and upload it to S3 bucket and then copy the files to the Redshift i.e. the target DW."}),(0,s.jsx)("p",{children:"- Click on Advanced tab and do the following(if required):"}),(0,s.jsx)("p",{children:"- If you want the migrated files to be in the local machine then select the checkbox."}),(0,s.jsx)("p",{children:"- In any of the columns if NULL values are present then select checkbox NULL Value as a string then give a space."}),(0,s.jsx)("p",{children:"- Uncheck two options below NULL value as a string."}),(0,s.jsx)("p",{children:"- In S3 Settings tab specify the S3 bucket name and test the task and click on Create."}),(0,s.jsx)("p",{children:"10. Start Migration"}),(0,s.jsx)("p",{children:"- Click on start, the migration task progress can be viewed as shown below."}),(0,s.jsx)("p",{children:"To verify the data in the target, connect to Redshift using SQL Client."}),(0,s.jsx)("p",{children:"I will publish more blogs on AWS DMS related services. Thanks for reading my blog. Do share feedback for further improvements."})]}),(0,s.jsx)("div",{class:"col-md-3 col-sm-12"})]})})})}),(0,s.jsxs)("div",{className:"pt-5",children:[(0,s.jsx)("h2",{className:"mb-5 text-center text-3xl font-semibold text-[#1d4c98]",children:"Our Proud Partners"}),(0,s.jsx)("div",{className:"bg-[#f5f5f5] py-8 border",children:(0,s.jsx)(c.Z,{speed:50,gradient:!1,pauseOnHover:!0,children:[{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/Healthcare-solutions/image+497.png"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/It_consulting_services/jpg1.png"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/Healthcare-solutions/image+500.png"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/Healthcare-solutions/image_501-removebg-preview+1.png"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/Healthcare-solutions/629a3d113e59ee069da94c78+1.png"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/Healthcare-solutions/image+503.png"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/image+5981+(1).png"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/HP_logo_2025.svg"},{src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/image+597.png"}].map((e,t)=>(0,s.jsx)(d(),{loading:"lazy",height:100,width:200,className:"h-12 w-auto mx-5",src:e.src,alt:e.alt||"logos"},t))})})]}),(0,s.jsx)(i.default,{})]})]})};t.default=p},16206:function(e,t,a){var s=a(85893),i=a(8540),r=a(31360),n=a(41664),o=a.n(n),l=a(67294);a(5692),a(20297);let c=e=>{let{title:t}=e,a=(0,l.useRef)(null);return(0,l.useEffect)(()=>
1{if(!a.current)return;let e=i.gsap.context(()=>{var e;let t=document.querySelector(".header1"),s=(null==t?void 0:t.clientHeight)||0,r=(null===(e=a.current)||void 0===e?void 0:e.offsetHeight)||0,n=i.gsap.timeline();n.fromTo(".banner-regular-title",{y:20},{y:0,opacity:1,duration:.5}).fromTo(".breadcrumb",{y:20},{y:0,opacity:1,duration:.5},">-.3");let o=i.gsap.timeline({ease:"none",scrollTrigger:{trigger:a.current,start:"top ".concat(s),end:"+=".concat(r),scrub:!0}});o.fromTo(".banner-single .circle",{y:0},{y:.15*r},"<")},a);return()=>e.revert()},[]),(0,s.jsx)("div",{className:"banner banner-single ",ref:a,children:(0,s.jsx)("div",{className:"",children:(0,s.jsxs)("div",{className:"banner-wrapper relative text-center",children:[(0,r.gI)(t,"h1","mb-8 banner-regular-title opacity-0"),(0,s.jsxs)("ul",{className:"breadcrumb flex items-center justify-center opacity-0",children:[(0,s.jsx)("li",{children:(0,s.jsx)(o(),{className:"text-primary",href:"/",children:"Home"})}),(0,s.jsx)("li",{className:"mx-2",children:"/"}),(0,s.jsx)("li",{className:"capitalize",children:t})]}),(0,s.jsx)("div",{className:"bg-theme banner-bg col-12 absolute top-0 left-0 bg-theme-light before:hidden after:hidden",children:(0,s.jsx)("img",{priority:"true",fill:!0,src:"https://ittstarwebsite.s3.us-east-1.amazonaws.com/ittstar_home_page/extra_pages/single-banner-wave-1.svg",sizes:"100vw",alt:""})})]})})})};t.Z=c},5692:function(e,t,a){a(85893)},85554:function(e,t,a){a(85893),a(30808),a(67294),a(13726),a(20297)},8540:function(e,t,a){var s=a(89521),i=a(56546);a.o(s,"gsap")&&a.d(t,{gsap:function(){return s.gsap}}),a.o(i,"gsap")&&a.d(t,{gsap:function(){return i.gsap}}),s.gsap.registerPlugin(i.ScrollTrigger)}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.