Jarvis AI
Talent Solutions
Public Sector
About
Contact Us
image
CloudPublic SectorData IntegrationAWS Glue

Share Our Strength: Unifying MySQL and Salesforce Data on AWS for No Kid Hungry

How ASCENDING helped nonprofit Share Our Strength consolidate its No Kid Hungry campaign data from MySQL RDS and Salesforce into a unified AWS data lake using Glue and AppFlow.

Share Our Strength: Unifying MySQL and Salesforce Data on AWS for No Kid Hungry case study
2 SystemsMySQL RDS and Salesforce unified into one schema
$100M+Annual campaign revenue supported by the consolidated data pipeline
ZeroInfrastructure overhead using fully managed AWS Glue and AppFlow

Share Our Strength's No Kid Hungry campaign ran on two disconnected systems: a MySQL database on AWS RDS holding meal, hunger, and demographic records, and a separate Salesforce org managing grant applications and reports. ASCENDING built an AWS Glue and AppFlow pipeline that unified both sources into a single, analytics-ready schema in Amazon S3, giving analysts and business users one consistent view of campaign data.

Background

Share Our Strength is a national nonprofit that has led the fight against childhood hunger and poverty since 1984, raising over $100 million annually across several large-scale campaigns. No Kid Hungry, its first and most influential campaign, generates broad meal, hunger, poverty, and demographic data alongside grant applications and reporting activity used by data experts on Tableau, Power BI, QuickSight, and SageMaker for dashboards, reporting, and machine learning.

That data lives behind a complex data lake architecture designed to ingest, cleanse, and aggregate information from multiple external resources before it reaches the clean zone that downstream tools consume.

The Challenge

No Kid Hungry's operational data was split across two systems owned by two different teams, each with its own schema and its own release cadence.

  • MPA MySQL DB on AWS RDS held meal, hunger, poverty, and demographic records, while Salesforce independently managed grant applications and reports.
  • The two systems were managed by separate teams, creating friction for downstream analysts and business users trying to work from a single source of truth.
  • ETL processing had to be compatible with both MySQL and Salesforce schemas and transform each into a unified schema based on a mapping table supplied by the customer, without sacrificing performance or accuracy.
  • Salesforce organization and county records were not natively compatible with the MySQL data lake schema, and building a reliable, automatic bi-directional sync between the two was time-consuming and labor-intensive to do manually.

Why ASCENDING

Share Our Strength needed a platform with strong SaaS compatibility and analytical power to bridge MySQL and Salesforce without adding operational burden. As an AWS Advanced Tier Services Partner with demonstrated Data and Analytics Competency, ASCENDING brought hands-on experience from similar data consolidation engagements, and was selected as the solution provider and consulting partner to deliver the migration and integration.

The Solution

ASCENDING designed two complementary AWS Glue and AppFlow pipelines that together closed the gap between the MySQL and Salesforce systems.

For consolidating and aggregating the two data sources into a unified analytics schema:

AWS Glue ETL architecture unifying MySQL RDS and Salesforce data into S3

  1. AWS Glue Crawlers scanned both the MySQL RDS tables and S3-based static lookup tables, registering their schemas in the Glue Data Catalog.
  2. A Glue job read the reference/lookup tables from the catalog and applied the customer-provided mapping table to transform each source schema into one unified format.
  3. Amazon Athena ran ad hoc queries against the catalog for validation before the transformed output was written back to S3.
  4. The unified records landed in an output staging bucket in Amazon S3, ready for consumption by Tableau, Power BI, QuickSight, and SageMaker.

For keeping Salesforce organization and county records in sync with the MySQL data lake:

AWS AppFlow bi-directional data flow between Salesforce and MySQL RDS

  1. AWS AppFlow built a managed connection to Salesforce and read reference tables directly into the S3 staging layer.
  2. Processed output from the data lake was sent back to the corresponding Salesforce objects, completing a bi-directional flow between the two systems.
  3. Salesforce's schema was automatically registered with the AWS Glue Data Catalog, so a Glue Crawler could refresh the corresponding tables whenever the Salesforce schema changed.
  4. The client retained full control over pipeline execution schedules, running syncs on their own cadence without provisioning or managing servers.

The Outcome

The combined Glue and AppFlow pipelines gave Share Our Strength one unified schema across MySQL and Salesforce, cutting the manual work previously needed to reconcile the two systems.

  • Unified the output schema from MySQL RDS and Salesforce into a single format in S3, reducing storage footprint and making downstream analytics and visualization more feasible.
  • Automated a bi-directional data flow between Salesforce and MySQL RDS, transferring data at scale without provisioning system resources.
  • Kept the Glue Data Catalog current automatically, so schema changes in Salesforce no longer required manual crawler or table updates.
  • Gave the client full control over pipeline execution schedules to match their own operating cadence.
  • Ran entirely on AWS managed services, leaving the client with zero infrastructure overhead to maintain.
Technology Used

Built with AWS Data Integration and ETL Services

AWS GlueAWS Glue Data CatalogAWS AppFlowAmazon RDS (MySQL)Amazon S3Amazon Athena

Ready to write your success story?

Talk to our team about your cloud, AI, or staffing challenges.