Insights

Big Data in Practice: From Hadoop to Spark | SUMāTO

Written by Andrés Lozada | Jul 9, 2026 6:28:33 PM

The first time I saw a Hadoop cluster processing a full day of a retailer's transactions, it became clear to me that the problem was no longer storing the data: it was making it pay off. For several years I've been working alongside companies in LATAM that had accumulated terabytes of logs, sales, and events without really knowing what to do with them. And over these months of 2017 I'm seeing a fundamental shift: the architectures we designed around MapReduce are migrating toward Spark, and that reorders how we think about data as an asset. Let me tell you what we're learning in practice, no hype.

In short: Hadoop solved distributed, cheap storage; MapReduce gave it a reliable but slow batch processing engine. Spark arrived to process in memory, up to an order of magnitude faster, and unified batch, streaming, and analytics in a single engine. Today the right decision for most companies is Hadoop to store and Spark to process.

What problem did Hadoop come to solve?

Before Hadoop, scaling data processing meant buying ever larger, more expensive servers. Hadoop flipped the logic: instead of one enormous machine, many modest machines working in parallel. Two pieces made it possible.

  • HDFS (Hadoop Distributed File System): splits files into blocks across dozens or hundreds of nodes, with replication to tolerate hardware failures. A failing disk stops being a crisis.
  • MapReduce: the programming model that brings the compute to where the data is, instead of moving the data to the compute. At large volumes, that changes everything.

The ecosystem grew quickly around that core: Hive for querying with SQL, Pig for transformation flows, HBase for random access, YARN for managing cluster resources. For a company, the appeal was twofold: commodity hardware and open-source software. Storing an asset that used to be discarded for cost reasons suddenly became viable.

Why did MapReduce fall short?

MapReduce is robust and predictable, but it has an Achilles' heel: it writes to disk between every stage. A job chains map and reduce phases, and each intermediate step touches HDFS. For a nightly batch process, that's fine. But a class of workloads emerged that suffers under that design:

  • Iterative algorithms: machine learning and graphs repeat calculations over the same dataset many times. With MapReduce, each iteration rereads the disk. It's like checking the same book out of the archive a hundred times.
  • Interactive queries: an analyst who wants to explore can't wait minutes for each question.
  • Latency: none of this works if the business needs answers in seconds, not hours.

On top of that, writing MapReduce jobs by hand is verbose. A lot of boilerplate code for logic that is conceptually simple. In real projects, that translates into slow teams and expensive maintenance.

What exactly does Spark change?

Spark, born at Berkeley's AMPLab and today a flagship project of the Apache Software Foundation, attacked exactly those points. Its central idea is the RDD (Resilient Distributed Dataset): a distributed collection that can be kept in memory across multiple operations. When an algorithm iterates, the data is already loaded; there's no trip to disk on each pass. Hence the benchmarks showing Spark up to ten times faster on disk and much more so in memory for iterative workloads.

But speed isn't the only thing, nor the most important for a company. The decisive factor is unification. Spark brings under a single engine:

  • Spark SQL and DataFrames, for structured queries in a familiar language.
  • Spark Streaming, to process streams in micro-batches in near real time.
  • MLlib, the ready-to-use machine learning library.
  • GraphX, for analyzing networks and relationships.

That integration matters because it reduces the number of technologies a team has to master and operate. And because Spark runs on YARN and reads directly from HDFS, it doesn't force you to throw away your investment in Hadoop: it sits on top of it. In our analytics projects, that coexistence is the rule, not the exception.

Batch versus streaming: which does your company need?

This is the question that generates the most confusion in technology committees. The honest answer is that you almost always need both, but for different things.

  • Batch: processes large accumulated volumes in defined windows. It's useful for the accounting close, consolidating the day's sales, the nightly retraining of a model, regulatory reports. A latency of minutes or hours is acceptable because the decision isn't immediate.
  • Streaming: processes events as they happen. It's useful for fraud detection on a transaction, operational alerts, in-session personalization, sensor monitoring. Here every second counts.

A common mistake is wanting to solve everything with streaming because it sounds modern. Streaming is harder to operate and debug; introducing that complexity where the business tolerates a report once an hour is wasted effort. The consultant's criterion is simple: let the speed of the decision define the speed of the processing, not the other way around.

Real cases we're seeing in LATAM

The patterns repeat more than you'd expect. A few concrete examples of what these architectures enable:

  • Retail: unifying in-store, e-commerce, and campaign sales to build a single view of the customer. With Spark, recomputing segments over millions of receipts goes from all night to a couple of hours, and that changes how frequently the business can react.
  • Banking and fintech: scoring and fraud detection. The historical data is trained in batch with MLlib; the evaluation of the individual event runs via streaming. It's the perfect example of why a unified engine avoids maintaining two separate stacks.
  • Telecommunications: the classic churn analysis over call detail records, a volume that more than justifies a cluster.
  • Logistics: consolidating tracking events to estimate delivery times and detect deviations early.

In all of them, the leap in value appears when data stops being a storage cost and starts feeding repeatable decisions. That's where the conversation connects with artificial intelligence: without an accessible, processable data foundation, any model is a promise with no footing.

Data as an asset: what isn't technical

I want to be clear about something we forget amid all the frameworks. Hadoop and Spark are means, not ends. A company can have the best cluster and still make decisions blindly if it doesn't get three things in order:

  • Governance: who owns each piece of data, with what definition and quality. Without this, the cluster accumulates a data swamp, not an asset.
  • Prioritized use cases: start from a business problem with measurable value, not from "standing up the platform." Technology follows the use case, never the other way around.
  • Team capabilities: Spark lowers the barrier, but someone has to understand the domain and the question. The tool doesn't replace judgment.

When those three pieces are aligned, the investment in infrastructure pays for itself. When they're not, it becomes the project no one wants to audit.

Frequently asked questions

Does Spark replace Hadoop?
No. Spark replaces MapReduce as the processing engine, but it usually relies on HDFS to store and on YARN to manage resources. Think of Hadoop as the warehouse and Spark as the machinery that works inside it.

Do I need Spark if my data isn't that big?
Maybe not yet. If your volumes fit comfortably in a well-sized relational database, that may be the most sensible option. Spark wins when volume, velocity, or variety exceed what a traditional architecture handles comfortably. The rule is to solve the problem, not buy technology because it's trendy.

What language do you program Spark in?
Primarily Scala, which is its native language, but it offers very complete APIs in Python (PySpark), Java, and R. That lets you leverage the talent you already have in-house instead of hiring scarce profiles.

How long until you see value?
With a well-scoped use case and available data, a well-focused pilot can show results in a matter of weeks. The projects that promise total transformation in a single big rollout are the ones that tend to fail.

The first step

If your company already accumulates data but doesn't yet turn it into decisions, the path doesn't start by buying a cluster: it starts by choosing the first use case well and designing the right architecture for it. At SUMāTO we help organizations in the region do exactly that, from the assessment to production deployment, connecting analytics and artificial intelligence with concrete business goals. I invite you to a no-obligation assessment conversation, to look together at where your data is and what it can start to yield this very year. Write to us at sumatogroup.com/contacto and let's take the first step.