Background
Headquartered in St. Louis, Missouri, Advocado is a media data platform that connects both offline and online audience insights together to bring real-time business intelligence to marketers around the world. The Advocado SaaS platform uses signal data via patented watermark technology, natural language processing, automated content recognition, and real-time weather updates to instantly generate, integrate, and analyze data to measure activity.
Advocado’s platform helps provide clarity with unique data sets that advertisers, media companies, and third-party agencies can use to track results and adjust their marketing spend in real-time. The Advocado platform is robust, boosting online campaigns instantly when consumers are actively engaged, allowing marketers to see the results immediately so they can adjust and tailor future activities to meet demand.
The Situation
Advocado chose to host their application stack on AWS due to its highly flexible and vast native toolsets. They knew they needed an environment that was easy to deploy and manage, and that could scale easily as their business needs change. By leveraging an AWS cloud architecture, they would eliminate the need to have to purchase hardware upfront that might sit idle during periods of inactivity, and they would have the flexibility to adjust on the fly. Advocado first began by leveraging tools such as AWS Elastic Beanstalk, and while it supported their initial needs from a cloud operating perspective, it lacked the overall feature set and flexibility that was increasingly required by the business. In order to build and scale to meet these future requirements they would need to design a more robust AWS architecture.
The Challenge
When Advocado acquired a media reencoding product in early 2021, they were faced with not only migrating over an existing on-premises application, but to ensure they had the best platform for the combined organization. Advocado knew they needed additional flexibility to manage and integrate their application stack. Tasks like creating computing capacity and security groups with Elastic Beanstalk is often a simple task, but it does have some limitations. Elastic Beanstalk only manages application hosting, so provisioning and maintaining additional infrastructure requirements as well as orchestrating complex microservices would have to be done separately. Additionally, custom configurations in Elastic Beanstalk can run into performance issues if not configured correctly. So, in addition to planning for the on-premises to cloud migration, Advocado needed to conduct an internal discovery on the application itself, its dependencies, and to determine if in fact AWS Elastic Beanstalk would best support their future requirements.
The Solution
Advocado was introduced to Uturn Data Solutions based on many successful migration and application modernization projects that Uturn has completely over the years with various AWS start-up clients. Uturn’s Solution Architects began by educating the Advocado technical team on the differences between the Elastic Beanstalk platform and the newer Elastic Container Service (ECS) architecture, highlighting the different features and functionality between the two so they could make an informed decision.
As an approved Start-Up Migration Partner, Uturn was able to leverage AWS funding to conduct a thorough assessment of the environment, and to provide a full-scale migration plan. Through the discovery process Uturn also determined that while Advocado could continue with using the Elastic Beanstalk platform, since their new infrastructure could be triggered to look for new file notifications on demand (as opposed to running continuously), there would be better cost savings and easier management by containerizing the application on ECS and moving to AWS Fargate. AWS Fargate is a serverless, pay-as-you-go compute engine that removes the operational overhead of scaling, patching, securing, and managing servers for container hosting, and could further reduce the costs of operating the application in the AWS cloud.
Once the migration and modernization plans were finalized, Uturn’s cloud engineering team quickly built out the new ECS infrastructure environment, migrated and containerized Advocado’s reencoding application, and set up the appropriate triggers in the new landing zone. This new and innovative design would now have all application notifications automatically trigger the container to do the encoding only when new files were received. The application would then only run until everything was validated and then be automatically shut down. And since the platform supports traffic spikes by autoscaling, Advocado would no longer be faced with over-provisioning or for paying for unnecessary idle resources, all of which results in immediate cost savings and more predictable utilization.
In under two months, Uturn was able to migrate the customers on-prem application, containerize it on ECS, and build out a new landing zone to run the application on demand. The end result is a more cost effective, immutable architecture, with a simplified application integration engine. Uturn is now working on additional projects with Advocado to migrate their remaining Elastic Beanstalk environments over to ECS, and to address some additional security and compliance needs through Uturn’s Rocketry Rapid Launch offering. Uturn’s Rocketry framework is a proven and enterprise-ready set of Terraform modules created to reduced time-to-implementation for clients that have a need and desire to implement Infrastructure as Code and Modern DevOps practices into their processes.
“Uturn provided excellent communication throughout the project. Their solution architect was
extremely knowledgeable and [they] had great explanations for every design decision.”
– Andrew Ellison, Technical Lead at Advocado