Wednesday, April 30, 2025

How Flutter UKI optimizes information pipelines with AWS Managed Workflows for Apache Airflow

This put up is co-written with Monica Cujerean and Ionut Hedesiu from Flutter UKI.

On this put up, we share how Flutter UKI transitioned from a monolithic Amazon Elastic Compute Cloud (Amazon EC2)-based Airflow setup to a scalable and optimized Amazon Managed Workflows for Apache Airflow (Amazon MWAA) structure utilizing options like Kubernetes Pod Operator, steady integration and supply (CI/CD) integration, and efficiency optimization strategies.

About Flutter UKI

As a division of Flutter Leisure, Flutter UKI stands on the forefront of the sports activities betting and gaming business. Flutter UKI presents a various portfolio of leisure choices, encompassing sports activities wagering, on line casino video games, bingo, and poker experiences. Flutter UKI’s digital presence is powerful, working by way of an array of famend on-line manufacturers. These embrace the long-lasting Paddy Energy, Sky Betting and Gaming, and Tombola. Whereas Flutter UKI has established a powerful on-line foothold, it maintains a big bodily presence with a community of 576 Paddy Energy betting retailers strategically situated throughout the UK and Eire.

The Knowledge workforce at Flutter UKI is integral to the corporate’s mission of utilizing information to drive enterprise success and innovation. Specializing in information, their groups are devoted to making sure the seamless integration, administration, and accessibility of knowledge throughout a number of aspects of the group. By creating sturdy information pipelines and sustaining excessive information high quality requirements, Flutter UKI empowers stakeholders with dependable insights, optimizes operational efficiencies, and enhances the consumer expertise. Its dedication to information excellence underpins its efforts to stay on the forefront of the net gaming and leisure business, delivering worth and strategic benefit to the enterprise.

The journey from self managing Airflow on Amazon EC2 to working Airflow workloads at scale utilizing Amazon MWAA

Flutter UKI’s information orchestration story started in 2017 with a modest Apache Airflow deployment on EC2 situations. As the corporate’s digital footprint expanded, so did their information pipeline necessities, resulting in an more and more advanced monolithic cluster that demanded fixed consideration and useful resource scaling. The operational overhead of managing these EC2 situations grew to become a big problem for his or her engineering groups. In 2022, Flutter UKI reached a crossroads. They wanted to decide on between re-architecting their service on Amazon Elastic Kubernetes Service (Amazon EKS) or embracing Amazon Managed Workflows for Apache Airflow (MWAA).

Flutter UKI was trying to rework their information orchestration service from a resource-intensive, self-managed system to a extra environment friendly, managed service that might permit them to give attention to their core enterprise targets fairly than infrastructure administration. By means of intensive proof-of-concept (POC) testing and shut collaboration with AWS Enterprise Help, Flutter UKI gained confidence within the potential of Amazon MWAA to deal with their subtle workloads at scale. Their alternative of MWAA over a self-managed answer on Amazon EKS mirrored Flutter UKI’s strategic give attention to utilizing managed providers to scale back operational complexity and speed up innovation.

The migration to Amazon MWAA adopted a methodical method. There was intensive testing of a number of POCs. Through the POCs, the engineering workforce discovered MWAA to have a superb ease of use, which helped them cut back the training curve leading to sooner. Studying from every POC, they iterated on the ultimate structure by making data-driven choices. Beginning with a small subset of directed acyclic graphs (DAG), the Flutter UKI workforce expanded their deployment over time, steadily transferring tons of and finally 1000’s of workflows to the managed service. This cautious, phased transition allowed them to validate the efficiency and reliability of MWAA whereas minimizing operational threat.

Excessive-level structure design

Through the service re-architecture, the info workforce strategically managed over 3,500 dynamically generated DAGs by implementing a complicated distribution method throughout a number of Amazon MWAA environments to create a workload remoted setting. Another excuse for having a number of environments was to guarantee that nobody MWAA setting doesn’t get overloaded by a number of DAGs. By inserting DAG recordsdata throughout various Amazon Easy Storage Service (Amazon S3) areas and configuring distinctive DAG_FOLDER paths for every setting, the info workforce created an clever load balancing mechanism that allocates workflows based mostly on advanced standards together with setting kind, process quantity, and environment-specific DAG affinity. A round-robin distribution technique was designed to reduce single setting load, making certain scalable infrastructure with zero efficiency degradation. This method allowed the workforce to optimize workflow orchestration, sustaining excessive efficiency whereas effectively managing an intensive assortment of dynamically generated DAGs throughout a number of MWAA environments. To offer extra compute to particular person duties and to maintain the MWAA environment friendly, Flutter UKI delegated the DAG execution to an exterior compute setting utilizing Amazon Elastic Kubernetes Service (Amazon EKS). The ensuing high-level structure is proven within the following determine.

  1. Kubernetes Pod Operator (KPO) for duties: Flutter UKI transitioned from utilizing customized operators and lots of native Airflow operators to completely using the Kubernetes Pod Operator (KPO). This determination simplified their structure by eliminating pointless complexity, decreasing upkeep overhead, and mitigating potential bugs. Moreover, this method enabled them to allocate compute assets on a per-task foundation, optimizing general service efficiency. It additionally enabled the usage of totally different container pictures for various duties, thereby avoiding library dependency conflicts.
  2. Kubernetes Pod Operator wrapper (KPOw): As a substitute of utilizing KPO instantly, they developed a wrapper (KPOw) round it. This wrapper abstracts the underlying complexity and minimizes the impression of signature modifications in Airflow, Amazon MWAA, Amazon EKS, or operator variations. By centralizing these modifications, they solely have to replace the wrapper fairly than 1000’s of particular person DAGs. The wrapper additionally simplifies DAGs by hiding repetitive parameters, akin to node affinity, pod assets, and EKS cluster configurations. Moreover, it enforces company-specific naming conventions and permits for parameter validation at process execution time fairly than throughout DagBag refresh. In addition they launched profiles and picture recordsdata, the place profile recordsdata include obligatory KPO parameters, and the corresponding picture recordsdata hyperlink to the repository for the duty’s container picture. This setup ensures consistency throughout duties utilizing the identical profile and facilitates simultaneous updates throughout duties.
  3. Month-to-month picture updates in Kubernetes: Implementing a coverage of month-to-month picture updates made positive that their code remained present, stopping safety vulnerabilities and avoiding intensive code modifications as a consequence of deprecated libraries.
  4. Steady Airflow updates: Flutter UKI maintains a cutting-edge infrastructure by implementing new Airflow variations shortly after launch, whereas following a fastidiously orchestrated deployment technique. Their method makes use of customary Amazon MWAA configurations and employs a scientific testing protocol. New variations are first deployed to improvement and take a look at environments for thorough validation earlier than reaching manufacturing techniques. This methodical development considerably reduces the danger of disruptions to business-critical workflows.

To realize operational excellence, Flutter UKI has carried out a complete monitoring framework centered on Amazon CloudWatch metrics. Their monitoring answer contains strategically configured alarms that present early warning indicators for potential points. This proactive monitoring method allows their groups to rapidly determine and examine anomalies in manufacturing workload executions, making certain excessive availability and efficiency of their information pipelines. The mix of cautious model administration and sturdy monitoring exemplifies Flutter UKI’s dedication to operational excellence of their cloud infrastructure.

  1. CI/CD integration: By managing their code in GitLab, with necessary code opinions and utilizing Argo Occasions and Argo Workflows for picture updates in AWS ECR, they streamlined their improvement processes.
  2. Efficiency Optimization: A good portion of the DAGs are dynamically generated based mostly on database metadata. This era course of runs outdoors Amazon MWAA, with its personal CI/CD pipeline, and the ensuing DAG recordsdata are saved within the S3 DAG. Putting code outdoors of duties was averted, together with parameter analysis. Parameters and secrets and techniques are saved in AWS Secrets and techniques Supervisor and retrieved at process runtime. Engineers goal to reduce or remove inter-service dependencies inside MWAA.

DAGs are scheduled to distribute execution instances as evenly as potential. Job code and customary modules are hosted on Amazon S3 and retrieved at runtime. For bigger codebases, Amazon Elastic File System (Amazon EFS) volumes are mounted to process pods are used.

Outcomes

As we speak, Flutter UKI’s infrastructure contains 4 Amazon MWAA clusters, every executing duties on devoted Amazon EKS node teams. They handle roughly 5,500 DAGs encompassing over 30,000 duties, dealing with greater than 60,000 DAG runs each day with a concurrency exceeding 450 duties working concurrently throughout clusters. They anticipate a ten% month-to-month improve on this workload within the quick to medium time period. Throughout main occasions like Cheltenham and Grand Nationwide, the place information load will increase by 30%, their MWAA service has demonstrated stability and scalability, reaching a 100% success charge for important processes in 2025, a big enchancment over earlier years.

Conclusion

Flutter UKI’s journey with AWS Managed Workflows for Apache Airflow (Amazon MWAA) has resulted in a steady, scalable, and resilient manufacturing setting. The cautious re-architecting of Flutter UKI’s service, mixed with strategic choices round process execution and infrastructure administration, has not solely simplified their operations, but in addition enhanced efficiency and reliability. Safety and compliance advantages have been additionally seen, as a result of MWAA gives managed safety updates, built-in encryption, and integration with AWS safety providers. Maybe most significantly, the shift to MWAA has allowed Flutter UKI’s engineering groups to redirect their efforts from infrastructure upkeep to business-critical duties, specializing in DAG improvement and bettering information pipeline effectivity, in the end accelerating innovation of their core enterprise operations.

In case you’re trying to cut back operational overhead and migrate to a completely managed Airflow answer on AWS, think about using Amazon MWAA. Get in contact along with your Technical Account Supervisor or your Options Architect to debate an answer particular to your use-case. You may also attain out to AWS Help by making a case for those who’re dealing with an points establishing the service.

Able to see what Amazon MWAA is like? Go to the AWS Administration Console for Amazon MWAA. For extra info, see What Is Amazon Managed Workflows for Apache Airflow. Moreover, Utilizing Amazon MWAA with Amazon EKS exhibits you learn how to combine Amazon MWAA with Amazon EKS.


Concerning the authors

Monica Cujerean is a Principal Knowledge Engineer at Flutter UKI, specializing in service associated initiatives that cowl efficiency optimization, price effectiveness, and new function adoption on most AWS service in our stack: Amazon MWAA, Amazon Redshift, Amazon Aurora, and Amazon SageMaker.

Ionut Hedesiu is a Senior Knowledge Architect at Flutter UKI, answerable for designing strategic options to cowl advanced and different enterprise wants. His essential experience is on Amazon MWAA, Kubernetes, Amazon Sagemaker, and ETL options.

Nidhi Agrawal is a Technical Account Supervisor at AWS and works with giant enterprise clients to offer the technical steerage, finest practices, and strategic help to clients, serving to them optimize their environments within the AWS Cloud.

John Kellett is a Senior Buyer Options Supervisor with 25 years of expertise throughout personal and public sectors. John helps drive end-to-end buyer engagement by way of program administration excellence. By understanding and representing clients’ strategic visions, John aligns to develop the individuals, organizational readiness, and know-how competencies to fulfill the specified outcomes.

Sidhanth Muralidhar is a Principal Technical Account Supervisor at AWS. He works with giant enterprise clients who run their workloads on AWS. He’s keen about working with clients and serving to them architect workloads for price, reliability, efficiency, and operational excellence at scale of their cloud journey. He has a eager curiosity in information analytics as nicely.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles