Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-frame.html
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/overview-frame.html?rev=1618097&view=auto
==============================================================================
--- 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-frame.html
 (added)
+++ 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-frame.html
 Fri Aug 15 05:28:03 2014
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (version 1.7.0_65) on Thu Aug 07 23:02:19 PDT 2014 
-->
+<title>Overview List (samza-api 0.8.0-SNAPSHOT API)</title>
+<meta name="date" content="2014-08-07">
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+</head>
+<body>
+<div class="indexHeader"><a href="allclasses-frame.html" 
target="packageFrame">All Classes</a></div>
+<div class="indexContainer">
+<h2 title="Packages">Packages</h2>
+<ul title="Packages">
+<li><a href="org/apache/samza/package-frame.html" 
target="packageFrame">org.apache.samza</a></li>
+<li><a href="org/apache/samza/checkpoint/package-frame.html" 
target="packageFrame">org.apache.samza.checkpoint</a></li>
+<li><a href="org/apache/samza/config/package-frame.html" 
target="packageFrame">org.apache.samza.config</a></li>
+<li><a href="org/apache/samza/container/package-frame.html" 
target="packageFrame">org.apache.samza.container</a></li>
+<li><a href="org/apache/samza/container/grouper/stream/package-frame.html" 
target="packageFrame">org.apache.samza.container.grouper.stream</a></li>
+<li><a href="org/apache/samza/job/package-frame.html" 
target="packageFrame">org.apache.samza.job</a></li>
+<li><a href="org/apache/samza/metrics/package-frame.html" 
target="packageFrame">org.apache.samza.metrics</a></li>
+<li><a href="org/apache/samza/serializers/package-frame.html" 
target="packageFrame">org.apache.samza.serializers</a></li>
+<li><a href="org/apache/samza/storage/package-frame.html" 
target="packageFrame">org.apache.samza.storage</a></li>
+<li><a href="org/apache/samza/system/package-frame.html" 
target="packageFrame">org.apache.samza.system</a></li>
+<li><a href="org/apache/samza/system/chooser/package-frame.html" 
target="packageFrame">org.apache.samza.system.chooser</a></li>
+<li><a href="org/apache/samza/task/package-frame.html" 
target="packageFrame">org.apache.samza.task</a></li>
+<li><a href="org/apache/samza/util/package-frame.html" 
target="packageFrame">org.apache.samza.util</a></li>
+</ul>
+</div>
+<p>&nbsp;</p>
+</body>
+</html>

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-summary.html
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/overview-summary.html?rev=1618097&view=auto
==============================================================================
--- 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-summary.html
 (added)
+++ 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-summary.html
 Fri Aug 15 05:28:03 2014
@@ -0,0 +1,175 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (version 1.7.0_65) on Thu Aug 07 23:02:19 PDT 2014 
-->
+<title>Overview (samza-api 0.8.0-SNAPSHOT API)</title>
+<meta name="date" content="2014-08-07">
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+</head>
+<body>
+<script type="text/javascript"><!--
+    if (location.href.indexOf('is-external=true') == -1) {
+        parent.document.title="Overview (samza-api 0.8.0-SNAPSHOT API)";
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar_top">
+<!--   -->
+</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a 
name="navbar_top_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li class="navBarCell1Rev">Overview</li>
+<li>Package</li>
+<li>Class</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
+<li><a href="overview-summary.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip-navbar_top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">samza-api 0.8.0-SNAPSHOT API</h1>
+</div>
+<div class="contentContainer">
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Packages table, listing packages, and an explanation">
+<caption><span>Packages</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a 
href="org/apache/samza/package-summary.html">org.apache.samza</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a 
href="org/apache/samza/checkpoint/package-summary.html">org.apache.samza.checkpoint</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a 
href="org/apache/samza/config/package-summary.html">org.apache.samza.config</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a 
href="org/apache/samza/container/package-summary.html">org.apache.samza.container</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a 
href="org/apache/samza/container/grouper/stream/package-summary.html">org.apache.samza.container.grouper.stream</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a 
href="org/apache/samza/job/package-summary.html">org.apache.samza.job</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a 
href="org/apache/samza/metrics/package-summary.html">org.apache.samza.metrics</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a 
href="org/apache/samza/serializers/package-summary.html">org.apache.samza.serializers</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a 
href="org/apache/samza/storage/package-summary.html">org.apache.samza.storage</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a 
href="org/apache/samza/system/package-summary.html">org.apache.samza.system</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a 
href="org/apache/samza/system/chooser/package-summary.html">org.apache.samza.system.chooser</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a 
href="org/apache/samza/task/package-summary.html">org.apache.samza.task</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a 
href="org/apache/samza/util/package-summary.html">org.apache.samza.util</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar_bottom">
+<!--   -->
+</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a 
name="navbar_bottom_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li class="navBarCell1Rev">Overview</li>
+<li>Package</li>
+<li>Class</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
+<li><a href="overview-summary.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip-navbar_bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-tree.html
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/overview-tree.html?rev=1618097&view=auto
==============================================================================
--- 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-tree.html 
(added)
+++ 
incubator/samza/site/learn/documentation/latest/api/javadocs/overview-tree.html 
Fri Aug 15 05:28:03 2014
@@ -0,0 +1,253 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (version 1.7.0_65) on Thu Aug 07 23:02:19 PDT 2014 
-->
+<title>Class Hierarchy (samza-api 0.8.0-SNAPSHOT API)</title>
+<meta name="date" content="2014-08-07">
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+</head>
+<body>
+<script type="text/javascript"><!--
+    if (location.href.indexOf('is-external=true') == -1) {
+        parent.document.title="Class Hierarchy (samza-api 0.8.0-SNAPSHOT API)";
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar_top">
+<!--   -->
+</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a 
name="navbar_top_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-tree.html" target="_top">Frames</a></li>
+<li><a href="overview-tree.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip-navbar_top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For All Packages</h1>
+<span class="strong">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="org/apache/samza/package-tree.html">org.apache.samza</a>, </li>
+<li><a 
href="org/apache/samza/checkpoint/package-tree.html">org.apache.samza.checkpoint</a>,
 </li>
+<li><a 
href="org/apache/samza/config/package-tree.html">org.apache.samza.config</a>, 
</li>
+<li><a 
href="org/apache/samza/container/package-tree.html">org.apache.samza.container</a>,
 </li>
+<li><a 
href="org/apache/samza/container/grouper/stream/package-tree.html">org.apache.samza.container.grouper.stream</a>,
 </li>
+<li><a href="org/apache/samza/job/package-tree.html">org.apache.samza.job</a>, 
</li>
+<li><a 
href="org/apache/samza/metrics/package-tree.html">org.apache.samza.metrics</a>, 
</li>
+<li><a 
href="org/apache/samza/serializers/package-tree.html">org.apache.samza.serializers</a>,
 </li>
+<li><a 
href="org/apache/samza/storage/package-tree.html">org.apache.samza.storage</a>, 
</li>
+<li><a 
href="org/apache/samza/system/package-tree.html">org.apache.samza.system</a>, 
</li>
+<li><a 
href="org/apache/samza/system/chooser/package-tree.html">org.apache.samza.system.chooser</a>,
 </li>
+<li><a 
href="org/apache/samza/task/package-tree.html">org.apache.samza.task</a>, </li>
+<li><a 
href="org/apache/samza/util/package-tree.html">org.apache.samza.util</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.Object
+<ul>
+<li type="circle">org.apache.samza.system.chooser.<a 
href="org/apache/samza/system/chooser/BaseMessageChooser.html" title="class in 
org.apache.samza.system.chooser"><span 
class="strong">BaseMessageChooser</span></a> (implements 
org.apache.samza.system.chooser.<a 
href="org/apache/samza/system/chooser/MessageChooser.html" title="interface in 
org.apache.samza.system.chooser">MessageChooser</a>)</li>
+<li type="circle">org.apache.samza.util.<a 
href="org/apache/samza/util/BlockingEnvelopeMap.html" title="class in 
org.apache.samza.util"><span class="strong">BlockingEnvelopeMap</span></a> 
(implements org.apache.samza.system.<a 
href="org/apache/samza/system/SystemConsumer.html" title="interface in 
org.apache.samza.system">SystemConsumer</a>)</li>
+<li type="circle">org.apache.samza.util.<a 
href="org/apache/samza/util/BlockingEnvelopeMap.BlockingEnvelopeMapMetrics.html"
 title="class in org.apache.samza.util"><span 
class="strong">BlockingEnvelopeMap.BlockingEnvelopeMapMetrics</span></a></li>
+<li type="circle">org.apache.samza.checkpoint.<a 
href="org/apache/samza/checkpoint/Checkpoint.html" title="class in 
org.apache.samza.checkpoint"><span class="strong">Checkpoint</span></a></li>
+<li type="circle">org.apache.samza.job.<a 
href="org/apache/samza/job/CommandBuilder.html" title="class in 
org.apache.samza.job"><span class="strong">CommandBuilder</span></a></li>
+<li type="circle">org.apache.samza.config.<a 
href="org/apache/samza/config/Config.html" title="class in 
org.apache.samza.config"><span class="strong">Config</span></a> (implements 
java.util.Map&lt;K,V&gt;)
+<ul>
+<li type="circle">org.apache.samza.config.<a 
href="org/apache/samza/config/MapConfig.html" title="class in 
org.apache.samza.config"><span class="strong">MapConfig</span></a></li>
+</ul>
+</li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/Counter.html" title="class in 
org.apache.samza.metrics"><span class="strong">Counter</span></a> (implements 
org.apache.samza.metrics.<a href="org/apache/samza/metrics/Metric.html" 
title="interface in org.apache.samza.metrics">Metric</a>)</li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/Gauge.html" title="class in 
org.apache.samza.metrics"><span class="strong">Gauge</span></a>&lt;T&gt; 
(implements org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/Metric.html" title="interface in 
org.apache.samza.metrics">Metric</a>)
+<ul>
+<li type="circle">org.apache.samza.util.<a 
href="org/apache/samza/util/BlockingEnvelopeMap.BufferGauge.html" title="class 
in org.apache.samza.util"><span 
class="strong">BlockingEnvelopeMap.BufferGauge</span></a></li>
+</ul>
+</li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/IncomingMessageEnvelope.html" title="class in 
org.apache.samza.system"><span 
class="strong">IncomingMessageEnvelope</span></a></li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/MetricsVisitor.html" title="class in 
org.apache.samza.metrics"><span class="strong">MetricsVisitor</span></a></li>
+<li type="circle">org.apache.samza.util.<a 
href="org/apache/samza/util/NoOpMetricsRegistry.html" title="class in 
org.apache.samza.util"><span class="strong">NoOpMetricsRegistry</span></a> 
(implements org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/MetricsRegistry.html" title="interface in 
org.apache.samza.metrics">MetricsRegistry</a>)</li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/OutgoingMessageEnvelope.html" title="class in 
org.apache.samza.system"><span 
class="strong">OutgoingMessageEnvelope</span></a></li>
+<li type="circle">org.apache.samza.<a href="org/apache/samza/Partition.html" 
title="class in org.apache.samza"><span class="strong">Partition</span></a> 
(implements java.lang.Comparable&lt;T&gt;)</li>
+<li type="circle">org.apache.samza.container.<a 
href="org/apache/samza/container/SamzaContainerContext.html" title="class in 
org.apache.samza.container"><span 
class="strong">SamzaContainerContext</span></a></li>
+<li type="circle">org.apache.samza.util.<a 
href="org/apache/samza/util/SinglePartitionWithoutOffsetsSystemAdmin.html" 
title="class in org.apache.samza.util"><span 
class="strong">SinglePartitionWithoutOffsetsSystemAdmin</span></a> (implements 
org.apache.samza.system.<a href="org/apache/samza/system/SystemAdmin.html" 
title="interface in org.apache.samza.system">SystemAdmin</a>)</li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/SlidingTimeWindowReservoir.html" title="class in 
org.apache.samza.metrics"><span 
class="strong">SlidingTimeWindowReservoir</span></a> (implements 
org.apache.samza.metrics.<a href="org/apache/samza/metrics/Reservoir.html" 
title="interface in org.apache.samza.metrics">Reservoir</a>)</li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/Snapshot.html" title="class in 
org.apache.samza.metrics"><span class="strong">Snapshot</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemStream.html" title="class in 
org.apache.samza.system"><span class="strong">SystemStream</span></a>
+<ul>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemStreamPartition.html" title="class in 
org.apache.samza.system"><span class="strong">SystemStreamPartition</span></a> 
(implements java.lang.Comparable&lt;T&gt;)</li>
+</ul>
+</li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemStreamMetadata.html" title="class in 
org.apache.samza.system"><span 
class="strong">SystemStreamMetadata</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemStreamMetadata.SystemStreamPartitionMetadata.html"
 title="class in org.apache.samza.system"><span 
class="strong">SystemStreamMetadata.SystemStreamPartitionMetadata</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemStreamPartitionIterator.html" title="class 
in org.apache.samza.system"><span 
class="strong">SystemStreamPartitionIterator</span></a> (implements 
java.util.Iterator&lt;E&gt;)</li>
+<li type="circle">org.apache.samza.container.<a 
href="org/apache/samza/container/TaskName.html" title="class in 
org.apache.samza.container"><span class="strong">TaskName</span></a> 
(implements java.lang.Comparable&lt;T&gt;)</li>
+<li type="circle">java.lang.Throwable (implements java.io.Serializable)
+<ul>
+<li type="circle">java.lang.Exception
+<ul>
+<li type="circle">java.lang.RuntimeException
+<ul>
+<li type="circle">org.apache.samza.<a 
href="org/apache/samza/SamzaException.html" title="class in 
org.apache.samza"><span class="strong">SamzaException</span></a>
+<ul>
+<li type="circle">org.apache.samza.config.<a 
href="org/apache/samza/config/ConfigException.html" title="class in 
org.apache.samza.config"><span class="strong">ConfigException</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/Timer.html" title="class in 
org.apache.samza.metrics"><span class="strong">Timer</span></a> (implements 
org.apache.samza.metrics.<a href="org/apache/samza/metrics/Metric.html" 
title="interface in org.apache.samza.metrics">Metric</a>)</li>
+</ul>
+</li>
+</ul>
+<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
+<ul>
+<li type="circle">org.apache.samza.checkpoint.<a 
href="org/apache/samza/checkpoint/CheckpointManager.html" title="interface in 
org.apache.samza.checkpoint"><span 
class="strong">CheckpointManager</span></a></li>
+<li type="circle">org.apache.samza.checkpoint.<a 
href="org/apache/samza/checkpoint/CheckpointManagerFactory.html" 
title="interface in org.apache.samza.checkpoint"><span 
class="strong">CheckpointManagerFactory</span></a></li>
+<li type="circle">org.apache.samza.util.<a 
href="org/apache/samza/util/Clock.html" title="interface in 
org.apache.samza.util"><span class="strong">Clock</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/ClosableTask.html" title="interface in 
org.apache.samza.task"><span class="strong">ClosableTask</span></a></li>
+<li type="circle">org.apache.samza.config.<a 
href="org/apache/samza/config/ConfigFactory.html" title="interface in 
org.apache.samza.config"><span class="strong">ConfigFactory</span></a></li>
+<li type="circle">org.apache.samza.config.<a 
href="org/apache/samza/config/ConfigRewriter.html" title="interface in 
org.apache.samza.config"><span class="strong">ConfigRewriter</span></a></li>
+<li type="circle">org.apache.samza.serializers.<a 
href="org/apache/samza/serializers/Deserializer.html" title="interface in 
org.apache.samza.serializers"><span 
class="strong">Deserializer</span></a>&lt;T&gt;
+<ul>
+<li type="circle">org.apache.samza.serializers.<a 
href="org/apache/samza/serializers/Serde.html" title="interface in 
org.apache.samza.serializers"><span class="strong">Serde</span></a>&lt;T&gt; 
(also extends org.apache.samza.serializers.<a 
href="org/apache/samza/serializers/Serializer.html" title="interface in 
org.apache.samza.serializers">Serializer</a>&lt;T&gt;)</li>
+</ul>
+</li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/InitableTask.html" title="interface in 
org.apache.samza.task"><span class="strong">InitableTask</span></a></li>
+<li type="circle">org.apache.samza.system.chooser.<a 
href="org/apache/samza/system/chooser/MessageChooser.html" title="interface in 
org.apache.samza.system.chooser"><span 
class="strong">MessageChooser</span></a></li>
+<li type="circle">org.apache.samza.system.chooser.<a 
href="org/apache/samza/system/chooser/MessageChooserFactory.html" 
title="interface in org.apache.samza.system.chooser"><span 
class="strong">MessageChooserFactory</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/MessageCollector.html" title="interface in 
org.apache.samza.task"><span class="strong">MessageCollector</span></a></li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/Metric.html" title="interface in 
org.apache.samza.metrics"><span class="strong">Metric</span></a></li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/MetricsRegistry.html" title="interface in 
org.apache.samza.metrics"><span class="strong">MetricsRegistry</span></a>
+<ul>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/ReadableMetricsRegistry.html" title="interface 
in org.apache.samza.metrics"><span 
class="strong">ReadableMetricsRegistry</span></a></li>
+</ul>
+</li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/MetricsReporter.html" title="interface in 
org.apache.samza.metrics"><span class="strong">MetricsReporter</span></a></li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/MetricsReporterFactory.html" title="interface in 
org.apache.samza.metrics"><span 
class="strong">MetricsReporterFactory</span></a></li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/ReadableMetricsRegistryListener.html" 
title="interface in org.apache.samza.metrics"><span 
class="strong">ReadableMetricsRegistryListener</span></a></li>
+<li type="circle">org.apache.samza.metrics.<a 
href="org/apache/samza/metrics/Reservoir.html" title="interface in 
org.apache.samza.metrics"><span class="strong">Reservoir</span></a></li>
+<li type="circle">org.apache.samza.serializers.<a 
href="org/apache/samza/serializers/SerdeFactory.html" title="interface in 
org.apache.samza.serializers"><span 
class="strong">SerdeFactory</span></a>&lt;T&gt;</li>
+<li type="circle">org.apache.samza.serializers.<a 
href="org/apache/samza/serializers/Serializer.html" title="interface in 
org.apache.samza.serializers"><span 
class="strong">Serializer</span></a>&lt;T&gt;
+<ul>
+<li type="circle">org.apache.samza.serializers.<a 
href="org/apache/samza/serializers/Serde.html" title="interface in 
org.apache.samza.serializers"><span class="strong">Serde</span></a>&lt;T&gt; 
(also extends org.apache.samza.serializers.<a 
href="org/apache/samza/serializers/Deserializer.html" title="interface in 
org.apache.samza.serializers">Deserializer</a>&lt;T&gt;)</li>
+</ul>
+</li>
+<li type="circle">org.apache.samza.storage.<a 
href="org/apache/samza/storage/StorageEngine.html" title="interface in 
org.apache.samza.storage"><span class="strong">StorageEngine</span></a></li>
+<li type="circle">org.apache.samza.storage.<a 
href="org/apache/samza/storage/StorageEngineFactory.html" title="interface in 
org.apache.samza.storage"><span 
class="strong">StorageEngineFactory</span></a>&lt;K,V&gt;</li>
+<li type="circle">org.apache.samza.job.<a 
href="org/apache/samza/job/StreamJob.html" title="interface in 
org.apache.samza.job"><span class="strong">StreamJob</span></a></li>
+<li type="circle">org.apache.samza.job.<a 
href="org/apache/samza/job/StreamJobFactory.html" title="interface in 
org.apache.samza.job"><span class="strong">StreamJobFactory</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/StreamTask.html" title="interface in 
org.apache.samza.task"><span class="strong">StreamTask</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemAdmin.html" title="interface in 
org.apache.samza.system"><span class="strong">SystemAdmin</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemConsumer.html" title="interface in 
org.apache.samza.system"><span class="strong">SystemConsumer</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemFactory.html" title="interface in 
org.apache.samza.system"><span class="strong">SystemFactory</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemProducer.html" title="interface in 
org.apache.samza.system"><span class="strong">SystemProducer</span></a></li>
+<li type="circle">org.apache.samza.container.grouper.stream.<a 
href="org/apache/samza/container/grouper/stream/SystemStreamPartitionGrouper.html"
 title="interface in org.apache.samza.container.grouper.stream"><span 
class="strong">SystemStreamPartitionGrouper</span></a></li>
+<li type="circle">org.apache.samza.container.grouper.stream.<a 
href="org/apache/samza/container/grouper/stream/SystemStreamPartitionGrouperFactory.html"
 title="interface in org.apache.samza.container.grouper.stream"><span 
class="strong">SystemStreamPartitionGrouperFactory</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/TaskContext.html" title="interface in 
org.apache.samza.task"><span class="strong">TaskContext</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/TaskCoordinator.html" title="interface in 
org.apache.samza.task"><span class="strong">TaskCoordinator</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/TaskLifecycleListener.html" title="interface in 
org.apache.samza.task"><span 
class="strong">TaskLifecycleListener</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/TaskLifecycleListenerFactory.html" title="interface 
in org.apache.samza.task"><span 
class="strong">TaskLifecycleListenerFactory</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/WindowableTask.html" title="interface in 
org.apache.samza.task"><span class="strong">WindowableTask</span></a></li>
+</ul>
+<h2 title="Enum Hierarchy">Enum Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.Object
+<ul>
+<li type="circle">java.lang.Enum&lt;E&gt; (implements 
java.lang.Comparable&lt;T&gt;, java.io.Serializable)
+<ul>
+<li type="circle">org.apache.samza.job.<a 
href="org/apache/samza/job/ApplicationStatus.html" title="enum in 
org.apache.samza.job"><span class="strong">ApplicationStatus</span></a></li>
+<li type="circle">org.apache.samza.system.<a 
href="org/apache/samza/system/SystemStreamMetadata.OffsetType.html" title="enum 
in org.apache.samza.system"><span 
class="strong">SystemStreamMetadata.OffsetType</span></a></li>
+<li type="circle">org.apache.samza.task.<a 
href="org/apache/samza/task/TaskCoordinator.RequestScope.html" title="enum in 
org.apache.samza.task"><span 
class="strong">TaskCoordinator.RequestScope</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar_bottom">
+<!--   -->
+</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a 
name="navbar_bottom_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-tree.html" target="_top">Frames</a></li>
+<li><a href="overview-tree.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip-navbar_bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

Added: incubator/samza/site/learn/documentation/latest/api/javadocs/package-list
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/package-list?rev=1618097&view=auto
==============================================================================
--- incubator/samza/site/learn/documentation/latest/api/javadocs/package-list 
(added)
+++ incubator/samza/site/learn/documentation/latest/api/javadocs/package-list 
Fri Aug 15 05:28:03 2014
@@ -0,0 +1,13 @@
+org.apache.samza
+org.apache.samza.checkpoint
+org.apache.samza.config
+org.apache.samza.container
+org.apache.samza.container.grouper.stream
+org.apache.samza.job
+org.apache.samza.metrics
+org.apache.samza.serializers
+org.apache.samza.storage
+org.apache.samza.system
+org.apache.samza.system.chooser
+org.apache.samza.task
+org.apache.samza.util

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/background.gif
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/resources/background.gif?rev=1618097&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/background.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/tab.gif
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/resources/tab.gif?rev=1618097&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/tab.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/titlebar.gif
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/resources/titlebar.gif?rev=1618097&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/titlebar.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/titlebar_end.gif
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/resources/titlebar_end.gif?rev=1618097&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/samza/site/learn/documentation/latest/api/javadocs/resources/titlebar_end.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/serialized-form.html
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/serialized-form.html?rev=1618097&view=auto
==============================================================================
--- 
incubator/samza/site/learn/documentation/latest/api/javadocs/serialized-form.html
 (added)
+++ 
incubator/samza/site/learn/documentation/latest/api/javadocs/serialized-form.html
 Fri Aug 15 05:28:03 2014
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (version 1.7.0_65) on Thu Aug 07 23:02:19 PDT 2014 
-->
+<title>Serialized Form (samza-api 0.8.0-SNAPSHOT API)</title>
+<meta name="date" content="2014-08-07">
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+</head>
+<body>
+<script type="text/javascript"><!--
+    if (location.href.indexOf('is-external=true') == -1) {
+        parent.document.title="Serialized Form (samza-api 0.8.0-SNAPSHOT API)";
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar_top">
+<!--   -->
+</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a 
name="navbar_top_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?serialized-form.html" target="_top">Frames</a></li>
+<li><a href="serialized-form.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip-navbar_top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Serialized Form" class="title">Serialized Form</h1>
+</div>
+<div class="serializedFormContainer">
+<ul class="blockList">
+<li class="blockList">
+<h2 title="Package">Package&nbsp;org.apache.samza</h2>
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.samza.SamzaException">
+<!--   -->
+</a>
+<h3>Class <a href="org/apache/samza/SamzaException.html" title="class in 
org.apache.samza">org.apache.samza.SamzaException</a> extends 
java.lang.RuntimeException implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>1L</dd>
+</dl>
+</li>
+</ul>
+</li>
+<li class="blockList">
+<h2 title="Package">Package&nbsp;org.apache.samza.config</h2>
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.samza.config.ConfigException">
+<!--   -->
+</a>
+<h3>Class <a href="org/apache/samza/config/ConfigException.html" title="class 
in org.apache.samza.config">org.apache.samza.config.ConfigException</a> extends 
<a href="org/apache/samza/SamzaException.html" title="class in 
org.apache.samza">SamzaException</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>1L</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar_bottom">
+<!--   -->
+</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a 
name="navbar_bottom_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?serialized-form.html" target="_top">Frames</a></li>
+<li><a href="serialized-form.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip-navbar_bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

Added: 
incubator/samza/site/learn/documentation/latest/api/javadocs/stylesheet.css
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/javadocs/stylesheet.css?rev=1618097&view=auto
==============================================================================
--- incubator/samza/site/learn/documentation/latest/api/javadocs/stylesheet.css 
(added)
+++ incubator/samza/site/learn/documentation/latest/api/javadocs/stylesheet.css 
Fri Aug 15 05:28:03 2014
@@ -0,0 +1,474 @@
+/* Javadoc style sheet */
+/*
+Overall document style
+*/
+body {
+    background-color:#ffffff;
+    color:#353833;
+    font-family:Arial, Helvetica, sans-serif;
+    font-size:76%;
+    margin:0;
+}
+a:link, a:visited {
+    text-decoration:none;
+    color:#4c6b87;
+}
+a:hover, a:focus {
+    text-decoration:none;
+    color:#bb7a2a;
+}
+a:active {
+    text-decoration:none;
+    color:#4c6b87;
+}
+a[name] {
+    color:#353833;
+}
+a[name]:hover {
+    text-decoration:none;
+    color:#353833;
+}
+pre {
+    font-size:1.3em;
+}
+h1 {
+    font-size:1.8em;
+}
+h2 {
+    font-size:1.5em;
+}
+h3 {
+    font-size:1.4em;
+}
+h4 {
+    font-size:1.3em;
+}
+h5 {
+    font-size:1.2em;
+}
+h6 {
+    font-size:1.1em;
+}
+ul {
+    list-style-type:disc;
+}
+code, tt {
+    font-size:1.2em;
+}
+dt code {
+    font-size:1.2em;
+}
+table tr td dt code {
+    font-size:1.2em;
+    vertical-align:top;
+}
+sup {
+    font-size:.6em;
+}
+/*
+Document title and Copyright styles
+*/
+.clear {
+    clear:both;
+    height:0px;
+    overflow:hidden;
+}
+.aboutLanguage {
+    float:right;
+    padding:0px 21px;
+    font-size:.8em;
+    z-index:200;
+    margin-top:-7px;
+}
+.legalCopy {
+    margin-left:.5em;
+}
+.bar a, .bar a:link, .bar a:visited, .bar a:active {
+    color:#FFFFFF;
+    text-decoration:none;
+}
+.bar a:hover, .bar a:focus {
+    color:#bb7a2a;
+}
+.tab {
+    background-color:#0066FF;
+    background-image:url(resources/titlebar.gif);
+    background-position:left top;
+    background-repeat:no-repeat;
+    color:#ffffff;
+    padding:8px;
+    width:5em;
+    font-weight:bold;
+}
+/*
+Navigation bar styles
+*/
+.bar {
+    background-image:url(resources/background.gif);
+    background-repeat:repeat-x;
+    color:#FFFFFF;
+    padding:.8em .5em .4em .8em;
+    height:auto;/*height:1.8em;*/
+    font-size:1em;
+    margin:0;
+}
+.topNav {
+    background-image:url(resources/background.gif);
+    background-repeat:repeat-x;
+    color:#FFFFFF;
+    float:left;
+    padding:0;
+    width:100%;
+    clear:right;
+    height:2.8em;
+    padding-top:10px;
+    overflow:hidden;
+}
+.bottomNav {
+    margin-top:10px;
+    background-image:url(resources/background.gif);
+    background-repeat:repeat-x;
+    color:#FFFFFF;
+    float:left;
+    padding:0;
+    width:100%;
+    clear:right;
+    height:2.8em;
+    padding-top:10px;
+    overflow:hidden;
+}
+.subNav {
+    background-color:#dee3e9;
+    border-bottom:1px solid #9eadc0;
+    float:left;
+    width:100%;
+    overflow:hidden;
+}
+.subNav div {
+    clear:left;
+    float:left;
+    padding:0 0 5px 6px;
+}
+ul.navList, ul.subNavList {
+    float:left;
+    margin:0 25px 0 0;
+    padding:0;
+}
+ul.navList li{
+    list-style:none;
+    float:left;
+    padding:3px 6px;
+}
+ul.subNavList li{
+    list-style:none;
+    float:left;
+    font-size:90%;
+}
+.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, 
.bottomNav a:active, .bottomNav a:visited {
+    color:#FFFFFF;
+    text-decoration:none;
+}
+.topNav a:hover, .bottomNav a:hover {
+    text-decoration:none;
+    color:#bb7a2a;
+}
+.navBarCell1Rev {
+    background-image:url(resources/tab.gif);
+    background-color:#a88834;
+    color:#FFFFFF;
+    margin: auto 5px;
+    border:1px solid #c9aa44;
+}
+/*
+Page header and footer styles
+*/
+.header, .footer {
+    clear:both;
+    margin:0 20px;
+    padding:5px 0 0 0;
+}
+.indexHeader {
+    margin:10px;
+    position:relative;
+}
+.indexHeader h1 {
+    font-size:1.3em;
+}
+.title {
+    color:#2c4557;
+    margin:10px 0;
+}
+.subTitle {
+    margin:5px 0 0 0;
+}
+.header ul {
+    margin:0 0 25px 0;
+    padding:0;
+}
+.footer ul {
+    margin:20px 0 5px 0;
+}
+.header ul li, .footer ul li {
+    list-style:none;
+    font-size:1.2em;
+}
+/*
+Heading styles
+*/
+div.details ul.blockList ul.blockList ul.blockList li.blockList h4, 
div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 {
+    background-color:#dee3e9;
+    border-top:1px solid #9eadc0;
+    border-bottom:1px solid #9eadc0;
+    margin:0 0 6px -8px;
+    padding:2px 5px;
+}
+ul.blockList ul.blockList ul.blockList li.blockList h3 {
+    background-color:#dee3e9;
+    border-top:1px solid #9eadc0;
+    border-bottom:1px solid #9eadc0;
+    margin:0 0 6px -8px;
+    padding:2px 5px;
+}
+ul.blockList ul.blockList li.blockList h3 {
+    padding:0;
+    margin:15px 0;
+}
+ul.blockList li.blockList h2 {
+    padding:0px 0 20px 0;
+}
+/*
+Page layout container styles
+*/
+.contentContainer, .sourceContainer, .classUseContainer, 
.serializedFormContainer, .constantValuesContainer {
+    clear:both;
+    padding:10px 20px;
+    position:relative;
+}
+.indexContainer {
+    margin:10px;
+    position:relative;
+    font-size:1.0em;
+}
+.indexContainer h2 {
+    font-size:1.1em;
+    padding:0 0 3px 0;
+}
+.indexContainer ul {
+    margin:0;
+    padding:0;
+}
+.indexContainer ul li {
+    list-style:none;
+}
+.contentContainer .description dl dt, .contentContainer .details dl dt, 
.serializedFormContainer dl dt {
+    font-size:1.1em;
+    font-weight:bold;
+    margin:10px 0 0 0;
+    color:#4E4E4E;
+}
+.contentContainer .description dl dd, .contentContainer .details dl dd, 
.serializedFormContainer dl dd {
+    margin:10px 0 10px 20px;
+}
+.serializedFormContainer dl.nameValue dt {
+    margin-left:1px;
+    font-size:1.1em;
+    display:inline;
+    font-weight:bold;
+}
+.serializedFormContainer dl.nameValue dd {
+    margin:0 0 0 1px;
+    font-size:1.1em;
+    display:inline;
+}
+/*
+List styles
+*/
+ul.horizontal li {
+    display:inline;
+    font-size:0.9em;
+}
+ul.inheritance {
+    margin:0;
+    padding:0;
+}
+ul.inheritance li {
+    display:inline;
+    list-style:none;
+}
+ul.inheritance li ul.inheritance {
+    margin-left:15px;
+    padding-left:15px;
+    padding-top:1px;
+}
+ul.blockList, ul.blockListLast {
+    margin:10px 0 10px 0;
+    padding:0;
+}
+ul.blockList li.blockList, ul.blockListLast li.blockList {
+    list-style:none;
+    margin-bottom:25px;
+}
+ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast 
li.blockList {
+    padding:0px 20px 5px 10px;
+    border:1px solid #9eadc0;
+    background-color:#f9f9f9;
+}
+ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList 
ul.blockListLast li.blockList {
+    padding:0 0 5px 8px;
+    background-color:#ffffff;
+    border:1px solid #9eadc0;
+    border-top:none;
+}
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockList {
+    margin-left:0;
+    padding-left:0;
+    padding-bottom:15px;
+    border:none;
+    border-bottom:1px solid #9eadc0;
+}
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast {
+    list-style:none;
+    border-bottom:none;
+    padding-bottom:0;
+}
+table tr td dl, table tr td dl dt, table tr td dl dd {
+    margin-top:0;
+    margin-bottom:1px;
+}
+/*
+Table styles
+*/
+.contentContainer table, .classUseContainer table, .constantValuesContainer 
table {
+    border-bottom:1px solid #9eadc0;
+    width:100%;
+}
+.contentContainer ul li table, .classUseContainer ul li table, 
.constantValuesContainer ul li table {
+    width:100%;
+}
+.contentContainer .description table, .contentContainer .details table {
+    border-bottom:none;
+}
+.contentContainer ul li table th.colOne, .contentContainer ul li table 
th.colFirst, .contentContainer ul li table th.colLast, .classUseContainer ul li 
table th, .constantValuesContainer ul li table th, .contentContainer ul li 
table td.colOne, .contentContainer ul li table td.colFirst, .contentContainer 
ul li table td.colLast, .classUseContainer ul li table td, 
.constantValuesContainer ul li table td{
+    vertical-align:top;
+    padding-right:20px;
+}
+.contentContainer ul li table th.colLast, .classUseContainer ul li table 
th.colLast,.constantValuesContainer ul li table th.colLast,
+.contentContainer ul li table td.colLast, .classUseContainer ul li table 
td.colLast,.constantValuesContainer ul li table td.colLast,
+.contentContainer ul li table th.colOne, .classUseContainer ul li table 
th.colOne,
+.contentContainer ul li table td.colOne, .classUseContainer ul li table 
td.colOne {
+    padding-right:3px;
+}
+.overviewSummary caption, .packageSummary caption, .contentContainer 
ul.blockList li.blockList caption, .summary caption, .classUseContainer 
caption, .constantValuesContainer caption {
+    position:relative;
+    text-align:left;
+    background-repeat:no-repeat;
+    color:#FFFFFF;
+    font-weight:bold;
+    clear:none;
+    overflow:hidden;
+    padding:0px;
+    margin:0px;
+}
+caption a:link, caption a:hover, caption a:active, caption a:visited {
+    color:#FFFFFF;
+}
+.overviewSummary caption span, .packageSummary caption span, .contentContainer 
ul.blockList li.blockList caption span, .summary caption span, 
.classUseContainer caption span, .constantValuesContainer caption span {
+    white-space:nowrap;
+    padding-top:8px;
+    padding-left:8px;
+    display:block;
+    float:left;
+    background-image:url(resources/titlebar.gif);
+    height:18px;
+}
+.overviewSummary .tabEnd, .packageSummary .tabEnd, .contentContainer 
ul.blockList li.blockList .tabEnd, .summary .tabEnd, .classUseContainer 
.tabEnd, .constantValuesContainer .tabEnd {
+    width:10px;
+    background-image:url(resources/titlebar_end.gif);
+    background-repeat:no-repeat;
+    background-position:top right;
+    position:relative;
+    float:left;
+}
+ul.blockList ul.blockList li.blockList table {
+    margin:0 0 12px 0px;
+    width:100%;
+}
+.tableSubHeadingColor {
+    background-color: #EEEEFF;
+}
+.altColor {
+    background-color:#eeeeef;
+}
+.rowColor {
+    background-color:#ffffff;
+}
+.overviewSummary td, .packageSummary td, .contentContainer ul.blockList 
li.blockList td, .summary td, .classUseContainer td, .constantValuesContainer 
td {
+    text-align:left;
+    padding:3px 3px 3px 7px;
+}
+th.colFirst, th.colLast, th.colOne, .constantValuesContainer th {
+    background:#dee3e9;
+    border-top:1px solid #9eadc0;
+    border-bottom:1px solid #9eadc0;
+    text-align:left;
+    padding:3px 3px 3px 7px;
+}
+td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, 
td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst 
a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, 
td.colLast a:hover, .constantValuesContainer td a:link, 
.constantValuesContainer td a:active, .constantValuesContainer td a:visited, 
.constantValuesContainer td a:hover {
+    font-weight:bold;
+}
+td.colFirst, th.colFirst {
+    border-left:1px solid #9eadc0;
+    white-space:nowrap;
+}
+td.colLast, th.colLast {
+    border-right:1px solid #9eadc0;
+}
+td.colOne, th.colOne {
+    border-right:1px solid #9eadc0;
+    border-left:1px solid #9eadc0;
+}
+table.overviewSummary  {
+    padding:0px;
+    margin-left:0px;
+}
+table.overviewSummary td.colFirst, table.overviewSummary th.colFirst,
+table.overviewSummary td.colOne, table.overviewSummary th.colOne {
+    width:25%;
+    vertical-align:middle;
+}
+table.packageSummary td.colFirst, table.overviewSummary th.colFirst {
+    width:25%;
+    vertical-align:middle;
+}
+/*
+Content styles
+*/
+.description pre {
+    margin-top:0;
+}
+.deprecatedContent {
+    margin:0;
+    padding:10px 0;
+}
+.docSummary {
+    padding:0;
+}
+/*
+Formatting effect styles
+*/
+.sourceLineNo {
+    color:green;
+    padding:0 30px 0 0;
+}
+h1.hidden {
+    visibility:hidden;
+    overflow:hidden;
+    font-size:.9em;
+}
+.block {
+    display:block;
+    margin:3px 0 0 0;
+}
+.strong {
+    font-weight:bold;
+}

Added: incubator/samza/site/learn/documentation/latest/api/overview.html
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/api/overview.html?rev=1618097&view=auto
==============================================================================
--- incubator/samza/site/learn/documentation/latest/api/overview.html (added)
+++ incubator/samza/site/learn/documentation/latest/api/overview.html Fri Aug 
15 05:28:03 2014
@@ -0,0 +1,271 @@
+<!DOCTYPE html>
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Samza - API Overview</title>
+    <link href='/css/ropa-sans.css' rel='stylesheet' type='text/css'/>
+    <link href="/css/bootstrap.min.css" rel="stylesheet"/>
+    <link href="/css/font-awesome.min.css" rel="stylesheet"/>
+    <link href="/css/main.css" rel="stylesheet"/>
+    <link href="/css/syntax.css" rel="stylesheet"/>
+    <link rel="icon" type="image/png" href="/img/samza-icon.png">
+  </head>
+  <body>
+    <div class="wrapper">
+      <div class="wrapper-content">
+
+        <div class="masthead">
+          <div class="container">
+            <div class="masthead-logo">
+              <a href="/" class="logo">samza</a>
+            </div>
+            <div class="masthead-icons">
+              <div class="pull-right">
+                <a href="/startup/download"><i class="fa 
fa-arrow-circle-o-down masthead-icon"></i></a>
+                <a 
href="https://git-wip-us.apache.org/repos/asf?p=incubator-samza.git;a=tree"; 
target="_blank"><i class="fa fa-code masthead-icon" style="font-weight: 
bold;"></i></a>
+                <a href="https://twitter.com/samzastream"; target="_blank"><i 
class="fa fa-twitter masthead-icon"></i></a>
+                
+                  <a 
href="http://samza.incubator.apache.org/learn/documentation/0.7.0/api/overview.html";><i
 class="fa fa-history masthead-icon"></i></a>
+                
+              </div>
+            </div>
+          </div><!-- /.container -->
+        </div>
+
+        <div class="container">
+          <div class="menu">
+            <h1><i class="fa fa-rocket"></i> Getting Started</h1>
+            <ul>
+              <li><a href="/startup/hello-samza/latest">Hello Samza</a></li>
+              <li><a href="/startup/download">Download</a></li>
+            </ul>
+
+            <h1><i class="fa fa-book"></i> Learn</h1>
+            <ul>
+              <li><a href="/learn/documentation/latest">Documentation</a></li>
+              <li><a href="/learn/tutorials/latest">Tutorials</a></li>
+              <li><a href="http://wiki.apache.org/samza/FAQ";>FAQ</a></li>
+              <li><a href="http://wiki.apache.org/samza";>Wiki</a></li>
+              <li><a href="http://wiki.apache.org/samza/PapersAndTalks";>Papers 
&amp; Talks</a></li>
+              <li><a href="http://blogs.apache.org/samza";>Blog</a></li>
+            </ul>
+
+            <h1><i class="fa fa-comments"></i> Community</h1>
+            <ul>
+              <li><a href="/community/mailing-lists.html">Mailing 
Lists</a></li>
+              <li><a href="/community/irc.html">IRC</a></li>
+              <li><a 
href="https://issues.apache.org/jira/browse/SAMZA";>Bugs</a></li>
+              <li><a href="http://wiki.apache.org/samza/PoweredBy";>Powered 
by</a></li>
+              <li><a 
href="http://wiki.apache.org/samza/Ecosystem";>Ecosystem</a></li>
+              <li><a href="/community/committers.html">Committers</a></li>
+            </ul>
+
+            <h1><i class="fa fa-code"></i> Contribute</h1>
+            <ul>
+              <li><a href="/contribute/rules.html">Rules</a></li>
+              <li><a href="/contribute/coding-guide.html">Coding Guide</a></li>
+              <li><a href="/contribute/projects.html">Projects</a></li>
+              <li><a href="/contribute/seps.html">SEPs</a></li>
+              <li><a href="/contribute/code.html">Code</a></li>
+              <li><a href="https://reviews.apache.org/groups/samza";>Review 
Board</a></li>
+              <li><a href="https://builds.apache.org/";>Unit Tests</a></li>
+              <li><a href="/contribute/disclaimer.html">Disclaimer</a></li>
+            </ul>
+
+            <h1><i class="fa fa-history"></i> Archive</h1>
+            <ul>
+              <li><a href="/archive/index.html">0.7.0</a></li>
+            </ul>
+          </div>
+
+          <div class="content">
+            <!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<h2>API Overview</h2>
+
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<p>When writing a stream processor for Samza, you must implement the <a 
href="javadocs/org/apache/samza/task/StreamTask.html">StreamTask</a> 
interface:</p>
+
+<div class="highlight"><pre><code class="java"><span class="kn">package</span> 
<span class="n">com</span><span class="o">.</span><span 
class="na">example</span><span class="o">.</span><span 
class="na">samza</span><span class="o">;</span>
+
+<span class="kd">public</span> <span class="kd">class</span> <span 
class="nc">MyTaskClass</span> <span class="kd">implements</span> <span 
class="n">StreamTask</span> <span class="o">{</span>
+
+  <span class="kd">public</span> <span class="kt">void</span> <span 
class="nf">process</span><span class="o">(</span><span 
class="n">IncomingMessageEnvelope</span> <span class="n">envelope</span><span 
class="o">,</span>
+                      <span class="n">MessageCollector</span> <span 
class="n">collector</span><span class="o">,</span>
+                      <span class="n">TaskCoordinator</span> <span 
class="n">coordinator</span><span class="o">)</span> <span class="o">{</span>
+    <span class="c1">// process message</span>
+  <span class="o">}</span>
+<span class="o">}</span></code></pre></div>
+
+<p>When you run your job, Samza will create several instances of your class 
(potentially on multiple machines). These task instances process the messages 
in the input streams.</p>
+
+<p>In your job&rsquo;s configuration you can tell Samza which streams you want 
to consume. An incomplete example could look like this (see the <a 
href="../jobs/configuration.html">configuration documentation</a> for more 
detail):</p>
+
+<div class="highlight"><pre><code class="jproperties"><span class="c"># This 
is the class above, which Samza will instantiate when the job is run</span>
+<span class="na">task.class</span><span class="o">=</span><span 
class="s">com.example.samza.MyTaskClass</span>
+
+<span class="c"># Define a system called &quot;kafka&quot; (you can give it 
any name, and you can define</span>
+<span class="c"># multiple systems if you want to process messages from 
different sources)</span>
+<span class="na">systems.kafka.samza.factory</span><span 
class="o">=</span><span 
class="s">org.apache.samza.system.kafka.KafkaSystemFactory</span>
+
+<span class="c"># The job consumes a topic called &quot;PageViewEvent&quot; 
from the &quot;kafka&quot; system</span>
+<span class="na">task.inputs</span><span class="o">=</span><span 
class="s">kafka.PageViewEvent</span>
+
+<span class="c"># Define a serializer/deserializer called &quot;json&quot; 
which parses JSON messages</span>
+<span class="na">serializers.registry.json.class</span><span 
class="o">=</span><span 
class="s">org.apache.samza.serializers.JsonSerdeFactory</span>
+
+<span class="c"># Use the &quot;json&quot; serializer for messages in the 
&quot;PageViewEvent&quot; topic</span>
+<span 
class="na">systems.kafka.streams.PageViewEvent.samza.msg.serde</span><span 
class="o">=</span><span class="s">json</span></code></pre></div>
+
+<p>For each message that Samza receives from the task&rsquo;s input streams, 
the <em>process</em> method is called. The <a 
href="javadocs/org/apache/samza/system/IncomingMessageEnvelope.html">envelope</a>
 contains three things of importance: the message, the key, and the stream that 
the message came from.</p>
+
+<div class="highlight"><pre><code class="java"><span class="cm">/** Every 
message that is delivered to a StreamTask is wrapped</span>
+<span class="cm"> * in an IncomingMessageEnvelope, which contains metadata 
about</span>
+<span class="cm"> * the origin of the message. */</span>
+<span class="kd">public</span> <span class="kd">class</span> <span 
class="nc">IncomingMessageEnvelope</span> <span class="o">{</span>
+  <span class="cm">/** A deserialized message. */</span>
+  <span class="n">Object</span> <span class="nf">getMessage</span><span 
class="o">()</span> <span class="o">{</span> <span class="o">...</span> <span 
class="o">}</span>
+
+  <span class="cm">/** A deserialized key. */</span>
+  <span class="n">Object</span> <span class="nf">getKey</span><span 
class="o">()</span> <span class="o">{</span> <span class="o">...</span> <span 
class="o">}</span>
+
+  <span class="cm">/** The stream and partition that this message came from. 
*/</span>
+  <span class="n">SystemStreamPartition</span> <span 
class="nf">getSystemStreamPartition</span><span class="o">()</span> <span 
class="o">{</span> <span class="o">...</span> <span class="o">}</span>
+<span class="o">}</span></code></pre></div>
+
+<p>The key and value are declared as Object, and need to be cast to the 
correct type. If you don&rsquo;t configure a <a 
href="../container/serialization.html">serializer/deserializer</a>, they are 
typically Java byte arrays. A deserializer can convert these bytes into any 
other type, for example the JSON deserializer mentioned above parses the byte 
array into java.util.Map, java.util.List and String objects.</p>
+
+<p>The <code>getSystemStreamPartition()</code> method returns a <a 
href="javadocs/org/apache/samza/system/SystemStreamPartition.html">SystemStreamPartition</a>
 object, which tells you where the message came from. It consists of three 
parts:</p>
+
+<ol>
+<li>The <em>system</em>: the name of the system from which the message came, 
as defined in your job configuration. You can have multiple systems for input 
and/or output, each with a different name.</li>
+<li>The <em>stream name</em>: the name of the stream (topic, queue) within the 
source system. This is also defined in the job configuration.</li>
+<li>The <a 
href="javadocs/org/apache/samza/Partition.html"><em>partition</em></a>: a 
stream is normally split into several partitions, and each partition is 
assigned to one StreamTask instance by Samza.</li>
+</ol>
+
+<p>The API looks like this:</p>
+
+<div class="highlight"><pre><code class="java"><span class="cm">/** A triple 
of system name, stream name and partition. */</span>
+<span class="kd">public</span> <span class="kd">class</span> <span 
class="nc">SystemStreamPartition</span> <span class="kd">extends</span> <span 
class="n">SystemStream</span> <span class="o">{</span>
+
+  <span class="cm">/** The name of the system which provides this stream. It 
is</span>
+<span class="cm">      defined in the Samza job&#39;s configuration. */</span>
+  <span class="kd">public</span> <span class="n">String</span> <span 
class="nf">getSystem</span><span class="o">()</span> <span class="o">{</span> 
<span class="o">...</span> <span class="o">}</span>
+
+  <span class="cm">/** The name of the stream/topic/queue within the system. 
*/</span>
+  <span class="kd">public</span> <span class="n">String</span> <span 
class="nf">getStream</span><span class="o">()</span> <span class="o">{</span> 
<span class="o">...</span> <span class="o">}</span>
+
+  <span class="cm">/** The partition within the stream. */</span>
+  <span class="kd">public</span> <span class="n">Partition</span> <span 
class="nf">getPartition</span><span class="o">()</span> <span 
class="o">{</span> <span class="o">...</span> <span class="o">}</span>
+<span class="o">}</span></code></pre></div>
+
+<p>In the example job configuration above, the system name is 
&ldquo;kafka&rdquo;, the stream name is &ldquo;PageViewEvent&rdquo;. (The name 
&ldquo;kafka&rdquo; isn&rsquo;t special &mdash; you can give your system any 
name you want.) If you have several input streams feeding into your StreamTask, 
you can use the SystemStreamPartition to determine what kind of message 
you&rsquo;ve received.</p>
+
+<p>What about sending messages? If you take a look at the process() method in 
StreamTask, you&rsquo;ll see that you get a <a 
href="javadocs/org/apache/samza/task/MessageCollector.html">MessageCollector</a>.</p>
+
+<div class="highlight"><pre><code class="java"><span class="cm">/** When a 
task wishes to send a message, it uses this interface. */</span>
+<span class="kd">public</span> <span class="kd">interface</span> <span 
class="nc">MessageCollector</span> <span class="o">{</span>
+  <span class="kt">void</span> <span class="nf">send</span><span 
class="o">(</span><span class="n">OutgoingMessageEnvelope</span> <span 
class="n">envelope</span><span class="o">);</span>
+<span class="o">}</span></code></pre></div>
+
+<p>To send a message, you create an <a 
href="javadocs/org/apache/samza/system/OutgoingMessageEnvelope.html">OutgoingMessageEnvelope</a>
 object and pass it to the message collector. At a minimum, the envelope 
specifies the message you want to send, and the system and stream name to send 
it to. Optionally you can specify the partitioning key and other parameters. 
See the <a 
href="javadocs/org/apache/samza/system/OutgoingMessageEnvelope.html">javadoc</a>
 for details.</p>
+
+<p><strong>NOTE:</strong> Please only use the MessageCollector object within 
the <code>process()</code> method. If you hold on to a MessageCollector 
instance and use it again later, your messages may not be sent correctly.</p>
+
+<p>For example, here&rsquo;s a simple task that splits each input message into 
words, and emits each word as a separate message:</p>
+
+<div class="highlight"><pre><code class="java"><span class="kd">public</span> 
<span class="kd">class</span> <span class="nc">SplitStringIntoWords</span> 
<span class="kd">implements</span> <span class="n">StreamTask</span> <span 
class="o">{</span>
+
+  <span class="c1">// Send outgoing messages to a stream called 
&quot;words&quot;</span>
+  <span class="c1">// in the &quot;kafka&quot; system.</span>
+  <span class="kd">private</span> <span class="kd">final</span> <span 
class="n">SystemStream</span> <span class="n">OUTPUT_STREAM</span> <span 
class="o">=</span>
+    <span class="k">new</span> <span class="nf">SystemStream</span><span 
class="o">(</span><span class="s">&quot;kafka&quot;</span><span 
class="o">,</span> <span class="s">&quot;words&quot;</span><span 
class="o">);</span>
+
+  <span class="kd">public</span> <span class="kt">void</span> <span 
class="nf">process</span><span class="o">(</span><span 
class="n">IncomingMessageEnvelope</span> <span class="n">envelope</span><span 
class="o">,</span>
+                      <span class="n">MessageCollector</span> <span 
class="n">collector</span><span class="o">,</span>
+                      <span class="n">TaskCoordinator</span> <span 
class="n">coordinator</span><span class="o">)</span> <span class="o">{</span>
+    <span class="n">String</span> <span class="n">message</span> <span 
class="o">=</span> <span class="o">(</span><span class="n">String</span><span 
class="o">)</span> <span class="n">envelope</span><span class="o">.</span><span 
class="na">getMessage</span><span class="o">();</span>
+
+    <span class="k">for</span> <span class="o">(</span><span 
class="n">String</span> <span class="n">word</span> <span class="o">:</span> 
<span class="n">message</span><span class="o">.</span><span 
class="na">split</span><span class="o">(</span><span class="s">&quot; 
&quot;</span><span class="o">))</span> <span class="o">{</span>
+      <span class="c1">// Use the word as the key, and 1 as the value.</span>
+      <span class="c1">// A second task can add the 1&#39;s to get the word 
count.</span>
+      <span class="n">collector</span><span class="o">.</span><span 
class="na">send</span><span class="o">(</span><span class="k">new</span> <span 
class="n">OutgoingMessageEnvelope</span><span class="o">(</span><span 
class="n">OUTPUT_STREAM</span><span class="o">,</span> <span 
class="n">word</span><span class="o">,</span> <span class="mi">1</span><span 
class="o">));</span>
+    <span class="o">}</span>
+  <span class="o">}</span>
+<span class="o">}</span></code></pre></div>
+
+<h2 id="samzacontainer-&raquo;"><a 
href="../container/samza-container.html">SamzaContainer &raquo;</a></h2>
+
+
+          </div>
+        </div>
+
+      </div><!-- /.wrapper-content -->
+    </div><!-- /.wrapper -->
+
+    <div class="footer">
+      <div class="container">
+        <!-- nothing for now. -->
+      </div>
+    </div>
+
+    <!-- Google Analytics -->
+    <script>
+      
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+      
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-43122768-1', 'apache.org');
+      ga('send', 'pageview');
+
+    </script>
+  </body>
+</html>

Added: 
incubator/samza/site/learn/documentation/latest/comparisons/introduction.html
URL: 
http://svn.apache.org/viewvc/incubator/samza/site/learn/documentation/latest/comparisons/introduction.html?rev=1618097&view=auto
==============================================================================
--- 
incubator/samza/site/learn/documentation/latest/comparisons/introduction.html 
(added)
+++ 
incubator/samza/site/learn/documentation/latest/comparisons/introduction.html 
Fri Aug 15 05:28:03 2014
@@ -0,0 +1,221 @@
+<!DOCTYPE html>
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Samza - Comparison Introduction</title>
+    <link href='/css/ropa-sans.css' rel='stylesheet' type='text/css'/>
+    <link href="/css/bootstrap.min.css" rel="stylesheet"/>
+    <link href="/css/font-awesome.min.css" rel="stylesheet"/>
+    <link href="/css/main.css" rel="stylesheet"/>
+    <link href="/css/syntax.css" rel="stylesheet"/>
+    <link rel="icon" type="image/png" href="/img/samza-icon.png">
+  </head>
+  <body>
+    <div class="wrapper">
+      <div class="wrapper-content">
+
+        <div class="masthead">
+          <div class="container">
+            <div class="masthead-logo">
+              <a href="/" class="logo">samza</a>
+            </div>
+            <div class="masthead-icons">
+              <div class="pull-right">
+                <a href="/startup/download"><i class="fa 
fa-arrow-circle-o-down masthead-icon"></i></a>
+                <a 
href="https://git-wip-us.apache.org/repos/asf?p=incubator-samza.git;a=tree"; 
target="_blank"><i class="fa fa-code masthead-icon" style="font-weight: 
bold;"></i></a>
+                <a href="https://twitter.com/samzastream"; target="_blank"><i 
class="fa fa-twitter masthead-icon"></i></a>
+                
+                  <a 
href="http://samza.incubator.apache.org/learn/documentation/0.7.0/comparisons/introduction.html";><i
 class="fa fa-history masthead-icon"></i></a>
+                
+              </div>
+            </div>
+          </div><!-- /.container -->
+        </div>
+
+        <div class="container">
+          <div class="menu">
+            <h1><i class="fa fa-rocket"></i> Getting Started</h1>
+            <ul>
+              <li><a href="/startup/hello-samza/latest">Hello Samza</a></li>
+              <li><a href="/startup/download">Download</a></li>
+            </ul>
+
+            <h1><i class="fa fa-book"></i> Learn</h1>
+            <ul>
+              <li><a href="/learn/documentation/latest">Documentation</a></li>
+              <li><a href="/learn/tutorials/latest">Tutorials</a></li>
+              <li><a href="http://wiki.apache.org/samza/FAQ";>FAQ</a></li>
+              <li><a href="http://wiki.apache.org/samza";>Wiki</a></li>
+              <li><a href="http://wiki.apache.org/samza/PapersAndTalks";>Papers 
&amp; Talks</a></li>
+              <li><a href="http://blogs.apache.org/samza";>Blog</a></li>
+            </ul>
+
+            <h1><i class="fa fa-comments"></i> Community</h1>
+            <ul>
+              <li><a href="/community/mailing-lists.html">Mailing 
Lists</a></li>
+              <li><a href="/community/irc.html">IRC</a></li>
+              <li><a 
href="https://issues.apache.org/jira/browse/SAMZA";>Bugs</a></li>
+              <li><a href="http://wiki.apache.org/samza/PoweredBy";>Powered 
by</a></li>
+              <li><a 
href="http://wiki.apache.org/samza/Ecosystem";>Ecosystem</a></li>
+              <li><a href="/community/committers.html">Committers</a></li>
+            </ul>
+
+            <h1><i class="fa fa-code"></i> Contribute</h1>
+            <ul>
+              <li><a href="/contribute/rules.html">Rules</a></li>
+              <li><a href="/contribute/coding-guide.html">Coding Guide</a></li>
+              <li><a href="/contribute/projects.html">Projects</a></li>
+              <li><a href="/contribute/seps.html">SEPs</a></li>
+              <li><a href="/contribute/code.html">Code</a></li>
+              <li><a href="https://reviews.apache.org/groups/samza";>Review 
Board</a></li>
+              <li><a href="https://builds.apache.org/";>Unit Tests</a></li>
+              <li><a href="/contribute/disclaimer.html">Disclaimer</a></li>
+            </ul>
+
+            <h1><i class="fa fa-history"></i> Archive</h1>
+            <ul>
+              <li><a href="/archive/index.html">0.7.0</a></li>
+            </ul>
+          </div>
+
+          <div class="content">
+            <!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<h2>Comparison Introduction</h2>
+
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<p>Here are a few of the high-level design decisions that we think make Samza 
a bit different from other stream processing projects.</p>
+
+<h3 id="the-stream-model">The Stream Model</h3>
+
+<p>Streams are the input and output to Samza jobs. Samza has a very strong 
model of a stream&mdash;it is more than just a simple message exchange 
mechanism. A stream in Samza is a partitioned, ordered-per-partition, 
replayable, multi-subscriber, lossless sequence of messages. Streams are not 
just inputs and outputs to the system, but also buffers that isolate processing 
stages from each other.</p>
+
+<p>This stronger model requires persistence, fault-tolerance, and buffering in 
the stream implementation, but it has several benefits.</p>
+
+<p>First, delays in a downstream processing stage cannot block an upstream 
stage. A Samza job can stop consuming for a few minutes, or even a few hours 
(perhaps because of a bad deploy, or a long-running computation) without having 
any effect on upstream jobs. This makes Samza suitable for large deployments, 
such as processing all data flows in a large company: isolation between jobs is 
essential when they are written, owned, and run by different teams in different 
code bases with varying SLAs.</p>
+
+<p>This is motivated by our experience building analogous offline processing 
pipelines in Hadoop. In Hadoop the processing stages are MapReduce jobs, and 
the output of a processing stage is a directory of files on HDFS. The input to 
the next processing stage is simply the files produced by the earlier stage. We 
have found that this strong isolation between stages makes it possible to have 
hundreds of loosely coupled jobs, maintained by different teams, that comprise 
an offline processing ecosystem. Our goal is to replicate this kind of rich 
ecosystem in a near-real-time setting.</p>
+
+<p>The second benefit of this stronger model is that all stages are 
multi-subscriber. In practical terms this means that if one person adds a set 
of processing flows that create output data streams, others can see the output, 
consume it, and build on it, without introducing any coupling of code between 
the jobs. As a happy side-effect, this makes debugging flows easy, as you can 
manually inspect the output of any stage.</p>
+
+<p>Finally, this strong stream model greatly simplifies the implementation of 
features in the Samza framework. Each job need only be concerned with its own 
inputs and outputs, and in the case of a fault, each job can be recovered and 
restarted independently. There is no need for central control over the entire 
dataflow graph.</p>
+
+<p>The tradeoff we need to make for this stronger stream model is that 
messages are written to disk. We are willing to make this tradeoff because 
MapReduce and HDFS have shown that durable storage can offer very high read and 
write throughput, and almost limitless disk space. This observation is the 
foundation of Kafka, which allows hundreds of MB/sec of replicated throughput, 
and many TB of disk space per node. When used this way, disk throughput often 
isn&rsquo;t the bottleneck.</p>
+
+<p>MapReduce is sometimes criticized for writing to disk more than necessary. 
However, this criticism applies less to stream processing: batch processing 
like MapReduce often is used for processing large historical collections of 
data in a short period of time (e.g. query a month of data in ten minutes), 
whereas stream processing mostly needs to keep up with the steady-state flow of 
data (process 10 minutes worth of data in 10 minutes). This means that the raw 
throughput requirements for stream processing are, generally, orders of 
magnitude lower than for batch processing.</p>
+
+<h3 id="-state"><a name="state"></a> State</h3>
+
+<p>Only the very simplest stream processing problems are stateless (i.e. can 
process one message at a time, independently of all other messages). Many 
stream processing applications require a job to maintain some state. For 
example:</p>
+
+<ul>
+<li>If you want to know how many events have been seen for a particular user 
ID, you need to keep a counter for each user ID.</li>
+<li>If you want to know how many distinct users visit your site per day, you 
need to keep a set of all user IDs for which you&rsquo;ve seen at least one 
event today.</li>
+<li>If you want to join two streams (for example, if you want to determine the 
click-through rate of adverts by joining a stream of ad impression events with 
a stream of ad click events) you need to store the event from one stream until 
you receive the corresponding event from the other stream.</li>
+<li>If you want to augment events with some information from a database (for 
example, extending a page-view event with some information about the user who 
viewed the page), the job needs to access the current state of that 
database.</li>
+</ul>
+
+<p>Some kinds of state, such as counters, could be kept in-memory in the 
tasks, but then that state would be lost if the job is restarted. 
Alternatively, you can keep the state in a remote database, but performance can 
become unacceptable if you need to perform a database query for every message 
you process. Kafka can easily handle 100k-500k messages/sec per node (depending 
on message size), but throughput for queries against a remote key-value store 
tend to be closer to 1-5k requests per second &mdash; two orders of magnitude 
slower.</p>
+
+<p>In Samza, we have put particular effort into supporting high-performance, 
reliable state. The key is to keep state local to each node (so that queries 
don&rsquo;t need to go over the network), and to make it robust to machine 
failures by replicating state changes to another stream.</p>
+
+<p>This approach is especially interesting when combined with database 
<em>change capture</em>. Take the
+example above, where you have a stream of page-view events including the ID of 
the user who viewed the page, and you want to augment the events with more 
information about that user. At first glance, it looks as though you have no 
choice but to query the user database to look up every user ID you see (perhaps 
with some caching). With Samza, we can do better.</p>
+
+<p><em>Change capture</em> means that every time some data changes in your 
database, you get an event telling you what changed. If you have that stream of 
change events, going all the way back to when the database was created, you can 
reconstruct the entire contents of the database by replaying the stream. That 
<em>changelog</em> stream can also be used as input to a Samza job.</p>
+
+<p>Now you can write a Samza job that takes both the page-view event and the 
changelog as inputs. You make sure that they are partitioned on the same key 
(e.g. user ID). Every time a changelog event comes in, you write the updated 
user information to the task&rsquo;s local storage. Every time a page-view 
event comes in, you read the current information about that user from local 
storage. That way, you can keep all the state local to a task, and never need 
to query a remote database.</p>
+
+<p><img src="/img/latest/learn/documentation/introduction/samza_state.png" 
alt="Stateful Processing" class="diagram-large"></p>
+
+<p>In effect, you now have a replica of the main database, broken into small 
partitions that are on the same machines as the Samza tasks. Database writes 
still need to go to the main database, but when you need to read from the 
database in order to process a message from the input stream, you can just 
consult the task&rsquo;s local state.</p>
+
+<p>This approach is not only much faster than querying a remote database, it 
is also much better for operations. If you are processing a high-volume stream 
with Samza, and making a remote query for every message, you can easily 
overwhelm the database with requests and affect other services using the same 
database. By contrast, when a task uses local state, it is isolated from 
everything else, so it cannot accidentally bring down other services.</p>
+
+<p>Partitioned local state is not always appropriate, and not required &mdash; 
nothing in Samza prevents calls to external databases. If you cannot produce a 
feed of changes from your database, or you need to rely on logic that exists 
only in a remote service, then it may be more convenient to call a remote 
service from your Samza job. But if you want to use local state, it works out 
of the box.</p>
+
+<h3 id="execution-framework">Execution Framework</h3>
+
+<p>One final decision we made was to not build a custom distributed execution 
system in Samza. Instead, execution is pluggable, and currently completely 
handled by YARN. This has two benefits.</p>
+
+<p>The first benefit is practical: there is another team of smart people 
working on the execution framework. YARN is developing at a rapid pace, and 
already supports a rich set of features around resource quotas and security. 
This allows you to control what portion of the cluster is allocated to which 
users and groups, and also control the resource utilization on individual nodes 
(CPU, memory, etc) via cgroups. YARN is run at massive scale to support Hadoop 
and will likely become an ubiquitous layer. Since Samza runs entirely through 
YARN, there are no separate daemons or masters to run beyond the YARN cluster 
itself. In other words, if you already have Kafka and YARN, you don&rsquo;t 
need to install anything in order to run Samza jobs.</p>
+
+<p>Secondly, our integration with YARN is completely componentized. It exists 
in a separate package, and the main Samza framework does not depend on it at 
build time. This means that YARN can be replaced with other virtualization 
frameworks &mdash; in particular, we are interested in adding direct AWS 
integration. Many companies run in AWS which is itself a virtualization 
framework, which for Samza&rsquo;s purposes is equivalent to YARN: it allows 
you to create and destroy virtual &ldquo;container&rdquo; machines and 
guarantees fixed resources for these containers. Since stream processing jobs 
are long-running, it is a bit silly to run a YARN cluster inside AWS and then 
schedule individual jobs within this cluster. Instead, a more sensible approach 
would be to directly allocate a set of EC2 instances for your jobs.</p>
+
+<p>We think there will be a lot of innovation both in open source 
virtualization frameworks like Mesos and YARN and in commercial cloud providers 
like Amazon, so it makes sense to integrate with them.</p>
+
+<h2 id="mupd8-&raquo;"><a href="mupd8.html">MUPD8 &raquo;</a></h2>
+
+
+          </div>
+        </div>
+
+      </div><!-- /.wrapper-content -->
+    </div><!-- /.wrapper -->
+
+    <div class="footer">
+      <div class="container">
+        <!-- nothing for now. -->
+      </div>
+    </div>
+
+    <!-- Google Analytics -->
+    <script>
+      
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+      
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-43122768-1', 'apache.org');
+      ga('send', 'pageview');
+
+    </script>
+  </body>
+</html>


Reply via email to