<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Apache on Ryan Orban</title><link>https://ryanorban.com/categories/apache/</link><description>Recent content in Apache on Ryan Orban</description><generator>Hugo</generator><language>en-us</language><managingEditor>me@ryanorban.com (Ryan Orban)</managingEditor><webMaster>me@ryanorban.com (Ryan Orban)</webMaster><copyright>Ryan Orban</copyright><lastBuildDate>Sun, 31 Mar 2013 00:00:00 +0000</lastBuildDate><atom:link href="https://ryanorban.com/categories/apache/index.xml" rel="self" type="application/rss+xml"/><item><title>Apache Incubator Giraph — Distributed Graph Processing on Hadoop</title><link>https://ryanorban.com/notes/apache-giraph-graph-processing/</link><pubDate>Sun, 31 Mar 2013 00:00:00 +0000</pubDate><author>me@ryanorban.com (Ryan Orban)</author><guid>https://ryanorban.com/notes/apache-giraph-graph-processing/</guid><description>&lt;p&gt;&lt;img
 src="https://ryanorban.com/images/notes/apache-giraph-graph-processing.png"
 alt="Apache Incubator Giraph — Distributed Graph Processing on Hadoop" class="note-hero-img"
 loading="lazy"
/&gt;
&lt;/p&gt;
&lt;h3 id="summary" class="scroll-mt-8 group"&gt;
 Summary
 
 &lt;a href="#summary"
 class="no-underline hidden opacity-50 hover:opacity-100 !text-inherit group-hover:inline-block"
 aria-hidden="true" title="Link to this heading" tabindex="-1"&gt;
 &lt;svg
 xmlns="http://www.w3.org/2000/svg"
 width="16"
 height="16"
 fill="none"
 stroke="currentColor"
 stroke-linecap="round"
 stroke-linejoin="round"
 stroke-width="2"
 class="lucide lucide-link w-4 h-4 block"
 viewBox="0 0 24 24"
&gt;
 &lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /&gt;
 &lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" /&gt;
&lt;/svg&gt;

 &lt;/a&gt;
 
&lt;/h3&gt;
&lt;p&gt;Apache Giraph was an open-source implementation of Google Pregel — Google&amp;rsquo;s internal bulk synchronous parallel (BSP) graph processing system described in a 2010 paper. Pregel solved the problem of running iterative graph algorithms (like PageRank, shortest paths, or community detection) on graphs with billions of nodes and edges, where the data doesn&amp;rsquo;t fit in memory on a single machine and the iterative nature of graph algorithms makes MapReduce extremely inefficient (each iteration requires a new MapReduce job with full disk I/O).&lt;/p&gt;</description></item><item><title>YARN: Yet Another Resource Negotiator</title><link>https://ryanorban.com/notes/yarn-hadoop-resource-manager/</link><pubDate>Tue, 19 Mar 2013 00:00:00 +0000</pubDate><author>me@ryanorban.com (Ryan Orban)</author><guid>https://ryanorban.com/notes/yarn-hadoop-resource-manager/</guid><description>&lt;h3 id="summary" class="scroll-mt-8 group"&gt;
 Summary
 
 &lt;a href="#summary"
 class="no-underline hidden opacity-50 hover:opacity-100 !text-inherit group-hover:inline-block"
 aria-hidden="true" title="Link to this heading" tabindex="-1"&gt;
 &lt;svg
 xmlns="http://www.w3.org/2000/svg"
 width="16"
 height="16"
 fill="none"
 stroke="currentColor"
 stroke-linecap="round"
 stroke-linejoin="round"
 stroke-width="2"
 class="lucide lucide-link w-4 h-4 block"
 viewBox="0 0 24 24"
&gt;
 &lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /&gt;
 &lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" /&gt;
&lt;/svg&gt;

 &lt;/a&gt;
 
&lt;/h3&gt;
&lt;p&gt;YARN is the resource management framework introduced in Apache Hadoop 2.0 that fundamentally changed what Hadoop clusters could do. Before YARN, Hadoop clusters ran exactly one type of workload: MapReduce jobs. YARN decoupled the cluster resource management layer from the MapReduce programming model, making the cluster a general-purpose compute platform that multiple frameworks could share.&lt;/p&gt;</description></item><item><title>Apache HBase</title><link>https://ryanorban.com/notes/apache-hbase-homepage/</link><pubDate>Sat, 07 Jul 2012 00:00:00 +0000</pubDate><author>me@ryanorban.com (Ryan Orban)</author><guid>https://ryanorban.com/notes/apache-hbase-homepage/</guid><description>&lt;p&gt;&lt;img
 src="https://ryanorban.com/images/notes/apache-hbase-homepage.png"
 alt="Apache HBase" class="note-hero-img"
 loading="lazy"
/&gt;
&lt;/p&gt;
&lt;h3 id="summary" class="scroll-mt-8 group"&gt;
 Summary
 
 &lt;a href="#summary"
 class="no-underline hidden opacity-50 hover:opacity-100 !text-inherit group-hover:inline-block"
 aria-hidden="true" title="Link to this heading" tabindex="-1"&gt;
 &lt;svg
 xmlns="http://www.w3.org/2000/svg"
 width="16"
 height="16"
 fill="none"
 stroke="currentColor"
 stroke-linecap="round"
 stroke-linejoin="round"
 stroke-width="2"
 class="lucide lucide-link w-4 h-4 block"
 viewBox="0 0 24 24"
&gt;
 &lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /&gt;
 &lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" /&gt;
&lt;/svg&gt;

 &lt;/a&gt;
 
&lt;/h3&gt;
&lt;p&gt;Apache HBase is a distributed, column-oriented NoSQL database built on top of HDFS — the open-source implementation of Google Bigtable. The fundamental gap it fills: HDFS is optimized for sequential writes (append-only) and full-scan reads. MapReduce batch jobs work well with this, but any use case requiring low-latency random reads or updates — looking up a single user&amp;rsquo;s data, incrementing a counter, serving a recommendation in real-time — is impossible with HDFS alone. HBase adds a key-value store layer over HDFS that enables random reads and writes at millisecond latency.&lt;/p&gt;</description></item><item><title>Apache Hive</title><link>https://ryanorban.com/notes/apache-hive-homepage/</link><pubDate>Sat, 07 Jul 2012 00:00:00 +0000</pubDate><author>me@ryanorban.com (Ryan Orban)</author><guid>https://ryanorban.com/notes/apache-hive-homepage/</guid><description>&lt;p&gt;&lt;img
 src="https://ryanorban.com/images/notes/apache-hive-homepage.png"
 alt="Apache Hive" class="note-hero-img"
 loading="lazy"
/&gt;
&lt;/p&gt;
&lt;h3 id="summary" class="scroll-mt-8 group"&gt;
 Summary
 
 &lt;a href="#summary"
 class="no-underline hidden opacity-50 hover:opacity-100 !text-inherit group-hover:inline-block"
 aria-hidden="true" title="Link to this heading" tabindex="-1"&gt;
 &lt;svg
 xmlns="http://www.w3.org/2000/svg"
 width="16"
 height="16"
 fill="none"
 stroke="currentColor"
 stroke-linecap="round"
 stroke-linejoin="round"
 stroke-width="2"
 class="lucide lucide-link w-4 h-4 block"
 viewBox="0 0 24 24"
&gt;
 &lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /&gt;
 &lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" /&gt;
&lt;/svg&gt;

 &lt;/a&gt;
 
&lt;/h3&gt;
&lt;p&gt;Apache Hive is a data warehouse layer built on top of Apache Hadoop that provides SQL-like query capability via HiveQL — a dialect of SQL that compiles to MapReduce jobs. The core problem Hive solved was accessibility: writing MapReduce programs in Java required significant expertise, but most data analysts already knew SQL. Hive translated the familiar SQL mental model into the underlying distributed execution without requiring analysts to understand MapReduce internals.&lt;/p&gt;</description></item><item><title>Apache Incubator Giraph</title><link>https://ryanorban.com/notes/apache-giraph-incubator/</link><pubDate>Sat, 07 Jul 2012 00:00:00 +0000</pubDate><author>me@ryanorban.com (Ryan Orban)</author><guid>https://ryanorban.com/notes/apache-giraph-incubator/</guid><description>&lt;h3 id="summary" class="scroll-mt-8 group"&gt;
 Summary
 
 &lt;a href="#summary"
 class="no-underline hidden opacity-50 hover:opacity-100 !text-inherit group-hover:inline-block"
 aria-hidden="true" title="Link to this heading" tabindex="-1"&gt;
 &lt;svg
 xmlns="http://www.w3.org/2000/svg"
 width="16"
 height="16"
 fill="none"
 stroke="currentColor"
 stroke-linecap="round"
 stroke-linejoin="round"
 stroke-width="2"
 class="lucide lucide-link w-4 h-4 block"
 viewBox="0 0 24 24"
&gt;
 &lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /&gt;
 &lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" /&gt;
&lt;/svg&gt;

 &lt;/a&gt;
 
&lt;/h3&gt;
&lt;p&gt;Apache Giraph entered the Apache Incubator as the open-source community&amp;rsquo;s answer to Google Pregel — Google&amp;rsquo;s internal system for running iterative graph algorithms at massive scale. The basic problem: MapReduce handles batch processing well but is a poor fit for graph computation, where algorithms like PageRank and shortest paths require many iterations, each needing to pass state between neighboring vertices. Running each iteration as a separate MapReduce job means repeated disk I/O between every step — prohibitively slow for large graphs.&lt;/p&gt;</description></item></channel></rss>