I'm currently in the process of migrating our analytics warehouse from an on-premises SQL Server to Amazon Redshift. Surprisingly, the biggest challenge isn't the actual warehouse transition but trying to sort out the data ingestion layer. Our SQL Server warehouse currently uses a mix of SSIS packages, linked servers, flat file imports, and some outdated DTS packages that no one wants to deal with. We've got around 30 different data sources, including platforms like Salesforce, NetSuite, SAP, Workday, ServiceNow, and several internal databases.
With our shift to the cloud, none of the ingestion methods we have will work anymore. Linked servers aren't an option in Redshift, and SSIS packages need a complete rewrite or replacement. Additionally, we'll need a new strategy for flat file imports since there's no local file system to utilize. This means we're essentially rebuilding our entire ingestion layer from scratch while also migrating the warehouse, which is quite a lot to tackle all at once.
While the internal database replication to Redshift is going smoothly with AWS DMS, the ingestion of SaaS sources is where I'm feeling uncertain. Should we transform our SSIS packages into Python scripts that run on ECS? Should we rely on AWS Glue for everything? Or would it be worth investing in a third-party tool? The number of decisions we have to make feels daunting.
3 Answers
Have you thought about leveraging AWS Database Migration Service more extensively? Since you're already using it for internal databases, it can facilitate a lot of data movement without a complete rebuild of your process. You could use it to transfer data into S3 and then load it into Amazon Redshift, relying on AWS Glue or custom scripts only when necessary. This could save you significant effort compared to rewriting all those SSIS packages.
I faced a similar migration recently, and we took a structured approach by categorizing our sources. We used DMS for internal databases to directly replicate to Redshift, while for SaaS sources like Salesforce and NetSuite, we opted for a managed tool called Precog that writes directly to Redshift. For those tricky legacy feeds that involve flat files, we created minimal AWS Glue jobs. This three-tier method prevented us from overcomplicating things and allowed us to leverage each tool's strengths.
I recommend taking a phased approach. You should build the new ingestion layer to first push data into a staging area in S3 while keeping the old warehouse operational. Once you're confident that the new setup is reliable, that's when you can cut over to Redshift. Running both in parallel for a while gives you a safety net against data issues during the transition.

Related Questions
Biggest Problem With Suno AI Audio
Ethernet Signal Loss Calculator
Sports Team Randomizer
10 Uses For An Old Smartphone
Midjourney Launches An Exciting New Feature for Their Image AI
ShortlyAI Review