You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by uc...@apache.org on 2017/01/18 14:00:14 UTC

[14/84] [abbrv] flink-web git commit: Updated Flink site

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/content/news/2015/12/11/storm-compatibility.html
----------------------------------------------------------------------
diff --git a/content/news/2015/12/11/storm-compatibility.html b/content/news/2015/12/11/storm-compatibility.html
deleted file mode 100644
index 79d6b99..0000000
--- a/content/news/2015/12/11/storm-compatibility.html
+++ /dev/null
@@ -1,348 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
-    <title>Apache Flink: Storm Compatibility in Apache Flink: How to run existing Storm topologies on Flink</title>
-    <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
-    <link rel="icon" href="/favicon.ico" type="image/x-icon">
-
-    <!-- Bootstrap -->
-    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
-    <link rel="stylesheet" href="/css/flink.css">
-    <link rel="stylesheet" href="/css/syntax.css">
-
-    <!-- Blog RSS feed -->
-    <link href="/blog/feed.xml" rel="alternate" type="application/rss+xml" title="Apache Flink Blog: RSS feed" />
-
-    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
-    <!-- We need to load Jquery in the header for custom google analytics event tracking-->
-    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
-
-    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
-    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
-    <!--[if lt IE 9]>
-      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
-      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
-    <![endif]-->
-  </head>
-  <body>  
-    
-
-  <!-- Top navbar. -->
-    <nav class="navbar navbar-default navbar-fixed-top">
-      <div class="container">
-        <!-- The logo. -->
-        <div class="navbar-header">
-          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-          </button>
-          <div class="navbar-logo">
-            <a href="/">
-              <img alt="Apache Flink" src="/img/navbar-brand-logo.jpg" width="78px" height="40px">
-            </a>
-          </div>
-        </div><!-- /.navbar-header -->
-
-        <!-- The navigation links. -->
-        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
-          <ul class="nav navbar-nav">
-
-            <!-- Overview -->
-            <li><a href="/index.html">Overview</a></li>
-
-            <!-- Features -->
-            <li><a href="/features.html">Features</a></li>
-
-            <!-- Downloads -->
-            <li><a href="/downloads.html">Downloads</a></li>
-
-            <!-- FAQ -->
-            <li><a href="/faq.html">FAQ</a></li>
-
-
-            <!-- Quickstart -->
-            <li class="dropdown">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Quickstart <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/setup_quickstart.html">Setup</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/run_example_quickstart.html">Example: Wikipedia Edit Stream</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/java_api_quickstart.html">Java API</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/scala_api_quickstart.html">Scala API</a></li>
-              </ul>
-            </li>
-
-            <!-- Documentation -->
-            <li class="dropdown">
-              <a href="" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Documentation <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Latest stable release -->
-                <li role="presentation" class="dropdown-header"><strong>Latest Release</strong> (Stable)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1">1.1 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/java" class="active">1.1 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/scala/index.html" class="active">1.1 ScalaDocs</a></li> -->
-
-                <!-- Snapshot docs -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Snapshot</strong> (Development)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2">1.2 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/java" class="active">1.2 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/scala/index.html" class="active">1.2 ScalaDocs</a></li> -->
-
-                <!-- Wiki -->
-                <li class="divider"></li>
-                <li><a href="/visualizer/"><small><span class="glyphicon glyphicon-new-window"></span></small> Plan Visualizer</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-
-          </ul>
-
-          <ul class="nav navbar-nav navbar-right">
-            <!-- Blog -->
-            <li class=" active hidden-md hidden-sm"><a href="/blog/">Blog</a></li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Community -->
-                <li role="presentation" class="dropdown-header"><strong>Community</strong></li>
-                <li><a href="/community.html#mailing-lists">Mailing Lists</a></li>
-                <li><a href="/community.html#irc">IRC</a></li>
-                <li><a href="/community.html#stack-overflow">Stack Overflow</a></li>
-                <li><a href="/community.html#issue-tracker">Issue Tracker</a></li>
-                <li><a href="/community.html#third-party-packages">Third Party Packages</a></li>
-                <li><a href="/community.html#source-code">Source Code</a></li>
-                <li><a href="/community.html#people">People</a></li>
-                <li><a href="/poweredby.html">Powered by Flink</a></li>
-
-                <!-- Contribute -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Contribute</strong></li>
-                <li><a href="/how-to-contribute.html">How to Contribute</a></li>
-                <li><a href="/contribute-code.html">Contribute Code</a></li>
-                <li><a href="/contribute-documentation.html">Contribute Documentation</a></li>
-                <li><a href="/improve-website.html">Improve the Website</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals"><small><span class="glyphicon glyphicon-new-window"></span></small> Flink Improvement Proposals (Design Docs)</a></li>
-              </ul>
-            </li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Project <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Project -->
-                <li role="presentation" class="dropdown-header"><strong>Project</strong></li>
-                <li><a href="/slides.html">Slides</a></li>
-                <li><a href="/material.html">Material</a></li>
-                <li><a href="https://twitter.com/apacheflink"><small><span class="glyphicon glyphicon-new-window"></span></small> Twitter</a></li>
-                <li><a href="https://github.com/apache/flink"><small><span class="glyphicon glyphicon-new-window"></span></small> GitHub</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-          </ul>
-        </div><!-- /.navbar-collapse -->
-      </div><!-- /.container -->
-    </nav>
-
-
-    <!-- Main content. -->
-    <div class="container">
-      
-
-<div class="row">
-  <div class="col-sm-8 col-sm-offset-2">
-    <div class="row">
-      <h1>Storm Compatibility in Apache Flink: How to run existing Storm topologies on Flink</h1>
-
-      <article>
-        <p>11 Dec 2015 by Matthias J. Sax (<a href="https://twitter.com/MatthiasJSax">@MatthiasJSax</a>)</p>
-
-<p><a href="https://storm.apache.org">Apache Storm</a> was one of the first distributed and scalable stream processing systems available in the open source space offering (near) real-time tuple-by-tuple processing semantics.
-Initially released by the developers at Backtype in 2011 under the Eclipse open-source license, it became popular very quickly.
-Only shortly afterwards, Twitter acquired Backtype.
-Since then, Storm has been growing in popularity, is used in production at many big companies, and is the de-facto industry standard for big data stream processing.
-In 2013, Storm entered the Apache incubator program, followed by its graduation to top-level in 2014.</p>
-
-<p>Apache Flink is a stream processing engine that improves upon older technologies like Storm in several dimensions,
-including <a href="https://ci.apache.org/projects/flink/flink-docs-master/internals/stream_checkpointing.html">strong consistency guarantees</a> (\u201cexactly once\u201d),
-a higher level <a href="https://ci.apache.org/projects/flink/flink-docs-master/apis/streaming_guide.html">DataStream API</a>,
-support for <a href="http://flink.apache.org/news/2015/12/04/Introducing-windows.html">event time and a rich windowing system</a>,
-as well as <a href="https://data-artisans.com/high-throughput-low-latency-and-exactly-once-stream-processing-with-apache-flink/">superior throughput with competitive low latency</a>.</p>
-
-<p>While Flink offers several technical benefits over Storm, an existing investment on a codebase of applications developed for Storm often makes it difficult to switch engines.
-For these reasons, as part of the Flink 0.10 release, Flink ships with a Storm compatibility package that allows users to:</p>
-
-<ul>
-  <li>Run <strong>unmodified</strong> Storm topologies using Apache Flink benefiting from superior performance.</li>
-  <li><strong>Embed</strong> Storm code (spouts and bolts) as operators inside Flink DataStream programs.</li>
-</ul>
-
-<p>Only minor code changes are required in order to submit the program to Flink instead of Storm.
-This minimizes the work for developers to run existing Storm topologies while leveraging Apache Flink\u2019s fast and robust execution engine.</p>
-
-<p>We note that the Storm compatibility package is continuously improving and does not cover the full spectrum of Storm\u2019s API.
-However, it is powerful enough to cover many use cases.</p>
-
-<h2 id="executing-storm-topologies-with-flink">Executing Storm topologies with Flink</h2>
-
-<center>
-<img src="/img/blog/flink-storm.png" style="height:200px;margin:15px" />
-</center>
-
-<p>The easiest way to use the Storm compatibility package is by executing a whole Storm topology in Flink.
-For this, you only need to replace the dependency <code>storm-core</code> by <code>flink-storm</code> in your Storm project and <strong>change two lines of code</strong> in your original Storm program.</p>
-
-<p>The following example shows a simple Storm-Word-Count-Program that can be executed in Flink.
-First, the program is assembled the Storm way without any code change to Spouts, Bolts, or the topology itself.</p>
-
-<div class="highlight"><pre><code class="language-java"><span class="c1">// assemble topology, the Storm way</span>
-<span class="n">TopologyBuilder</span> <span class="n">builder</span> <span class="o">=</span> <span class="k">new</span> <span class="nf">TopologyBuilder</span><span class="o">();</span>
-<span class="n">builder</span><span class="o">.</span><span class="na">setSpout</span><span class="o">(</span><span class="s">&quot;source&quot;</span><span class="o">,</span> <span class="k">new</span> <span class="nf">StormFileSpout</span><span class="o">(</span><span class="n">inputFilePath</span><span class="o">));</span>
-<span class="n">builder</span><span class="o">.</span><span class="na">setBolt</span><span class="o">(</span><span class="s">&quot;tokenizer&quot;</span><span class="o">,</span> <span class="k">new</span> <span class="nf">StormBoltTokenizer</span><span class="o">())</span>
-       <span class="o">.</span><span class="na">shuffleGrouping</span><span class="o">(</span><span class="s">&quot;source&quot;</span><span class="o">);</span>
-<span class="n">builder</span><span class="o">.</span><span class="na">setBolt</span><span class="o">(</span><span class="s">&quot;counter&quot;</span><span class="o">,</span> <span class="k">new</span> <span class="nf">StormBoltCounter</span><span class="o">())</span>
-       <span class="o">.</span><span class="na">fieldsGrouping</span><span class="o">(</span><span class="s">&quot;tokenizer&quot;</span><span class="o">,</span> <span class="k">new</span> <span class="nf">Fields</span><span class="o">(</span><span class="s">&quot;word&quot;</span><span class="o">));</span>
-<span class="n">builder</span><span class="o">.</span><span class="na">setBolt</span><span class="o">(</span><span class="s">&quot;sink&quot;</span><span class="o">,</span> <span class="k">new</span> <span class="nf">StormBoltFileSink</span><span class="o">(</span><span class="n">outputFilePath</span><span class="o">))</span>
-       <span class="o">.</span><span class="na">shuffleGrouping</span><span class="o">(</span><span class="s">&quot;counter&quot;</span><span class="o">);</span></code></pre></div>
-
-<p>In order to execute the topology, we need to translate it to a <code>FlinkTopology</code> and submit it to a local or remote Flink cluster, very similar to submitting the application to a Storm cluster.<sup><a href="#fn1" id="ref1">1</a></sup></p>
-
-<div class="highlight"><pre><code class="language-java"><span class="c1">// transform Storm topology to Flink program</span>
-<span class="c1">// replaces: StormTopology topology = builder.createTopology();</span>
-<span class="n">FlinkTopology</span> <span class="n">topology</span> <span class="o">=</span> <span class="n">FlinkTopology</span><span class="o">.</span><span class="na">createTopology</span><span class="o">(</span><span class="n">builder</span><span class="o">);</span>
-
-<span class="n">Config</span> <span class="n">conf</span> <span class="o">=</span> <span class="k">new</span> <span class="nf">Config</span><span class="o">();</span>
-<span class="k">if</span><span class="o">(</span><span class="n">runLocal</span><span class="o">)</span> <span class="o">{</span>
-	<span class="c1">// use FlinkLocalCluster instead of LocalCluster</span>
-	<span class="n">FlinkLocalCluster</span> <span class="n">cluster</span> <span class="o">=</span> <span class="n">FlinkLocalCluster</span><span class="o">.</span><span class="na">getLocalCluster</span><span class="o">();</span>
-	<span class="n">cluster</span><span class="o">.</span><span class="na">submitTopology</span><span class="o">(</span><span class="s">&quot;WordCount&quot;</span><span class="o">,</span> <span class="n">conf</span><span class="o">,</span> <span class="n">topology</span><span class="o">);</span>
-<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
-	<span class="c1">// use FlinkSubmitter instead of StormSubmitter</span>
-	<span class="n">FlinkSubmitter</span><span class="o">.</span><span class="na">submitTopology</span><span class="o">(</span><span class="s">&quot;WordCount&quot;</span><span class="o">,</span> <span class="n">conf</span><span class="o">,</span> <span class="n">topology</span><span class="o">);</span>
-<span class="o">}</span></code></pre></div>
-
-<p>As a shorter Flink-style alternative that replaces the Storm-style submission code, you can also use context-based job execution:</p>
-
-<div class="highlight"><pre><code class="language-java"><span class="c1">// transform Storm topology to Flink program (as above)</span>
-<span class="n">FlinkTopology</span> <span class="n">topology</span> <span class="o">=</span> <span class="n">FlinkTopology</span><span class="o">.</span><span class="na">createTopology</span><span class="o">(</span><span class="n">builder</span><span class="o">);</span>
-
-<span class="c1">// executes locally by default or remotely if submitted with Flink&#39;s command-line client</span>
-<span class="n">topology</span><span class="o">.</span><span class="na">execute</span><span class="o">()</span></code></pre></div>
-
-<p>After the code is packaged in a jar file (e.g., <code>StormWordCount.jar</code>), it can be easily submitted to Flink via</p>
-
-<div class="highlight"><pre><code>bin/flink run StormWordCount.jar
-</code></pre></div>
-
-<p>The used Spouts and Bolts as well as the topology assemble code is not changed at all!
-Only the translation and submission step have to be changed to the Storm-API compatible Flink pendants.
-This allows for minimal code changes and easy adaption to Flink.</p>
-
-<h3 id="embedding-spouts-and-bolts-in-flink-programs">Embedding Spouts and Bolts in Flink programs</h3>
-
-<p>It is also possible to use Spouts and Bolts within a regular Flink DataStream program.
-The compatibility package provides wrapper classes for Spouts and Bolts which are implemented as a Flink <code>SourceFunction</code> and <code>StreamOperator</code> respectively.
-Those wrappers automatically translate incoming Flink POJO and <code>TupleXX</code> records into Storm\u2019s <code>Tuple</code> type and emitted <code>Values</code> back into either POJOs or <code>TupleXX</code> types for further processing by Flink operators.
-As Storm is type agnostic, it is required to specify the output type of embedded Spouts/Bolts manually to get a fully typed Flink streaming program.</p>
-
-<div class="highlight"><pre><code class="language-java"><span class="c1">// use regular Flink streaming environment</span>
-<span class="n">StreamExecutionEnvironment</span> <span class="n">env</span> <span class="o">=</span> <span class="n">StreamExecutionEnvironment</span><span class="o">.</span><span class="na">getExecutionEnvironment</span><span class="o">();</span>
-
-<span class="c1">// use Spout as source</span>
-<span class="n">DataStream</span><span class="o">&lt;</span><span class="n">Tuple1</span><span class="o">&lt;</span><span class="n">String</span><span class="o">&gt;&gt;</span> <span class="n">source</span> <span class="o">=</span> 
-  <span class="n">env</span><span class="o">.</span><span class="na">addSource</span><span class="o">(</span><span class="c1">// Flink provided wrapper including original Spout</span>
-                <span class="k">new</span> <span class="n">SpoutWrapper</span><span class="o">&lt;</span><span class="n">String</span><span class="o">&gt;(</span><span class="k">new</span> <span class="nf">FileSpout</span><span class="o">(</span><span class="n">localFilePath</span><span class="o">)),</span> 
-                <span class="c1">// specify output type manually</span>
-                <span class="n">TypeExtractor</span><span class="o">.</span><span class="na">getForObject</span><span class="o">(</span><span class="k">new</span> <span class="n">Tuple1</span><span class="o">&lt;</span><span class="n">String</span><span class="o">&gt;(</span><span class="s">&quot;&quot;</span><span class="o">)));</span>
-<span class="c1">// FileSpout cannot be parallelized</span>
-<span class="n">DataStream</span><span class="o">&lt;</span><span class="n">Tuple1</span><span class="o">&lt;</span><span class="n">String</span><span class="o">&gt;&gt;</span> <span class="n">text</span> <span class="o">=</span> <span class="n">source</span><span class="o">.</span><span class="na">setParallelism</span><span class="o">(</span><span class="mi">1</span><span class="o">);</span>
-
-<span class="c1">// further processing with Flink</span>
-<span class="n">DataStream</span><span class="o">&lt;</span><span class="n">Tuple2</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Integer</span><span class="o">&gt;</span> <span class="n">tokens</span> <span class="o">=</span> <span class="n">text</span><span class="o">.</span><span class="na">flatMap</span><span class="o">(</span><span class="k">new</span> <span class="nf">Tokenizer</span><span class="o">()).</span><span class="na">keyBy</span><span class="o">(</span><span class="mi">0</span><span class="o">);</span>
-
-<span class="c1">// use Bolt for counting</span>
-<span class="n">DataStream</span><span class="o">&lt;</span><span class="n">Tuple2</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Integer</span><span class="o">&gt;</span> <span class="n">counts</span> <span class="o">=</span>
-  <span class="n">tokens</span><span class="o">.</span><span class="na">transform</span><span class="o">(</span><span class="s">&quot;Counter&quot;</span><span class="o">,</span>
-                   <span class="c1">// specify output type manually</span>
-                   <span class="n">TypeExtractor</span><span class="o">.</span><span class="na">getForObject</span><span class="o">(</span><span class="k">new</span> <span class="n">Tuple2</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Integer</span><span class="o">&gt;(</span><span class="s">&quot;&quot;</span><span class="o">,</span><span class="mi">0</span><span class="o">))</span>
-                   <span class="c1">// Flink provided wrapper including original Bolt</span>
-                   <span class="k">new</span> <span class="n">BoltWrapper</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Tuple2</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Integer</span><span class="o">&gt;&gt;(</span><span class="k">new</span> <span class="nf">BoltCounter</span><span class="o">()));</span>
-
-<span class="c1">// write result to file via Flink sink</span>
-<span class="n">counts</span><span class="o">.</span><span class="na">writeAsText</span><span class="o">(</span><span class="n">outputPath</span><span class="o">);</span>
-
-<span class="c1">// start Flink job</span>
-<span class="n">env</span><span class="o">.</span><span class="na">execute</span><span class="o">(</span><span class="s">&quot;WordCount with Spout source and Bolt counter&quot;</span><span class="o">);</span></code></pre></div>
-
-<p>Although some boilerplate code is needed (we plan to address this soon!), the actual embedded Spout and Bolt code can be used unmodified.
-We also note that the resulting program is fully typed, and type errors will be found by Flink\u2019s type extractor even if the original Spouts and Bolts are not.</p>
-
-<h2 id="outlook">Outlook</h2>
-
-<p>The Storm compatibility package is currently in beta and undergoes continuous development.
-We are currently working on providing consistency guarantees for stateful Bolts.
-Furthermore, we want to provide a better API integration for embedded Spouts and Bolts by providing a \u201cStormExecutionEnvironment\u201d as a special extension of Flink\u2019s <code>StreamExecutionEnvironment</code>.
-We are also investigating the integration of Storm\u2019s higher-level programming API Trident.</p>
-
-<h2 id="summary">Summary</h2>
-
-<p>Flink\u2019s compatibility package for Storm allows using unmodified Spouts and Bolts within Flink.
-This enables you to even embed third-party Spouts and Bolts where the source code is not available.
-While you can embed Spouts/Bolts in a Flink program and mix-and-match them with Flink operators, running whole topologies is the easiest way to get started and can be achieved with almost no code changes.</p>
-
-<p>If you want to try out Flink\u2019s Storm compatibility package checkout our <a href="https://ci.apache.org/projects/flink/flink-docs-master/apis/streaming/storm_compatibility.html">Documentation</a>.</p>
-
-<hr />
-
-<p><sup id="fn1">1. We confess, there are three lines changed compared to a Storm project <img class="emoji" style="width:16px;height:16px;align:absmiddle" src="/img/blog/smirk.png" />\u2014because the example covers local <em>and</em> remote execution. <a href="#ref1" title="Back to text.">\u21a9</a></sup></p>
-
-
-      </article>
-    </div>
-
-    <div class="row">
-      <div id="disqus_thread"></div>
-      <script type="text/javascript">
-        /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
-        var disqus_shortname = 'stratosphere-eu'; // required: replace example with your forum shortname
-
-        /* * * DON'T EDIT BELOW THIS LINE * * */
-        (function() {
-            var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
-            dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
-             (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
-        })();
-      </script>
-    </div>
-  </div>
-</div>
-
-      <hr />
-      <div class="footer text-center">
-        <p>Copyright � 2014-2016 <a href="http://apache.org">The Apache Software Foundation</a>. All Rights Reserved.</p>
-        <p>Apache Flink, Apache, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation.</p>
-        <p><a href="/privacy-policy.html">Privacy Policy</a> &middot; <a href="/blog/feed.xml">RSS feed</a></p>
-      </div>
-
-    </div><!-- /.container -->
-
-    <!-- Include all compiled plugins (below), or include individual files as needed -->
-    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
-    <script src="/js/codetabs.js"></script>
-
-    <!-- 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-52545728-1', 'auto');
-      ga('send', 'pageview');
-    </script>
-  </body>
-</html>

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/content/news/2015/12/18/a-year-in-review.html
----------------------------------------------------------------------
diff --git a/content/news/2015/12/18/a-year-in-review.html b/content/news/2015/12/18/a-year-in-review.html
deleted file mode 100644
index 1edd1b0..0000000
--- a/content/news/2015/12/18/a-year-in-review.html
+++ /dev/null
@@ -1,425 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
-    <title>Apache Flink: Flink 2015: A year in review, and a lookout to 2016</title>
-    <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
-    <link rel="icon" href="/favicon.ico" type="image/x-icon">
-
-    <!-- Bootstrap -->
-    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
-    <link rel="stylesheet" href="/css/flink.css">
-    <link rel="stylesheet" href="/css/syntax.css">
-
-    <!-- Blog RSS feed -->
-    <link href="/blog/feed.xml" rel="alternate" type="application/rss+xml" title="Apache Flink Blog: RSS feed" />
-
-    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
-    <!-- We need to load Jquery in the header for custom google analytics event tracking-->
-    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
-
-    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
-    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
-    <!--[if lt IE 9]>
-      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
-      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
-    <![endif]-->
-  </head>
-  <body>  
-    
-
-  <!-- Top navbar. -->
-    <nav class="navbar navbar-default navbar-fixed-top">
-      <div class="container">
-        <!-- The logo. -->
-        <div class="navbar-header">
-          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-          </button>
-          <div class="navbar-logo">
-            <a href="/">
-              <img alt="Apache Flink" src="/img/navbar-brand-logo.jpg" width="78px" height="40px">
-            </a>
-          </div>
-        </div><!-- /.navbar-header -->
-
-        <!-- The navigation links. -->
-        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
-          <ul class="nav navbar-nav">
-
-            <!-- Overview -->
-            <li><a href="/index.html">Overview</a></li>
-
-            <!-- Features -->
-            <li><a href="/features.html">Features</a></li>
-
-            <!-- Downloads -->
-            <li><a href="/downloads.html">Downloads</a></li>
-
-            <!-- FAQ -->
-            <li><a href="/faq.html">FAQ</a></li>
-
-
-            <!-- Quickstart -->
-            <li class="dropdown">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Quickstart <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/setup_quickstart.html">Setup</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/run_example_quickstart.html">Example: Wikipedia Edit Stream</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/java_api_quickstart.html">Java API</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/scala_api_quickstart.html">Scala API</a></li>
-              </ul>
-            </li>
-
-            <!-- Documentation -->
-            <li class="dropdown">
-              <a href="" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Documentation <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Latest stable release -->
-                <li role="presentation" class="dropdown-header"><strong>Latest Release</strong> (Stable)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1">1.1 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/java" class="active">1.1 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/scala/index.html" class="active">1.1 ScalaDocs</a></li> -->
-
-                <!-- Snapshot docs -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Snapshot</strong> (Development)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2">1.2 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/java" class="active">1.2 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/scala/index.html" class="active">1.2 ScalaDocs</a></li> -->
-
-                <!-- Wiki -->
-                <li class="divider"></li>
-                <li><a href="/visualizer/"><small><span class="glyphicon glyphicon-new-window"></span></small> Plan Visualizer</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-
-          </ul>
-
-          <ul class="nav navbar-nav navbar-right">
-            <!-- Blog -->
-            <li class=" active hidden-md hidden-sm"><a href="/blog/">Blog</a></li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Community -->
-                <li role="presentation" class="dropdown-header"><strong>Community</strong></li>
-                <li><a href="/community.html#mailing-lists">Mailing Lists</a></li>
-                <li><a href="/community.html#irc">IRC</a></li>
-                <li><a href="/community.html#stack-overflow">Stack Overflow</a></li>
-                <li><a href="/community.html#issue-tracker">Issue Tracker</a></li>
-                <li><a href="/community.html#third-party-packages">Third Party Packages</a></li>
-                <li><a href="/community.html#source-code">Source Code</a></li>
-                <li><a href="/community.html#people">People</a></li>
-                <li><a href="/poweredby.html">Powered by Flink</a></li>
-
-                <!-- Contribute -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Contribute</strong></li>
-                <li><a href="/how-to-contribute.html">How to Contribute</a></li>
-                <li><a href="/contribute-code.html">Contribute Code</a></li>
-                <li><a href="/contribute-documentation.html">Contribute Documentation</a></li>
-                <li><a href="/improve-website.html">Improve the Website</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals"><small><span class="glyphicon glyphicon-new-window"></span></small> Flink Improvement Proposals (Design Docs)</a></li>
-              </ul>
-            </li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Project <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Project -->
-                <li role="presentation" class="dropdown-header"><strong>Project</strong></li>
-                <li><a href="/slides.html">Slides</a></li>
-                <li><a href="/material.html">Material</a></li>
-                <li><a href="https://twitter.com/apacheflink"><small><span class="glyphicon glyphicon-new-window"></span></small> Twitter</a></li>
-                <li><a href="https://github.com/apache/flink"><small><span class="glyphicon glyphicon-new-window"></span></small> GitHub</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-          </ul>
-        </div><!-- /.navbar-collapse -->
-      </div><!-- /.container -->
-    </nav>
-
-
-    <!-- Main content. -->
-    <div class="container">
-      
-
-<div class="row">
-  <div class="col-sm-8 col-sm-offset-2">
-    <div class="row">
-      <h1>Flink 2015: A year in review, and a lookout to 2016</h1>
-
-      <article>
-        <p>18 Dec 2015 by Robert Metzger (<a href="https://twitter.com/rmetzger_">@rmetzger_</a>)</p>
-
-<p>With 2015 ending, we thought that this would be good time to reflect
-on the amazing work done by the Flink community over this past year,
-and how much this community has grown.</p>
-
-<p>Overall, we have seen Flink grow in terms of functionality from an
-engine to one of the most complete open-source stream processing
-frameworks available. The community grew from a relatively small and
-geographically focused team, to a truly global, and one of the largest
-big data communities in the the Apache Software Foundation.</p>
-
-<p>We will also look at some interesting stats, including that the
-busiest days for Flink are Mondays (who would have thought :-).</p>
-
-<h1 id="community-growth">Community growth</h1>
-
-<p>Let us start with some simple statistics from <a href="https://github.com/apache/flink">Flink\u2019s
-github repository</a>. During 2015, the
-Flink community <strong>doubled</strong> in size, from about 75 contributors to
-over 150. Forks of the repository more than <strong>tripled</strong> from 160 in
-February 2015 to 544 in December 2015, and the number of stars of the
-repository almost tripled from 289 to 813.</p>
-
-<center>
-<img src="/img/blog/community-growth.png" style="height:400px;margin:15px" />
-</center>
-
-<p>Although Flink started out geographically in Berlin, Germany, the
-community is by now spread all around the globe, with many
-contributors from North America, Europe, and Asia. A simple search at
-meetup.com for groups that mention Flink as a focus area reveals <a href="http://apache-flink.meetup.com/">16
-meetups around the globe</a>:</p>
-
-<center>
-<img src="/img/blog/meetup-map.png" style="height:400px;margin:15px" />
-</center>
-
-<h1 id="flink-forward-2015">Flink Forward 2015</h1>
-
-<p>One of the highlights of the year for Flink was undoubtedly the <a href="http://2015.flink-forward.org/">Flink
-Forward</a> conference, the first conference
-on Apache Flink that was held in October in Berlin. More than 250
-participants (roughly half based outside Germany where the conference
-was held) attended more than 33 technical talks from organizations
-including Google, MongoDB, Bouygues Telecom, NFLabs, Euranova, RedHat,
-IBM, Huawei, Intel, Ericsson, Capital One, Zalando, Amadeus, the Otto
-Group, and ResearchGate. If you have not yet watched their talks,
-check out the <a href="http://2015.flink-forward.org/?post_type=day">slides</a> and
-<a href="https://www.youtube.com/playlist?list=PLDX4T_cnKjD31JeWR1aMOi9LXPRQ6nyHO">videos</a>
-from Flink Forward.</p>
-
-<center>
-<img src="/img/blog/ff-speakers.png" style="height:400px;margin:15px" />
-</center>
-
-<h1 id="media-coverage">Media coverage</h1>
-
-<p>And of course, interest in Flink was picked up by the tech
-media. During 2015, articles about Flink appeared in
-<a href="http://www.infoq.com/Apache-Flink/news/">InfoQ</a>,
-<a href="http://www.zdnet.com/article/five-open-source-big-data-projects-to-watch/">ZDNet</a>,
-<a href="http://www.datanami.com/tag/apache-flink/">Datanami</a>,
-<a href="http://www.infoworld.com/article/2919602/hadoop/flink-hadoops-new-contender-for-mapreduce-spark.html">Infoworld</a>
-(including being one of the <a href="http://www.infoworld.com/article/2982429/open-source-tools/bossie-awards-2015-the-best-open-source-big-data-tools.html">best open source big data tools of
-2015</a>),
-the <a href="http://blogs.gartner.com/nick-heudecker/apache-flink-offers-a-challenge-to-spark/">Gartner
-blog</a>,
-<a href="http://dataconomy.com/tag/apache-flink/">Dataconomy</a>,
-<a href="http://sdtimes.com/tag/apache-flink/">SDTimes</a>, the <a href="https://www.mapr.com/blog/apache-flink-new-way-handle-streaming-data">MapR
-blog</a>,
-<a href="http://www.kdnuggets.com/2015/08/apache-flink-stream-processing.html">KDnuggets</a>,
-and
-<a href="http://www.hadoopsphere.com/2015/02/distributed-data-processing-with-apache.html">HadoopSphere</a>.</p>
-
-<center>
-<img src="/img/blog/appeared-in.png" style="height:400px;margin:15px" />
-</center>
-
-<p>It is interesting to see that Hadoop Summit EMEA 2016 had a whopping
-number of 17 (!) talks submitted that are mentioning Flink in their
-title and abstract:</p>
-
-<center>
-<img src="/img/blog/hadoop-summit.png" style="height:400px;margin:15px" />
-</center>
-
-<h1 id="fun-with-stats-when-do-committers-commit">Fun with stats: when do committers commit?</h1>
-
-<p>To get some deeper insight on what is happening in the Flink
-community, let us do some analytics on the git log of the project :-)
-The easiest thing we can do is count the number of commits at the
-repository in 2015. Running</p>
-
-<div class="highlight"><pre><code>git log --pretty=oneline --after=1/1/2015  | wc -l
-</code></pre></div>
-
-<p>on the Flink repository yields a total of <strong>2203 commits</strong> in 2015.</p>
-
-<p>To dig deeper, we will use an open source tool called gitstats that
-will give us some interesting statistics on the committer
-behavior. You can create these also yourself and see many more by
-following four easy steps:</p>
-
-<ol>
-  <li>Download gitstats from the <a href="http://gitstats.sourceforge.net/">project homepage</a>.. E.g., on OS X with homebrew, type</li>
-</ol>
-
-<div class="highlight"><pre><code>brew install --HEAD homebrew/head-only/gitstats
-</code></pre></div>
-
-<ol>
-  <li>Clone the Apache Flink git repository:</li>
-</ol>
-
-<div class="highlight"><pre><code>git clone git@github.com:apache/flink.git
-</code></pre></div>
-
-<ol>
-  <li>Generate the statistics</li>
-</ol>
-
-<div class="highlight"><pre><code>gitstats flink/ flink-stats/
-</code></pre></div>
-
-<ol>
-  <li>View all the statistics as an html page using your favorite browser (e.g., chrome):</li>
-</ol>
-
-<div class="highlight"><pre><code>chrome flink-stats/index.html
-</code></pre></div>
-
-<p>First, we can see a steady growth of lines of code in Flink since the
-initial Apache incubator project. During 2015, the codebase almost
-<strong>doubled</strong> from 500,000 LOC to 900,000 LOC.</p>
-
-<center>
-<img src="/img/blog/code-growth.png" style="height:400px;margin:15px" />
-</center>
-
-<p>It is interesting to see when committers commit. For Flink, Monday
-afternoons are by far the most popular times to commit to the
-repository:</p>
-
-<center>
-<img src="/img/blog/commit-stats.png" style="height:400px;margin:15px" />
-</center>
-
-<h1 id="feature-timeline">Feature timeline</h1>
-
-<p>So, what were the major features added to Flink and the Flink
-ecosystem during 2015? Here is a (non-exhaustive) chronological list:</p>
-
-<center>
-<img src="/img/blog/feature-timeline.png" style="height:400px;margin:15px" />
-</center>
-
-<h1 id="roadmap-for-2016">Roadmap for 2016</h1>
-
-<p>With 2015 coming to a close, the Flink community has already started
-discussing Flink\u2019s roadmap for the future. Some highlights
-are:</p>
-
-<ul>
-  <li>
-    <p><strong>Runtime scaling of streaming jobs:</strong> streaming jobs are running
-  forever, and need to react to a changing environment. Runtime
-  scaling means dynamically increasing and decreasing the
-  parallelism of a job to sustain certain SLAs, or react to changing
-  input throughput.</p>
-  </li>
-  <li>
-    <p><strong>SQL queries for static data sets and streams:</strong> building on top of
-  Flink\u2019s Table API, users should be able to write SQL
-  queries for static data sets, as well as SQL queries on data
-  streams that continuously produce new results.</p>
-  </li>
-  <li>
-    <p><strong>Streaming operators backed by managed memory:</strong> currently,
-  streaming operators like user-defined state and windows are backed
-  by JVM heap objects. Moving those to Flink managed memory will add
-  the ability to spill to disk, GC efficiency, as well as better
-  control over memory utilization.</p>
-  </li>
-  <li>
-    <p><strong>Library for detecting temporal event patterns:</strong> a common use case
-  for stream processing is detecting patterns in an event stream
-  with timestamps. Flink makes this possible with its support for
-  event time, so many of these operators can be surfaced in the form
-  of a library.</p>
-  </li>
-  <li>
-    <p><strong>Support for Apache Mesos, and resource-dynamic YARN support:</strong>
-  support for both Mesos and YARN, including dynamic allocation and
-  release of resource for more resource elasticity (for both batch
-  and stream processing).</p>
-  </li>
-  <li>
-    <p><strong>Security:</strong> encrypt both the messages exchanged between
-  TaskManagers and JobManager, as well as the connections for data
-  exchange between workers.</p>
-  </li>
-  <li>
-    <p><strong>More streaming connectors, more runtime metrics, and continuous
-  DataStream API enhancements:</strong> add support for more sources and
-  sinks (e.g., Amazon Kinesis, Cassandra, Flume, etc), expose more
-  metrics to the user, and provide continuous improvements to the
-  DataStream API.</p>
-  </li>
-</ul>
-
-<p>If you are interested in these features, we highly encourage you to
-take a look at the <a href="https://docs.google.com/document/d/1ExmtVpeVVT3TIhO1JoBpC5JKXm-778DAD7eqw5GANwE/edit">current
-draft</a>,
-and <a href="https://mail-archives.apache.org/mod_mbox/flink-dev/201512.mbox/browser">join the
-discussion</a>
-on the Flink mailing lists.</p>
-
-
-      </article>
-    </div>
-
-    <div class="row">
-      <div id="disqus_thread"></div>
-      <script type="text/javascript">
-        /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
-        var disqus_shortname = 'stratosphere-eu'; // required: replace example with your forum shortname
-
-        /* * * DON'T EDIT BELOW THIS LINE * * */
-        (function() {
-            var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
-            dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
-             (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
-        })();
-      </script>
-    </div>
-  </div>
-</div>
-
-      <hr />
-      <div class="footer text-center">
-        <p>Copyright � 2014-2016 <a href="http://apache.org">The Apache Software Foundation</a>. All Rights Reserved.</p>
-        <p>Apache Flink, Apache, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation.</p>
-        <p><a href="/privacy-policy.html">Privacy Policy</a> &middot; <a href="/blog/feed.xml">RSS feed</a></p>
-      </div>
-
-    </div><!-- /.container -->
-
-    <!-- Include all compiled plugins (below), or include individual files as needed -->
-    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
-    <script src="/js/codetabs.js"></script>
-
-    <!-- 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-52545728-1', 'auto');
-      ga('send', 'pageview');
-    </script>
-  </body>
-</html>

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/content/news/2016/02/11/release-0.10.2.html
----------------------------------------------------------------------
diff --git a/content/news/2016/02/11/release-0.10.2.html b/content/news/2016/02/11/release-0.10.2.html
deleted file mode 100644
index f9010f3..0000000
--- a/content/news/2016/02/11/release-0.10.2.html
+++ /dev/null
@@ -1,238 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
-    <title>Apache Flink: Flink 0.10.2 Released</title>
-    <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
-    <link rel="icon" href="/favicon.ico" type="image/x-icon">
-
-    <!-- Bootstrap -->
-    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
-    <link rel="stylesheet" href="/css/flink.css">
-    <link rel="stylesheet" href="/css/syntax.css">
-
-    <!-- Blog RSS feed -->
-    <link href="/blog/feed.xml" rel="alternate" type="application/rss+xml" title="Apache Flink Blog: RSS feed" />
-
-    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
-    <!-- We need to load Jquery in the header for custom google analytics event tracking-->
-    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
-
-    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
-    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
-    <!--[if lt IE 9]>
-      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
-      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
-    <![endif]-->
-  </head>
-  <body>  
-    
-
-  <!-- Top navbar. -->
-    <nav class="navbar navbar-default navbar-fixed-top">
-      <div class="container">
-        <!-- The logo. -->
-        <div class="navbar-header">
-          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-          </button>
-          <div class="navbar-logo">
-            <a href="/">
-              <img alt="Apache Flink" src="/img/navbar-brand-logo.jpg" width="78px" height="40px">
-            </a>
-          </div>
-        </div><!-- /.navbar-header -->
-
-        <!-- The navigation links. -->
-        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
-          <ul class="nav navbar-nav">
-
-            <!-- Overview -->
-            <li><a href="/index.html">Overview</a></li>
-
-            <!-- Features -->
-            <li><a href="/features.html">Features</a></li>
-
-            <!-- Downloads -->
-            <li><a href="/downloads.html">Downloads</a></li>
-
-            <!-- FAQ -->
-            <li><a href="/faq.html">FAQ</a></li>
-
-
-            <!-- Quickstart -->
-            <li class="dropdown">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Quickstart <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/setup_quickstart.html">Setup</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/run_example_quickstart.html">Example: Wikipedia Edit Stream</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/java_api_quickstart.html">Java API</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/scala_api_quickstart.html">Scala API</a></li>
-              </ul>
-            </li>
-
-            <!-- Documentation -->
-            <li class="dropdown">
-              <a href="" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Documentation <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Latest stable release -->
-                <li role="presentation" class="dropdown-header"><strong>Latest Release</strong> (Stable)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1">1.1 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/java" class="active">1.1 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/scala/index.html" class="active">1.1 ScalaDocs</a></li> -->
-
-                <!-- Snapshot docs -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Snapshot</strong> (Development)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2">1.2 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/java" class="active">1.2 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/scala/index.html" class="active">1.2 ScalaDocs</a></li> -->
-
-                <!-- Wiki -->
-                <li class="divider"></li>
-                <li><a href="/visualizer/"><small><span class="glyphicon glyphicon-new-window"></span></small> Plan Visualizer</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-
-          </ul>
-
-          <ul class="nav navbar-nav navbar-right">
-            <!-- Blog -->
-            <li class=" active hidden-md hidden-sm"><a href="/blog/">Blog</a></li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Community -->
-                <li role="presentation" class="dropdown-header"><strong>Community</strong></li>
-                <li><a href="/community.html#mailing-lists">Mailing Lists</a></li>
-                <li><a href="/community.html#irc">IRC</a></li>
-                <li><a href="/community.html#stack-overflow">Stack Overflow</a></li>
-                <li><a href="/community.html#issue-tracker">Issue Tracker</a></li>
-                <li><a href="/community.html#third-party-packages">Third Party Packages</a></li>
-                <li><a href="/community.html#source-code">Source Code</a></li>
-                <li><a href="/community.html#people">People</a></li>
-                <li><a href="/poweredby.html">Powered by Flink</a></li>
-
-                <!-- Contribute -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Contribute</strong></li>
-                <li><a href="/how-to-contribute.html">How to Contribute</a></li>
-                <li><a href="/contribute-code.html">Contribute Code</a></li>
-                <li><a href="/contribute-documentation.html">Contribute Documentation</a></li>
-                <li><a href="/improve-website.html">Improve the Website</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals"><small><span class="glyphicon glyphicon-new-window"></span></small> Flink Improvement Proposals (Design Docs)</a></li>
-              </ul>
-            </li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Project <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Project -->
-                <li role="presentation" class="dropdown-header"><strong>Project</strong></li>
-                <li><a href="/slides.html">Slides</a></li>
-                <li><a href="/material.html">Material</a></li>
-                <li><a href="https://twitter.com/apacheflink"><small><span class="glyphicon glyphicon-new-window"></span></small> Twitter</a></li>
-                <li><a href="https://github.com/apache/flink"><small><span class="glyphicon glyphicon-new-window"></span></small> GitHub</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-          </ul>
-        </div><!-- /.navbar-collapse -->
-      </div><!-- /.container -->
-    </nav>
-
-
-    <!-- Main content. -->
-    <div class="container">
-      
-
-<div class="row">
-  <div class="col-sm-8 col-sm-offset-2">
-    <div class="row">
-      <h1>Flink 0.10.2 Released</h1>
-
-      <article>
-        <p>11 Feb 2016</p>
-
-<p>Today, the Flink community released Flink version <strong>0.10.2</strong>, the second bugfix release of the 0.10 series.</p>
-
-<p>We <strong>recommend all users updating to this release</strong> by bumping the version of your Flink dependencies to <code>0.10.2</code> and updating the binaries on the server.</p>
-
-<h2 id="issues-fixed">Issues fixed</h2>
-
-<ul>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3242">FLINK-3242</a>: Adjust StateBackendITCase for 0.10 signatures of state backends</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3236">FLINK-3236</a>: Flink user code classloader as parent classloader from Flink core classes</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-2962">FLINK-2962</a>: Cluster startup script refers to unused variable</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3151">FLINK-3151</a>: Downgrade to Netty version 4.0.27.Final</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3224">FLINK-3224</a>: Call setInputType() on output formats that implement InputTypeConfigurable</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3218">FLINK-3218</a>: Fix overriding of user parameters when merging Hadoop configurations</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3189">FLINK-3189</a>: Fix argument parsing of CLI client INFO action</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3176">FLINK-3176</a>: Improve documentation for window apply</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3185">FLINK-3185</a>: Log error on failure during recovery</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3185">FLINK-3185</a>: Don\u2019t swallow test failure Exception</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3147">FLINK-3147</a>: Expose HadoopOutputFormatBase fields as protected</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3145">FLINK-3145</a>: Pin Kryo version of transitive dependencies</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3143">FLINK-3143</a>: Update Closure Cleaner\u2019s ASM references to ASM5</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3136">FLINK-3136</a>: Fix shaded imports in ClosureCleaner.scala</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3108">FLINK-3108</a>: JoinOperator\u2019s with() calls the wrong TypeExtractor method</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3125">FLINK-3125</a>: Web server starts also when JobManager log files cannot be accessed.</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3080">FLINK-3080</a>: Relax restrictions of DataStream.union()</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3081">FLINK-3081</a>: Properly stop periodic Kafka committer</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3082">FLINK-3082</a>: Fixed confusing error about an interface that no longer exists</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3067">FLINK-3067</a>: Enforce zkclient 0.7 for Kafka</li>
-  <li><a href="https://issues.apache.org/jira/browse/FLINK-3020">FLINK-3020</a>: Set number of task slots to maximum parallelism in local execution</li>
-</ul>
-
-      </article>
-    </div>
-
-    <div class="row">
-      <div id="disqus_thread"></div>
-      <script type="text/javascript">
-        /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
-        var disqus_shortname = 'stratosphere-eu'; // required: replace example with your forum shortname
-
-        /* * * DON'T EDIT BELOW THIS LINE * * */
-        (function() {
-            var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
-            dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
-             (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
-        })();
-      </script>
-    </div>
-  </div>
-</div>
-
-      <hr />
-      <div class="footer text-center">
-        <p>Copyright � 2014-2016 <a href="http://apache.org">The Apache Software Foundation</a>. All Rights Reserved.</p>
-        <p>Apache Flink, Apache, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation.</p>
-        <p><a href="/privacy-policy.html">Privacy Policy</a> &middot; <a href="/blog/feed.xml">RSS feed</a></p>
-      </div>
-
-    </div><!-- /.container -->
-
-    <!-- Include all compiled plugins (below), or include individual files as needed -->
-    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
-    <script src="/js/codetabs.js"></script>
-
-    <!-- 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-52545728-1', 'auto');
-      ga('send', 'pageview');
-    </script>
-  </body>
-</html>

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/content/news/2016/03/08/release-1.0.0.html
----------------------------------------------------------------------
diff --git a/content/news/2016/03/08/release-1.0.0.html b/content/news/2016/03/08/release-1.0.0.html
deleted file mode 100644
index f77dca3..0000000
--- a/content/news/2016/03/08/release-1.0.0.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
-    <title>Apache Flink: Announcing Apache Flink 1.0.0</title>
-    <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
-    <link rel="icon" href="/favicon.ico" type="image/x-icon">
-
-    <!-- Bootstrap -->
-    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
-    <link rel="stylesheet" href="/css/flink.css">
-    <link rel="stylesheet" href="/css/syntax.css">
-
-    <!-- Blog RSS feed -->
-    <link href="/blog/feed.xml" rel="alternate" type="application/rss+xml" title="Apache Flink Blog: RSS feed" />
-
-    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
-    <!-- We need to load Jquery in the header for custom google analytics event tracking-->
-    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
-
-    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
-    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
-    <!--[if lt IE 9]>
-      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
-      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
-    <![endif]-->
-  </head>
-  <body>  
-    
-
-  <!-- Top navbar. -->
-    <nav class="navbar navbar-default navbar-fixed-top">
-      <div class="container">
-        <!-- The logo. -->
-        <div class="navbar-header">
-          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-          </button>
-          <div class="navbar-logo">
-            <a href="/">
-              <img alt="Apache Flink" src="/img/navbar-brand-logo.jpg" width="78px" height="40px">
-            </a>
-          </div>
-        </div><!-- /.navbar-header -->
-
-        <!-- The navigation links. -->
-        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
-          <ul class="nav navbar-nav">
-
-            <!-- Overview -->
-            <li><a href="/index.html">Overview</a></li>
-
-            <!-- Features -->
-            <li><a href="/features.html">Features</a></li>
-
-            <!-- Downloads -->
-            <li><a href="/downloads.html">Downloads</a></li>
-
-            <!-- FAQ -->
-            <li><a href="/faq.html">FAQ</a></li>
-
-
-            <!-- Quickstart -->
-            <li class="dropdown">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Quickstart <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/setup_quickstart.html">Setup</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/run_example_quickstart.html">Example: Wikipedia Edit Stream</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/java_api_quickstart.html">Java API</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/scala_api_quickstart.html">Scala API</a></li>
-              </ul>
-            </li>
-
-            <!-- Documentation -->
-            <li class="dropdown">
-              <a href="" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><small><span class="glyphicon glyphicon-new-window"></span></small> Documentation <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Latest stable release -->
-                <li role="presentation" class="dropdown-header"><strong>Latest Release</strong> (Stable)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1">1.1 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/java" class="active">1.1 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.1/api/scala/index.html" class="active">1.1 ScalaDocs</a></li> -->
-
-                <!-- Snapshot docs -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Snapshot</strong> (Development)</li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2">1.2 Documentation</a></li>
-                <li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/java" class="active">1.2 Javadocs</a></li>
-                <!--<li><a href="http://ci.apache.org/projects/flink/flink-docs-release-1.2/api/scala/index.html" class="active">1.2 ScalaDocs</a></li> -->
-
-                <!-- Wiki -->
-                <li class="divider"></li>
-                <li><a href="/visualizer/"><small><span class="glyphicon glyphicon-new-window"></span></small> Plan Visualizer</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-
-          </ul>
-
-          <ul class="nav navbar-nav navbar-right">
-            <!-- Blog -->
-            <li class=" active hidden-md hidden-sm"><a href="/blog/">Blog</a></li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Community -->
-                <li role="presentation" class="dropdown-header"><strong>Community</strong></li>
-                <li><a href="/community.html#mailing-lists">Mailing Lists</a></li>
-                <li><a href="/community.html#irc">IRC</a></li>
-                <li><a href="/community.html#stack-overflow">Stack Overflow</a></li>
-                <li><a href="/community.html#issue-tracker">Issue Tracker</a></li>
-                <li><a href="/community.html#third-party-packages">Third Party Packages</a></li>
-                <li><a href="/community.html#source-code">Source Code</a></li>
-                <li><a href="/community.html#people">People</a></li>
-                <li><a href="/poweredby.html">Powered by Flink</a></li>
-
-                <!-- Contribute -->
-                <li class="divider"></li>
-                <li role="presentation" class="dropdown-header"><strong>Contribute</strong></li>
-                <li><a href="/how-to-contribute.html">How to Contribute</a></li>
-                <li><a href="/contribute-code.html">Contribute Code</a></li>
-                <li><a href="/contribute-documentation.html">Contribute Documentation</a></li>
-                <li><a href="/improve-website.html">Improve the Website</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals"><small><span class="glyphicon glyphicon-new-window"></span></small> Flink Improvement Proposals (Design Docs)</a></li>
-              </ul>
-            </li>
-
-            <li class="dropdown hidden-md hidden-sm">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Project <span class="caret"></span></a>
-              <ul class="dropdown-menu" role="menu">
-                <!-- Project -->
-                <li role="presentation" class="dropdown-header"><strong>Project</strong></li>
-                <li><a href="/slides.html">Slides</a></li>
-                <li><a href="/material.html">Material</a></li>
-                <li><a href="https://twitter.com/apacheflink"><small><span class="glyphicon glyphicon-new-window"></span></small> Twitter</a></li>
-                <li><a href="https://github.com/apache/flink"><small><span class="glyphicon glyphicon-new-window"></span></small> GitHub</a></li>
-                <li><a href="https://cwiki.apache.org/confluence/display/FLINK/Apache+Flink+Home"><small><span class="glyphicon glyphicon-new-window"></span></small> Wiki</a></li>
-              </ul>
-            </li>
-          </ul>
-        </div><!-- /.navbar-collapse -->
-      </div><!-- /.container -->
-    </nav>
-
-
-    <!-- Main content. -->
-    <div class="container">
-      
-
-<div class="row">
-  <div class="col-sm-8 col-sm-offset-2">
-    <div class="row">
-      <h1>Announcing Apache Flink 1.0.0</h1>
-
-      <article>
-        <p>08 Mar 2016</p>
-
-<p>The Apache Flink community is pleased to announce the availability of the 1.0.0 release. The community put significant effort into improving and extending Apache Flink since the last release, focusing on improving the experience of writing and executing data stream processing pipelines in production.</p>
-
-<center>
-<img src="/img/blog/flink-1.0.png" style="height:200px;margin:15px" />
-</center>
-
-<p>Flink version 1.0.0 marks the beginning of the 1.X.X series of releases, which will maintain backwards compatibility with 1.0.0. This means that applications written against stable APIs of Flink 1.0.0 will compile and run with all Flink versions in the 1. series. This is the first time we are formally guaranteeing compatibility in Flink\u2019s history, and we therefore see this release as a major milestone of the project, perhaps the most important since graduation as a top-level project.</p>
-
-<p>Apart from backwards compatibility, Flink 1.0.0 brings a variety of new user-facing features, as well as tons of bug fixes. About 64 contributors provided bug fixes, improvements, and new features such that in total more than 450 JIRA issues could be resolved.</p>
-
-<p>We encourage everyone to <a href="http://flink.apache.org/downloads.html">download the release</a> and <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.0/">check out the documentation</a>. Feedback through the Flink <a href="http://flink.apache.org/community.html#mailing-lists">mailing lists</a> is, as always, very welcome!</p>
-
-<h2 id="interface-stability-annotations">Interface stability annotations</h2>
-
-<p>Flink 1.0.0 introduces interface stability annotations for API classes and methods. Interfaces defined as <code>@Public</code> are guaranteed to remain stable across all releases of the 1.x series. The <code>@PublicEvolving</code> annotation marks API features that may be subject to change in future versions.</p>
-
-<p>Flink\u2019s stability annotations will help users to implement applications that compile and execute unchanged against future versions of Flink 1.x. This greatly reduces the complexity for users when upgrading to a newer Flink release.</p>
-
-<h2 id="out-of-core-state-support">Out-of-core state support</h2>
-
-<p>Flink 1.0.0 adds a new state backend that uses RocksDB to store state (both windows and user-defined key-value state). <a href="http://rocksdb.org/">RocksDB</a> is an embedded key/value store database, originally developed by Facebook.
-When using this backend, active state in streaming programs can grow well beyond memory. The RocksDB files are stored in a distributed file system such as HDFS or S3 for backups.</p>
-
-<h2 id="savepoints-and-version-upgrades">Savepoints and version upgrades</h2>
-
-<p>Savepoints are checkpoints of the state of a running streaming job that can be manually triggered by the user while the job is running. Savepoints solve several production headaches, including code upgrades (both application and framework), cluster maintenance and migration, A/B testing and what-if scenarios, as well as testing and debugging. Read more about savepoints at the <a href="http://data-artisans.com/how-apache-flink-enables-new-streaming-applications/">data Artisans blog</a>.</p>
-
-<h2 id="library-for-complex-event-processing-cep">Library for Complex Event Processing (CEP)</h2>
-
-<p>Complex Event Processing has been one of the oldest and more important use cases from stream processing. The new CEP functionality in Flink allows you to use a distributed general-purpose stream processor instead of a specialized CEP system to detect complex patterns in event streams. Get started with <a href="https://ci.apache.org/projects/flink/flink-docs-master/apis/streaming/libs/cep.html">CEP on Flink</a>.</p>
-
-<h2 id="enhanced-monitoring-interface-job-submission-checkpoint-statistics-and-backpressure-monitoring">Enhanced monitoring interface: job submission, checkpoint statistics and backpressure monitoring</h2>
-
-<p>The web interface now allows users to submit jobs. Previous Flink releases had a separate service for submitting jobs. The new interface is part of the JobManager frontend. It also works on YARN now.</p>
-
-<p>Backpressure monitoring allows users to trigger a sampling mechanism which analyzes the time operators are waiting for new network buffers. When senders are spending most of their time for new network buffers, they are experiencing backpressure from their downstream operators. Many users requested this feature for understanding bottlenecks in both batch and streaming applications.</p>
-
-<h2 id="improved-checkpointing-control-and-monitoring">Improved checkpointing control and monitoring</h2>
-
-<p>The checkpointing has been extended by a more fine-grained control mechanism: In previous versions, new checkpoints were triggered independent of the speed at which old checkpoints completed. This can lead to situations where new checkpoints are piling up, because they are triggered too frequently.</p>
-
-<p>The checkpoint coordinator now exposes statistics through our REST monitoring API and the web interface. Users can review the checkpoint size and duration on a per-operator basis and see the last completed checkpoints. This is helpful for identifying performance issues, such as processing slowdown by the checkpoints.</p>
-
-<h2 id="improved-kafka-connector-and-support-for-kafka-09">Improved Kafka connector and support for Kafka 0.9</h2>
-
-<p>Flink 1.0 supports both Kafka 0.8 and 0.9. With the new release, Flink exposes Kafka metrics for the producers and the 0.9 consumer through Flink\u2019s accumulator system. We also enhanced the existing connector for Kafka 0.8, allowing users to subscribe to multiple topics in one source.</p>
-
-<h2 id="changelog-and-known-issues">Changelog and known issues</h2>
-
-<p>This release resolves more than 450 issues, including bug fixes, improvements, and new features. See the <a href="/blog/release_1.0.0-changelog_known_issues.html#changelog">complete changelog</a> and <a href="/blog/release_1.0.0-changelog_known_issues.html#known-issues">known issues</a>.</p>
-
-<h2 id="list-of-contributors">List of contributors</h2>
-
-<ul>
-  <li>Abhishek Agarwal</li>
-  <li>Ajay Bhat</li>
-  <li>Aljoscha Krettek</li>
-  <li>Andra Lungu</li>
-  <li>Andrea Sella</li>
-  <li>Chesnay Schepler</li>
-  <li>Chiwan Park</li>
-  <li>Daniel Pape</li>
-  <li>Fabian Hueske</li>
-  <li>Filipe Correia</li>
-  <li>Frederick F. Kautz IV</li>
-  <li>Gabor Gevay</li>
-  <li>Gabor Horvath</li>
-  <li>Georgios Andrianakis</li>
-  <li>Greg Hogan</li>
-  <li>Gyula Fora</li>
-  <li>Henry Saputra</li>
-  <li>Hilmi Yildirim</li>
-  <li>Hubert Czerpak</li>
-  <li>Jark Wu</li>
-  <li>Johannes</li>
-  <li>Jun Aoki</li>
-  <li>Jun Aoki</li>
-  <li>Kostas Kloudas</li>
-  <li>Li Chengxiang</li>
-  <li>Lun Gao</li>
-  <li>Martin Junghanns</li>
-  <li>Martin Liesenberg</li>
-  <li>Matthias J. Sax</li>
-  <li>Maximilian Michels</li>
-  <li>M�rton Balassi</li>
-  <li>Nick Dimiduk</li>
-  <li>Niels Basjes</li>
-  <li>Omer Katz</li>
-  <li>Paris Carbone</li>
-  <li>Patrice Freydiere</li>
-  <li>Peter Vandenabeele</li>
-  <li>Piotr Godek</li>
-  <li>Prez Cannady</li>
-  <li>Robert Metzger</li>
-  <li>Romeo Kienzler</li>
-  <li>Sachin Goel</li>
-  <li>Saumitra Shahapure</li>
-  <li>Sebastian Klemke</li>
-  <li>Stefano Baghino</li>
-  <li>Stephan Ewen</li>
-  <li>Stephen Samuel</li>
-  <li>Subhobrata Dey</li>
-  <li>Suneel Marthi</li>
-  <li>Ted Yu</li>
-  <li>Theodore Vasiloudis</li>
-  <li>Till Rohrmann</li>
-  <li>Timo Walther</li>
-  <li>Trevor Grant</li>
-  <li>Ufuk Celebi</li>
-  <li>Ulf Karlsson</li>
-  <li>Vasia Kalavri</li>
-  <li>fversaci</li>
-  <li>madhukar</li>
-  <li>qingmeng.wyh</li>
-  <li>ramkrishna</li>
-  <li>rtudoran</li>
-  <li>sahitya-pavurala</li>
-  <li>zhangminglei</li>
-</ul>
-
-      </article>
-    </div>
-
-    <div class="row">
-      <div id="disqus_thread"></div>
-      <script type="text/javascript">
-        /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
-        var disqus_shortname = 'stratosphere-eu'; // required: replace example with your forum shortname
-
-        /* * * DON'T EDIT BELOW THIS LINE * * */
-        (function() {
-            var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
-            dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
-             (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
-        })();
-      </script>
-    </div>
-  </div>
-</div>
-
-      <hr />
-      <div class="footer text-center">
-        <p>Copyright � 2014-2016 <a href="http://apache.org">The Apache Software Foundation</a>. All Rights Reserved.</p>
-        <p>Apache Flink, Apache, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation.</p>
-        <p><a href="/privacy-policy.html">Privacy Policy</a> &middot; <a href="/blog/feed.xml">RSS feed</a></p>
-      </div>
-
-    </div><!-- /.container -->
-
-    <!-- Include all compiled plugins (below), or include individual files as needed -->
-    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
-    <script src="/js/codetabs.js"></script>
-
-    <!-- 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-52545728-1', 'auto');
-      ga('send', 'pageview');
-    </script>
-  </body>
-</html>