(Big data)

Big data tooling, and an honest view of when you need it

Spark, Kafka and a lakehouse are the right answer above a certain volume and an expensive mistake below it. Big data services here begin by working out which side of that line you sit on.

Data mesh abstract
Big data

(The line where it changes)

A billion events a day and a fifty-gigabyte table are different problems wearing the same word. One wants partitioning, file compaction and a cluster. The other wants an index and a rewritten query. A surprising number of teams buy the first when they have the second, then pay monthly for a cluster to run work a single database would finish in seconds.

The cheapest engagement of this kind ends with "keep the warehouse, fix four queries". Where the volume genuinely is there, the same review shows which parts need Spark and which parts never did.

(What we deliver)

Big data services, from review to running platform

The first item is deliberately first. Everything below it assumes the volume has been measured rather than asserted.

  1. Measuring what you actually process: row counts, data growth, query patterns and the monthly bill broken down by job. The output says plainly which workloads justify distributed tooling and which want a smaller fix.

  2. Batch processing on Databricks, EMR or Dataproc for the transformations that no longer fit in a warehouse. Written as tested modules with a local development path, so a change does not require a cluster to verify.

  3. Kafka, Flink or Kinesis for events that lose value while they wait: fraud signals, telemetry, stock movements, live pricing. Late arrivals, watermarks and exactly-once delivery are designed for rather than discovered in production.

  4. Partition keys chosen for the queries people run, file sizes kept away from the small-file problem, and compaction scheduled on Iceberg or Delta tables. Layout is the single biggest lever on query time and nobody looks at it.

  5. Skewed joins, oversized shuffles, cached data nobody reads, clusters that never scale down. Tuning work is measured against the previous bill and the previous runtime, both recorded before anything changes.

  6. A retained raw layer and a documented path to rebuild derived tables from scratch. When a transformation turns out to have been wrong for a month, the fix is a replay rather than an apology.

(Usual stack)

(How we work)

How the work runs

Every engagement is scoped in phases, priced per phase, and reviewed with you at the end of each one.

  1. 01

    Discovery

    We map the problem, the systems around it and what a good outcome looks like, then scope the work in phases you can stop after.

  2. 02

    Design

    Flows, architecture and interfaces agreed before anyone writes production code.

  3. 03

    Build

    Two-week increments, a working environment you can open, and a demo at the end of each one.

  4. 04

    Testing

    Functional, performance, security and accessibility checks run through the build, not bolted on at the end.

  5. 05

    Launch

    Deployment, monitoring, documentation and the handover your team needs to run it.

  6. 06

    Support

    Fixes, updates and the next set of features, at an agreed monthly capacity.

(Why Team of Keys)

How we approach big data engineering

Distributed systems reward patience and punish defaults. Four habits account for most of the difference in what they cost to run.

  1. 01

    Volume gets measured first

    The review happens before any architecture is proposed. Being told your data is not big is a cheaper outcome than a lakehouse, and you keep the analysis either way.

  2. 02

    Skew before hardware

    A job that takes hours usually has one partition doing most of the work. Fixing the key distribution beats adding nodes, and it lowers the bill rather than raising it.

  3. 03

    Streaming where latency is paid for

    Streaming costs more to build and far more to operate. It is used where a minute of delay has a price attached, and micro-batching covers the rest.

  4. 04

    Cost visible per job

    Cluster spend is tagged by pipeline and reported monthly. Teams behave differently once the nightly job with a name attached has a number next to it.

  5. 05

    Raw data kept, always

    The immutable landing layer is never transformed in place, and retention on it is set deliberately rather than by default. Storage is cheap, and that copy is what makes every other mistake recoverable.

(Related)

More in ai & data

All ai & data services

(FAQ)

Questions, answered

Often not. If your largest table fits comfortably on one machine and queries finish in seconds with the right index, a warehouse or a well-tuned Postgres will serve you better and cost less to operate. The review exists to answer this before you commit, and it is the cheapest phase we sell.

Compute dominates, and it is driven by cluster size, runtime and how much idle time you pay for. Costs land in your cloud account rather than ours. During design you get a projected monthly figure per pipeline, and after tuning you get the before and after from your own billing data.

Ask what a delay costs. Fraud detection, live inventory and telemetry alerting justify streaming. Daily reporting and most machine learning features do not, and a schedule running every few minutes gets close enough at a fraction of the operational burden. Many platforms end up with a small streaming core and batch everywhere else.

Yes, and it is common work. Runtimes and costs are recorded first, then the usual suspects get examined: partition skew, shuffle size, file sizes, broadcast opportunities, unnecessary caching and cluster configuration. You get the measured difference per job rather than a claim about improvement.

Yes, though the question is which parts need to be live. A streaming aggregate into ClickHouse or a serving table can update within seconds. Most dashboard panels around it are perfectly happy at five-minute freshness, and separating the two keeps the platform affordable.

(Global presence)

Nine countries, one studio behind them.

Every project is designed, built and shipped from one studio.
Turn the globe, or pick a country to see what we deliver there.

(Next step)

Bring us the job that takes six hours

Send the volumes, the current runtime and last month’s bill. The review tells you whether the answer is Spark, a better query, or neither.

START

Or write to info@teamofkeys.com · Noida, India