Case studyProject OceanOasis

From the reef to the dashboard.

How Project OceanOasis (PO2) gets species detections from cameras on remote reefs into live, multi-tenant dashboards on AWS, without a single server to manage.

Industry
Marine monitoring, conservation tech
We built
A serverless ocean data platform
Runs on
AWS Lambda, AWS Glue, Amazon Athena

4 units

Live, in 2 countries

Camera units sending today

<1 s

p95 ingestion, zero errors

Load test · 50 requests a minute

500

Concurrent users, no intervention

Stress test

The challenge

The best sites have no infrastructure.

Ocean monitoring still runs on divers, clipboards and sporadic surveys. The best sites, from remote reefs to quiet coves, have no fibre, no power grid and no backend nearby, so by the time surveys are processed, conditions have moved on.

A single detection is unreliable. A thousand of them, time-stamped and placed, paint a picture of our ocean.
PO

Project OceanOasis

On LinkedIn, September 2026

What we built

Serverless, from reef to dashboard.

Assembly designed and built the proof of concept in three phases, ingestion, a medallion data lake and multi-tenant analytics, on managed AWS services with near-zero idle cost.

What we delivered

Enriched at the door

One POST from the reef to Amazon API Gateway and AWS Lambda. Amazon DynamoDB stamps site, location and organisation onto every event.

A medallion data lake

AWS Glue turns raw JSON in Amazon S3 into one Parquet row per detection, then a Gold table partitioned by organisation and date.

Queryable on arrival

Amazon Athena reads the lake in place. Partition projection makes new data queryable the moment it lands, with no crawlers.

One dashboard, a view per org

Amazon QuickSight with row-level security: each organisation sees only its own detections, mapped over its own sites.

01 / 04

Built in

Least privilege, end to end

No AWS credentials on the reef: each unit holds an API key that can post to one endpoint. Scoped IAM roles in the middle, row-level security at the dashboard, media served from private buckets through Amazon CloudFront, and Amazon CloudWatch and AWS CloudTrail keep it in view.

  • AWS IAM
  • Amazon CloudFront
  • Amazon CloudWatch
  • AWS CloudTrail

Powered by AWS

From reef to dashboard.

  • Sent from the reef. Cameras detect species on the device and send compact JSON events, not video, over satellite to Amazon API Gateway, authenticated with an API key.
  • Enriched on arrival. AWS Lambda stamps each event with fleet, site and organisation data from Amazon DynamoDB, writes lean JSON to Bronze and moves images, logs and config to Silver.
  • Structured in the lake. AWS Glue jobs turn each pack into one Parquet row per detection and build the Gold fact table, partitioned by organisation and date.
  • Queried and shown. Amazon Athena queries Gold in place. Amazon QuickSight applies row-level security per organisation, and Amazon CloudFront serves images from private buckets.
  • Governed throughout. AWS IAM keeps every hop least-privilege, and Amazon CloudWatch and AWS CloudTrail log and audit it.
Powered by AWS

High-level architecture

Project OceanOasis on AWS

How Project OceanOasis runs on AWSHigh-level AWS architecture for Project OceanOasis. Camera units on remote reefs detect species on the device and send compact JSON events over satellite to Amazon API Gateway. AWS Lambda enriches each event with fleet, site and organisation data from Amazon DynamoDB and writes it to the Bronze layer in Amazon S3. AWS Glue jobs turn Bronze into Silver and Gold Parquet tables. Amazon Athena queries the Gold table and Amazon QuickSight shows dashboards with row-level security per organisation; Amazon CloudFront serves images from private buckets. AWS IAM, Amazon CloudWatch and AWS CloudTrail govern it.AWS CLOUD · FULLY SERVERLESSDATA LAKE · BRONZE, SILVER, GOLDSatellite · JSONAPI keyEnrich: site, orgLean JSONETLParquetSQL in placeMedia, private bucketsDatasetsRow-level security: their org onlyCamera unitSpecies detection on deviceAmazon API GatewayIngestion endpointAWS LambdaEnrich and splitAmazon DynamoDBFleet, sites, orgs, usersAmazon S3Bronze · raw eventsAWS GluePySpark jobs, catalogAmazon S3Silver and Gold · ParquetAmazon AthenaQueries the Gold tableAmazon QuickSightDashboards, mapsAmazon CloudFrontImages to the dashboardReef managersResearchers, per orgGOVERNED WITHAWS IAMLeast-privilege rolesAmazon CloudWatchLogs and metricsAWS CloudTrailAudit trail
Simplified view. Arrows follow one detection from the reef to the dashboard.

Key results

Live, tested and ready to scale.

Live

4 units

Sending from 2 countries

Detections land enriched, partitioned and queryable, from the reef to the dashboard.

Load test

<1 s

p95 at normal load

Real device packs at 50 requests a minute for 10 minutes, with zero errors.

Stress test

500

Concurrent users

The serverless path scaled on its own, well above what the current fleet sends.

Turning single detections into that picture is cloud work […] When we say a detection reaches shore in a usable format, this is who we mean.
PO

Project OceanOasis

On LinkedIn, September 2026

Our certified expertise

AWS Partner, Advanced Tier ServicesAWS Partner, Well-Architected Partner Program
AWS Certified Generative AI Developer – ProfessionalAWS Certified Machine Learning Engineer – AssociateAWS Certified Solutions Architect – ProfessionalAWS Certified AI Practitioner

AWS Advanced Tier Services Partner and Well-Architected Partner Program. All 12 current AWS Certifications are held by our team.

Want results like these on AWS?

We build data platforms on AWS, from assessment to production. Book a call and bring your data.