Cloud Engineering

PDFA Cloud

Taking the PDFA desktop application to the cloud as a full SaaS platform. Added security, vertical and horizontal scaling, reporting, and a batching system capable of handling thousands of calculations at once.

Lost Edges saas cloud engineering
PDFA Cloud
From desktop to cloud — PDFA as a scalable, secure SaaS platform built for large-scale pipeline engineering work.
Status: Active

Overview

This project takes the PDFA desktop application (see PDFA Desktop — C# Rewrite) and turns it into a cloud-based SaaS platform. The goal is to go from a single-user desktop tool to a shared, scalable service that engineering teams can access from anywhere and use to run large numbers of calculations at once.

From Desktop to Cloud

The desktop version of PDFA is a solid tool for individual engineers running one analysis at a time. But real pipeline projects are rarely that simple. A large project might involve dozens of pipe configurations, multiple pressure scenarios, different gas compositions, and varying material grades — all of which need to be evaluated.

Running those scenarios one at a time on a laptop is slow and error-prone. Moving to the cloud changes that:

  • Users submit hundreds or thousands of calculations as a batch
  • Jobs run in parallel and results come back in a fraction of the time
  • Multiple engineers can use the platform at the same time
  • Results and reports are available online, shareable, and stored centrally

What We Built

Batching and Job Queue

The centerpiece of the platform is a job queue that handles large batches of PDFA calculations. Users upload a batch file or call the API with a list of scenarios, and the system queues each calculation as an individual job. Worker processes pull from the queue and run the calculations in parallel.

The queue is designed to handle thousands of jobs without falling over. It manages priorities, retries failed jobs, and tracks progress in real time. Engineers can submit a batch and check back when it is done — no babysitting required.

EOS Selection per Batch

One of the more useful features is being able to specify a different Equation of State (EOS) for each batch. An EOS is the mathematical model used to calculate gas thermodynamic properties — things like density, compressibility, and sound speed — at different temperatures and pressures.

Different EOS models make different trade-offs. Engineers often want to see how their results change depending on which model is used. With per-batch EOS selection, they can submit the same scenarios with different EOS settings in a single run and compare the outputs directly.

Security

Moving to the cloud means thinking carefully about who can see what. The platform includes:

  • Authentication and role-based access controls
  • Encrypted data at rest and in transit
  • Audit logging for all jobs, inputs, and results
  • Tenant isolation so each organization’s data stays separate

Scaling

The platform handles varying load without manual intervention:

  • Vertical scaling — individual workers can be sized up for computationally heavy jobs
  • Horizontal scaling — additional workers are added automatically when the job queue grows

This means small jobs stay cheap and fast, while large batch runs still complete in a reasonable time. The infrastructure adjusts to the work, not the other way around.

Reporting

Every batch run produces a structured report covering the full set of inputs, outputs, and metadata for each job. Reports are available for download in standard formats and include everything needed to review results, share findings, or include the analysis in project documentation.

Architecture

The platform is built around a few core components:

  • API layer — accepts job submissions, batch files, and status queries
  • Job queue — holds pending calculations and coordinates worker assignment
  • Worker pool — runs the actual PDFA calculations, scales based on queue depth
  • Results store — persists outputs and makes them available for download and reporting
  • Web interface — lets users submit jobs, monitor progress, and access results without using the API directly

Current Status

Active development. Batching, EOS selection, and the core calculation engine are functional. Scaling automation and the full reporting module are currently in progress.

  • Batch processing at scale. Built a queuing system that accepts thousands of fracture analysis jobs at once, processes them in parallel, and delivers results without any manual intervention.
  • EOS selection per batch. Each batch can specify its own Equation of State (EOS), letting engineers compare results across different thermodynamic models in a single run.
  • Elastic scaling. The platform scales up or out based on load — small jobs run fast on minimal resources, and large batches automatically bring in more capacity.
← Back to Projects September 1, 2025