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:02 UTC

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

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/content/visualizer/js/program.js
----------------------------------------------------------------------
diff --git a/content/visualizer/js/program.js b/content/visualizer/js/program.js
deleted file mode 100644
index 683185d..0000000
--- a/content/visualizer/js/program.js
+++ /dev/null
@@ -1,233 +0,0 @@
-/*!
- * 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.
- */
-
-var maxColumnWidth = 200;
-var minColumnWidth = 100;
-
-// global variable for the currently requested plan
-var pactPlanRequested = 0;
-
-/*
- * This function toggels the child checkbox on and of, depending on the parent's state
- */
-function toggleShowPlanBox(box)
-{
-  var child = $('#suspendJobDuringPlanCheck');
-  
-  if (box.is(':checked')) {
-    child.attr('disabled', false);
-  }
-  else {
-    child.attr('disabled', true);
-  }
-}
-
-/*
- * Shows an error message below the upload field.
- */
-function showUploadError(message)
-{
-  $('#upload_error_text').fadeOut("fast", function () { $('#upload_error_text')[0].innerHTML = "" + message;
-                                                           $('#upload_error_text').fadeIn("slow"); } );
-}
-
-/*
- * Checks the selected file and triggers an upload, if all is correct.
- */
-function processUpload()
-{
-
-  var filename = $('#upload_file_input').val();
-  var len = filename.length;
-  if (len == 0) {
-    showUploadError("Please select a file.");
-  }
-  else if (len > 4 && filename.substr(len - 4, len) == ".jar") {
-    $('#upload_form')[0].submit();
-  }
-  else {
-    showUploadError("Please select a .jar file.");
-  }
-}
-
-/*
- * This function makes sure only one checkbox is selected.
- * Upon selection it initializes the drawing of the pact plan.
- * Upon deselection, it clears the pact plan.
- */
-function toggleCheckboxes(box)
-{
-
-  if (box.is(':checked')) {
-    $('.jobItemCheckbox').attr('checked', false);
-    box.attr('checked', true);
-    var id = box.parentsUntil('.JobListItems').parent().attr('id').substr(4);
-    var assemblerClass = box.attr('id');
-
-    $('#mainCanvas').html('');
-    pactPlanRequested = id;
-
-    $.ajax({
-        type: "GET",
-        url: "pactPlan",
-        data: { job: id, assemblerClass: assemblerClass},
-        success: function(response) { showPreviewPlan(response); }
-    });
-  }
-  else {
-    $('#mainCanvas').html('');
-  }
-}
-
-/*
- * Function that takes the returned plan and draws it.
- */
-function showPreviewPlan(data)
-{
-	$("#mainCanvas").empty();
-    var svgElement = "<div id=\"attach\"><svg id=\"svg-main\" width=500 height=500><g transform=\"translate(20, 20)\"/></svg></div>";
-    $("#mainCanvas").append(svgElement);
-    drawGraph(data.plan, "#svg-main");
-    pactPlanRequested = 0;
-    
-    //activate zoom buttons
-    activateZoomButtons();
-//  }
-}
-
-/*
- * Asynchronously loads the jobs and creates a list of them.
- */
-function loadJobList()
-{
-  $.get("jobs", { action: "list" }, createJobList);
-}
-
-/*
- * Triggers an AJAX request to delete a job.
- */
-function deleteJob(id)
-{
-  var name = id.substr(4);
-  $.get("jobs", { action: "delete", filename: name }, loadJobList);
-}
-
-/*
- * Creates and lists the returned jobs.
- */
-function createJobList(data)
-{
-  var markup = "";
-   
-  var lines = data.split("\n");
-  for (var i = 0; i < lines.length; i++)
-  {
-    if (lines[i] == null || lines[i].length == 0) {
-      continue;
-    }
-    
-    var date = "unknown date";
-    var assemblerClass = "<em>no entry class specified</em>";
-    
-    var tokens = lines[i].split("\t");
-    var name = tokens[0];
-    if (tokens.length > 1) {
-      date = tokens[1];
-      if (tokens.length > 2) {
-        assemblerClass = tokens[2];
-      }
-    }
-    
-    var entries = assemblerClass.split("#");
-    var classes = entries[0].split(",");
-    
-    markup += '<div id="job_' + name + '" class="JobListItems"><table class="table"><tr>';
-    markup += '<td colspan="2"><p class="JobListItemsName">' + name + '</p></td>';
-    markup += '<td><p class="JobListItemsDate">' + date + '</p></td>';
-    markup += '<td width="30px"><img class="jobItemDeleteIcon" src="img/delete-icon.png" width="24" height="24" /></td></tr>';
-    
-    var j = 0;
-    for (var idx in classes) {
-      markup += '<tr><td width="30px;"><input id="' + classes[idx] + '" class="jobItemCheckbox" type="checkbox"></td>';
-      markup += '<td colspan="3"><p class="JobListItemsDate" title="' + entries[++j] + '">' + classes[idx] + '</p></td></tr>';
-    }
-    markup += '</table></div>';
-  }
-  
-  // add the contents
-  $('#jobsContents').html(markup); 
-  
-  // register the event handler that triggers the delete when the delete icon is clicked
-  $('.jobItemDeleteIcon').click(function () { deleteJob($(this).parentsUntil('.JobListItems').parent().attr('id')); } );
-  
-  // register the event handler, that ensures only one checkbox is active
-  $('.jobItemCheckbox').change(function () { toggleCheckboxes($(this)) });
-}
-
-/*
- * Function that checks and launches a pact job.
- */
-function runJob ()
-{
-   var job = $('.jobItemCheckbox:checked');
-   if (job.length == 0) {
-     $('#run_error_text').fadeOut("fast", function () { $('#run_error_text')[0].innerHTML = "Select a job to run.";
-                                                           $('#run_error_text').fadeIn("slow"); } );
-     return;
-   }
-   
-   var jobName = job.parentsUntil('.JobListItems').parent().attr('id').substr(4);
-   var assemblerClass = job.attr('id');
-   
-   var showPlan = $('#showPlanCheck').is(':checked');
-   var suspendPlan = $('#suspendJobDuringPlanCheck').is(':checked');
-   var options = $('#commandLineOptionsField').attr('value'); //TODO? Replace with .val() ?
-   var args = $('#commandLineArgsField').attr('value'); //TODO? Replace with .val() ?
-   
-   var url;
-   if (assemblerClass == "<em>no entry class specified</em>") {
-      url = "runJob?" + $.param({ action: "submit", options: options, job: jobName, arguments: args, show_plan: showPlan, suspend: suspendPlan});
-   } else {
-      url = "runJob?" + $.param({ action: "submit", options: options, job: jobName, assemblerClass: assemblerClass, arguments: args, show_plan: showPlan, suspend: suspendPlan});
-   }
-   
-   window.location = url;
-}
-
-/*
- * Document initialization.
- */
-$(document).ready(function ()
-{
-  // hide the error text sections
-  $('#upload_error_text').fadeOut("fast");
-  $('#run_error_text').fadeOut("fast");
-  
-  // register the event listener that keeps the hidden file form and the text fied in sync
-  $('#upload_file_input').change(function () { $('#upload_file_name_text').val($(this).val()) } );
-  
-  // register the event handler for the upload button
-  $('#upload_submit_button').click(processUpload);
-  $('#run_button').click(runJob);
-  
-  // register the event handler that (in)activates the plan display checkbox
-  $('#showPlanCheck').change(function () { toggleShowPlanBox ($(this)); }); 
-  
-  // start the ajax load of the jobs
-  loadJobList();
-}); 

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/contribute-code.md
----------------------------------------------------------------------
diff --git a/contribute-code.md b/contribute-code.md
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/contribute-documentation.md
----------------------------------------------------------------------
diff --git a/contribute-documentation.md b/contribute-documentation.md
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/css/flink.css
----------------------------------------------------------------------
diff --git a/css/flink.css b/css/flink.css
old mode 100644
new mode 100755
index 1af471c..4cdd58f
--- a/css/flink.css
+++ b/css/flink.css
@@ -4,31 +4,69 @@
 
 /* Padding at top because of the fixed navbar. */
 body {
-	padding-top: 70px;
 }
 
 /* Our logo. */
 .navbar-logo {
-	padding: 5px 15px 5px 15px;
+	padding: 15px 15px 0;
+	margin-bottom:20px;
 }
 .navbar-logo img {
-	width: 78px;
-	height: 40px;
+	width: 147px;
+}
+
+p.lead {font-size:26px;}
+
+@media screen and (min-width:768px) {
+	#sidebar .navbar {max-width:157px;}
+}
+@media screen and (min-width:992px) {
+	#sidebar .navbar {max-width:212px;}
+}
+@media screen and (min-width:1200px) {
+	#sidebar .navbar {max-width:260px;}
 }
 
 /* Links */
+
+.navbar {border-radius:0;}
+ul.navbar-nav {width:100%;}
+.navbar-default .navbar-nav > li > a.btn {color:#fff;margin:20px 15px;}
+.navbar-default .navbar-nav>.active>a.btn-info,
+.navbar-default .navbar-nav > li > a.btn-info:hover {
+	color: #fff;
+    background-color: #31b0d5;
+    border-color: #269abc;
+}
+/*
+.navbar-default .navbar-nav>.active>a.btn {background:transparent;color:white;}
+*/
+.navbar-default .navbar-nav > li {float:none;}
 .navbar-default .navbar-nav > li > a {
-	color: black;
+	color:#212121;
+}
+
+.navbar-bottom {margin-bottom:30px;}
+.navbar-main > li > a {
 	font-weight: bold;
 }
+
 .navbar-default .navbar-nav > li > a:hover {
 	background: #E7E7E7;
 }
 
+.navbar-collapse {padding:0;}
+
 .navbar-collapse .dropdown-header {
 	color: black;
 }
 
+@media (min-width: 768px){
+.navbar-nav>li>a {
+    padding-top: 10px;
+    padding-bottom: 10px;
+}}
+
 /*=============================================================================
                                     Text
 =============================================================================*/
@@ -55,6 +93,12 @@ blockquote {
 	font-size: 100%;
 }
 
+p.lead {text-align:center;}
+
+img {
+	height:auto !important;
+	max-width:100%;
+}
 /*=============================================================================
                               Table of Contents
 =============================================================================*/
@@ -167,3 +211,76 @@ code {
 #disqus_thread {
 	padding-top: 3em;
 }
+
+.front-graphic {
+	text-align:center;
+	margin-bottom:30px;
+}
+
+img.illu {margin:40px auto 60px;display:block;}
+/*=============================================================================
+                                Powered By Carousel
+=============================================================================*/
+
+.jcarousel {
+    position: relative;
+    overflow: hidden;
+
+    margin:30px 0;
+}
+
+.jcarousel ul {
+    width: 20000em;
+    position: relative;
+
+    /* Optional, required in this case since it's a <ul> element */
+    list-style: none;
+    margin: 0;
+    padding: 0;
+}
+
+.jcarousel li {
+    /* Required only for block elements like <li>'s */
+    float: left;
+    text-align:center;
+}
+
+.jcarousel li div {margin-bottom:20px;}
+.jcarousel li img {}
+
+.jcarousel li span {
+	display:block;
+	font-size:90%;
+}
+
+.jcarousel-control-prev{
+	position: absolute;
+    top: 50%;
+    left: 0;
+}
+
+.jcarousel-control-next{
+	position: absolute;
+    top: 50%;
+    right: 0;
+}
+.homecontent {
+	margin-top:70px;
+}
+
+.btn-intro {
+	margin: 20px auto;
+    display: block;
+    width: 200px;
+		color: #31b0d5;
+		border-color: #31b0d5
+}
+@media screen and (min-width:768px) {
+	/*fix sticky scroll breaking layout */
+	/*#sidebar, body>.container>.row:first-child>div:first-child {max-width:292px !important;}*/
+}
+@media screen and (max-width:767px) {
+	#sidebar .navbar {position:static !important;}
+}
+
+body>.container>.row:first-child>.col-sm-9{margin-top:20px;}

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/css/syntax.css
----------------------------------------------------------------------
diff --git a/css/syntax.css b/css/syntax.css
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/doap_flink.rdf
----------------------------------------------------------------------
diff --git a/doap_flink.rdf b/doap_flink.rdf
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/docker/Dockerfile
----------------------------------------------------------------------
diff --git a/docker/Dockerfile b/docker/Dockerfile
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/documentation.md
----------------------------------------------------------------------
diff --git a/documentation.md b/documentation.md
new file mode 100644
index 0000000..10f4f7d
--- /dev/null
+++ b/documentation.md
@@ -0,0 +1,18 @@
+---
+title: "Documentation"
+---
+## Latest stable release: Flink 1.1.3
+
+<ul>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/" target="_blank">1.1 Docs</a></li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/api/java/" target="_blank">1.1 Javadocs</a></li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/api/scala/index.html#package" target="_blank">1.1 ScalaDocs</a></li>
+</ul>
+
+## Development snapshot: Flink 1.2
+
+<ul>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.2/" target="_blank">1.2 Docs</a></li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.2/api/java/" target="_blank">1.2 Javadocs</a></li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.2/api/scala/index.html#package" target="_blank">1.2 ScalaDocs</a></li>
+</ul>

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/ecosystem.md
----------------------------------------------------------------------
diff --git a/ecosystem.md b/ecosystem.md
new file mode 100644
index 0000000..e29d3f2
--- /dev/null
+++ b/ecosystem.md
@@ -0,0 +1,95 @@
+---
+title: "Ecosystem"
+---
+<br>
+Apache Flink supports a broad ecosystem and works seamlessly with
+many other data processing projects and frameworks.
+<br>
+{% toc %}
+
+## Connectors
+
+<p>Connectors provide code for interfacing with various third-party systems.</p>
+
+<p>Currently these systems are supported:</p>
+
+<ul>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/kafka.html" target="_blank">Apache Kafka</a> (sink/source)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/elasticsearch.html" target="_blank">Elasticsearch</a> (sink)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/elasticsearch2.html" target="_blank">Elasticsearch 2x</a> (sink)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/filesystem_sink.html" target="_blank">HDFS</a> (sink)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/rabbitmq.html" target="_blank">RabbitMQ</a> (sink/source)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/kinesis.html" target="_blank">Amazon Kinesis Streams</a> (sink/source)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/twitter.html" target="_blank">Twitter Streaming API</a> (source)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/nifi.html" target="_blank">Apache NiFi</a> (sink/source)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/cassandra.html" target="_blank">Apache Cassandra</a> (sink)</li>
+  <li><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/connectors/redis.html" target="_blank">Redis</a> (sink)</li>
+</ul>
+
+To run an application using one of these connectors, additional third party
+components are usually required to be installed and launched, e.g. the servers
+for the message queues. Further instructions for these can be found in the
+corresponding subsections.
+
+
+## Third-Party Projects
+
+This is a list of third party packages (ie, libraries, system extensions, or examples) built on Flink.
+The Flink community collects links to these packages but does not maintain them.
+Thus, they do not belong to the Apache Flink project, and the community cannot give any support for them.
+**Is your project missing?**
+Please let us know on the [user/dev mailing list](#mailing-lists).
+
+**Apache Zeppelin**
+
+[Apache Zeppelin (incubator)](https://zeppelin.incubator.apache.org/) is a web-based notebook that enables interactive data analytics and can be used with
+[Flink as an execution engine](https://zeppelin.incubator.apache.org/docs/interpreter/flink.html) (next to others engines).
+See also Jim Dowling's [Flink Forward talk](http://www.slideshare.net/FlinkForward/jim-dowling-interactive-flink-analytics-with-hopsworks-and-zeppelin) about Zeppelin on Flink.
+
+**Apache Mahout**
+
+[Apache Mahout](https://mahout.apache.org/) in a machine learning library that will feature Flink as an execution engine soon.
+Check out Sebastian Schelter's [Flink Forward talk](http://www.slideshare.net/FlinkForward/sebastian-schelter-distributed-machine-learing-with-the-samsara-dsl) about Mahout-Samsara DSL.
+
+**Cascading**
+
+[Cascading](http://www.cascading.org/cascading-flink/) enables an user to build complex workflows easily on Flink and other execution engines.
+[Cascading on Flink](https://github.com/dataArtisans/cascading-flink) is build by [dataArtisans](http://data-artisans.com/) and [Driven, Inc](http://www.driven.io/).
+See Fabian Hueske's [Flink Forward talk](http://www.slideshare.net/FlinkForward/fabian-hueske-training-cascading-on-flink) for more details.
+
+**Apache Beam (incubating)**
+
+[Apache Beam (incubating)](http://beam.incubator.apache.org/) is an open source, unified programming model that you can use to create a data processing pipeline. Flink is one of the back-ends supported by the Beam programming model.
+
+**GRADOOP**
+
+[GRADOOP](http://dbs.uni-leipzig.de/en/research/projects/gradoop) enables scalable graph analytics on top of Flink and is developed at Leipzig University. Check out [Martin Junghanns\u2019 Flink Forward talk](http://www.slideshare.net/FlinkForward/martin-junghans-gradoop-scalable-graph-analytics-with-apache-flink).
+
+**BigPetStore**
+
+[BigPetStore](https://github.com/apache/bigtop/tree/master/bigtop-bigpetstore) is a benchmarking suite including a data generator and will be available for Flink soon.
+See Suneel Marthi's [Flink Forward talk](http://www.slideshare.net/FlinkForward/suneel-marthi-bigpetstore-flink-a-comprehensive-blueprint-for-apache-flink?ref=http://flink-forward.org/?session=tbd-3) as preview.
+
+**FastR**
+
+[FastR](https://bitbucket.org/allr/fastr-flink) in an implemenation of the R language in Java. [FastR Flink](https://bitbucket.org/allr/fastr-flink/src/3535a9b7c7f208508d6afbcdaf1de7d04fa2bf79/README_FASTR_FLINK.md?at=default&fileviewer=file-view-default) exeutes R workload on top of Flink.
+
+**Apache SAMOA**
+
+[Apache SAMOA (incubating)](https://samoa.incubator.apache.org/) a streaming ML library featuring Flink an execution engine soon. Albert Bifet introduced SAMOA on Flink at his [Flink Forward talk](http://www.slideshare.net/FlinkForward/albert-bifet-apache-samoa-mining-big-data-streams-with-apache-flink?ref=http://flink-forward.org/?session=apache-samoa-mining-big-data-streams-with-apache-flink).
+
+**Python Examples on Flink**
+
+A [collection of examples](https://github.com/wdm0006/flink-python-examples) using Apache Flink's Python API.
+
+**WordCount Example in Clojure**
+
+Small [WordCount example](https://github.com/mjsax/flink-external/tree/master/flink-clojure) on how to write a Flink program in Clojure.
+
+**Anomaly Detection and Prediction in Flink**
+
+[flink-htm](https://github.com/nupic-community/flink-htm) is a library for anomaly detection and prediction in Apache Flink. The algorithms are based on Hierarchical Temporal Memory (HTM) as implemented by the Numenta Platform for Intelligent Computing (NuPIC).
+
+**Apache Ignite**
+
+[Apache Ignite](https://ignite.apache.org) is a high-performance, integrated and distributed in-memory platform for computing and transacting on large-scale data sets in real-time. See [Flink sink streaming connector](https://github.com/apache/ignite/tree/master/modules/flink) to inject data into Ignite cache.

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/faq.md
----------------------------------------------------------------------
diff --git a/faq.md b/faq.md
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/favicon.ico
----------------------------------------------------------------------
diff --git a/favicon.ico b/favicon.ico
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/features.md
----------------------------------------------------------------------
diff --git a/features.md b/features.md
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/how-to-contribute.md
----------------------------------------------------------------------
diff --git a/how-to-contribute.md b/how-to-contribute.md
index 911f322..dd6f709 100644
--- a/how-to-contribute.md
+++ b/how-to-contribute.md
@@ -1,7 +1,6 @@
 ---
-title:  "Contributions Welcome!"
+title: "How To Contribute"
 ---
-
 Apache Flink is developed by an open and friendly community. Everybody is cordially welcome to join the community and contribute to Apache Flink. There are several ways to interact with the community and to contribute to Flink including asking questions, filing bug reports, proposing new features, joining discussions on the mailing lists, contributing code or documentation, improving the website, or testing release candidates.
 
 {% toc %}
@@ -26,7 +25,7 @@ Our community is constantly looking for feedback to improve Apache Flink. If you
 - It helps to estimate the effort and to design a solution that addresses your needs.
 - It allow for constructive discussions that might arise around this issue.
 
-Detailed information is also required, if you plan to contribute the improvement or feature you proposed yourself. Please read the [Contribute code]({{ site.base }}/contribute-code.html) guide in this case as well. 
+Detailed information is also required, if you plan to contribute the improvement or feature you proposed yourself. Please read the [Contribute code]({{ site.base }}/contribute-code.html) guide in this case as well.
 
 
 We recommend to first reach consensus with the community on whether a new feature is required and how to implement a new feature, before starting with the implementation. Some features might be out of scope of the project, and it's best to discover this early.
@@ -56,7 +55,7 @@ Apache Flink is continuously improved by its active community. Every few weeks,
 2. Testing the release candidate and voting (`+1` if no issues were found, `-1` if the release candidate has issues).
 3. Going back to step 1 if the release candidate had issues otherwise we publish the release.
 
-Our wiki contains a page that summarizes the [test procedure for a release](https://cwiki.apache.org/confluence/display/FLINK/Releasing). Release testing is a big effort if done by a small group of people but can be easily scaled out to more people. The Flink community encourages everybody to participate in the testing of a release candidate. By testing a release candidate, you can ensure that the next Flink release is working properly for your setup and help to improve the quality of releases. 
+Our wiki contains a page that summarizes the [test procedure for a release](https://cwiki.apache.org/confluence/display/FLINK/Releasing). Release testing is a big effort if done by a small group of people but can be easily scaled out to more people. The Flink community encourages everybody to participate in the testing of a release candidate. By testing a release candidate, you can ensure that the next Flink release is working properly for your setup and help to improve the quality of releases.
 
 -----
 
@@ -69,9 +68,9 @@ Apache Flink is maintained, improved, and extended by code contributions of volu
 Please do also read the [Submit a Contributor License Agreement]({{ site.baseurl }}/how-to-contribute.html#submit-a-contributor-license-agreement) Section.
 
 ### Looking for an issue to work on?
-{:.no_toc} 
+{:.no_toc}
 
-We maintain a list of all known bugs, proposed improvements and suggested features in [Flink's JIRA](https://issues.apache.org/jira/browse/FLINK/?selectedTab=com.atlassian.jira.jira-projects-plugin:issues-panel). Issues that we believe are good tasks for new contributors are tagged with a special "starter" tag. Those tasks are supposed to be rather easy to solve and will help you to become familiar with the project and the contribution process. 
+We maintain a list of all known bugs, proposed improvements and suggested features in [Flink's JIRA](https://issues.apache.org/jira/browse/FLINK/?selectedTab=com.atlassian.jira.jira-projects-plugin:issues-panel). Issues that we believe are good tasks for new contributors are tagged with a special "starter" tag. Those tasks are supposed to be rather easy to solve and will help you to become familiar with the project and the contribution process.
 
 Please have a look at the list of [starter issues](https://issues.apache.org/jira/issues/?jql=project%20%3D%20FLINK%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20starter%20ORDER%20BY%20priority%20DESC), if you are looking for an issue to work on. You can of course also choose [any other issue](https://issues.apache.org/jira/issues/?jql=project%20%3D%20FLINK%20AND%20resolution%20%3D%20Unresolved%20ORDER%20BY%20priority%20DESC) to work on. Feel free to ask questions about issues that you would be interested in working on.
 
@@ -126,7 +125,7 @@ Please submit a contributor license agreement to the Apache Software Foundation
 
 ## How to become a committer
 
-Committers are community members that have write access to the project's repositories, i.e., they can modify the code, documentation, and website by themselves and also accept other contributions. 
+Committers are community members that have write access to the project's repositories, i.e., they can modify the code, documentation, and website by themselves and also accept other contributions.
 
 There is no strict protocol for becoming a committer. Candidates for new committers are typically people that are active contributors and community members.
 
@@ -134,15 +133,6 @@ Being an active community member means participating on mailing list discussions
 
 Of course, contributing code and documentation to the project is important as well. A good way to start is contributing improvements, new features, or bug fixes. You need to show that you take responsibility for the code that you contribute, add tests and documentation, and help maintaining it.
 
-Candidates for new committers are suggested by current committers or PMC members, and voted upon by the PMC. 
+Candidates for new committers are suggested by current committers or PMC members, and voted upon by the PMC.
 
 If you would like to become a committer, you should engage with the community and start contributing to Apache Flink in any of the above ways. You might also want to talk to other committers and ask for their advice and guidance.
-
-
-
-
-
-
-
-
-

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/assets/WhatIsFlink.png
----------------------------------------------------------------------
diff --git a/img/assets/WhatIsFlink.png b/img/assets/WhatIsFlink.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/assets/grep.png
----------------------------------------------------------------------
diff --git a/img/assets/grep.png b/img/assets/grep.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/assets/optimizer-visual.png
----------------------------------------------------------------------
diff --git a/img/assets/optimizer-visual.png b/img/assets/optimizer-visual.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/assets/pagerank.pdf
----------------------------------------------------------------------
diff --git a/img/assets/pagerank.pdf b/img/assets/pagerank.pdf
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/assets/pagerank.png
----------------------------------------------------------------------
diff --git a/img/assets/pagerank.png b/img/assets/pagerank.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/blog_basic_window.png
----------------------------------------------------------------------
diff --git a/img/blog/blog_basic_window.png b/img/blog/blog_basic_window.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/blog_data_driven.png
----------------------------------------------------------------------
diff --git a/img/blog/blog_data_driven.png b/img/blog/blog_data_driven.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/blog_multi_input.png
----------------------------------------------------------------------
diff --git a/img/blog/blog_multi_input.png b/img/blog/blog_multi_input.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/blog_social_media.png
----------------------------------------------------------------------
diff --git a/img/blog/blog_social_media.png b/img/blog/blog_social_media.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/blog_stream_join.png
----------------------------------------------------------------------
diff --git a/img/blog/blog_stream_join.png b/img/blog/blog_stream_join.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/data-serialization.png
----------------------------------------------------------------------
diff --git a/img/blog/data-serialization.png b/img/blog/data-serialization.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/emr-firefoxsettings.png
----------------------------------------------------------------------
diff --git a/img/blog/emr-firefoxsettings.png b/img/blog/emr-firefoxsettings.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/emr-hadoopversion.png
----------------------------------------------------------------------
diff --git a/img/blog/emr-hadoopversion.png b/img/blog/emr-hadoopversion.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/emr-jobmanager.png
----------------------------------------------------------------------
diff --git a/img/blog/emr-jobmanager.png b/img/blog/emr-jobmanager.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/emr-running.png
----------------------------------------------------------------------
diff --git a/img/blog/emr-running.png b/img/blog/emr-running.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/emr-security.png
----------------------------------------------------------------------
diff --git a/img/blog/emr-security.png b/img/blog/emr-security.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/emr-yarnappmaster.png
----------------------------------------------------------------------
diff --git a/img/blog/emr-yarnappmaster.png b/img/blog/emr-yarnappmaster.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/flinkSer-int-gc.png
----------------------------------------------------------------------
diff --git a/img/blog/flinkSer-int-gc.png b/img/blog/flinkSer-int-gc.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/flinkSer-int-mem.png
----------------------------------------------------------------------
diff --git a/img/blog/flinkSer-int-mem.png b/img/blog/flinkSer-int-mem.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/hcompat-flow.png
----------------------------------------------------------------------
diff --git a/img/blog/hcompat-flow.png b/img/blog/hcompat-flow.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/hcompat-logos.png
----------------------------------------------------------------------
diff --git a/img/blog/hcompat-logos.png b/img/blog/hcompat-logos.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/joins-dist-perf.png
----------------------------------------------------------------------
diff --git a/img/blog/joins-dist-perf.png b/img/blog/joins-dist-perf.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/joins-single-perf.png
----------------------------------------------------------------------
diff --git a/img/blog/joins-single-perf.png b/img/blog/joins-single-perf.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/kryoSer-int-gc.png
----------------------------------------------------------------------
diff --git a/img/blog/kryoSer-int-gc.png b/img/blog/kryoSer-int-gc.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/kryoSer-int-mem.png
----------------------------------------------------------------------
diff --git a/img/blog/kryoSer-int-mem.png b/img/blog/kryoSer-int-mem.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/memory-alloc.png
----------------------------------------------------------------------
diff --git a/img/blog/memory-alloc.png b/img/blog/memory-alloc.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/memory-mgmt.png
----------------------------------------------------------------------
diff --git a/img/blog/memory-mgmt.png b/img/blog/memory-mgmt.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/objHeap-int-gc.png
----------------------------------------------------------------------
diff --git a/img/blog/objHeap-int-gc.png b/img/blog/objHeap-int-gc.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/objHeap-int-mem.png
----------------------------------------------------------------------
diff --git a/img/blog/objHeap-int-mem.png b/img/blog/objHeap-int-mem.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/plan_visualizer1.png
----------------------------------------------------------------------
diff --git a/img/blog/plan_visualizer1.png b/img/blog/plan_visualizer1.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/plan_visualizer2.png
----------------------------------------------------------------------
diff --git a/img/blog/plan_visualizer2.png b/img/blog/plan_visualizer2.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/robomongo.png
----------------------------------------------------------------------
diff --git a/img/blog/robomongo.png b/img/blog/robomongo.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/sort-benchmark.png
----------------------------------------------------------------------
diff --git a/img/blog/sort-benchmark.png b/img/blog/sort-benchmark.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/sorting-binary-data-1.png
----------------------------------------------------------------------
diff --git a/img/blog/sorting-binary-data-1.png b/img/blog/sorting-binary-data-1.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/sorting-binary-data-2.png
----------------------------------------------------------------------
diff --git a/img/blog/sorting-binary-data-2.png b/img/blog/sorting-binary-data-2.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/blog/sorting-binary-data-3.png
----------------------------------------------------------------------
diff --git a/img/blog/sorting-binary-data-3.png b/img/blog/sorting-binary-data-3.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/continuous_streams.png
----------------------------------------------------------------------
diff --git a/img/continuous_streams.png b/img/continuous_streams.png
new file mode 100644
index 0000000..885dc51
Binary files /dev/null and b/img/continuous_streams.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/distributed_snapshots.png
----------------------------------------------------------------------
diff --git a/img/distributed_snapshots.png b/img/distributed_snapshots.png
new file mode 100644
index 0000000..b4575e5
Binary files /dev/null and b/img/distributed_snapshots.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/ecosystem_logos.png
----------------------------------------------------------------------
diff --git a/img/ecosystem_logos.png b/img/ecosystem_logos.png
new file mode 100644
index 0000000..ad36d8b
Binary files /dev/null and b/img/ecosystem_logos.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/exactly_once_state.png
----------------------------------------------------------------------
diff --git a/img/exactly_once_state.png b/img/exactly_once_state.png
new file mode 100644
index 0000000..17ed08f
Binary files /dev/null and b/img/exactly_once_state.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/continuous_streams.png
----------------------------------------------------------------------
diff --git a/img/features/continuous_streams.png b/img/features/continuous_streams.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/distributed_snapshots.png
----------------------------------------------------------------------
diff --git a/img/features/distributed_snapshots.png b/img/features/distributed_snapshots.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/ecosystem_logos.png
----------------------------------------------------------------------
diff --git a/img/features/ecosystem_logos.png b/img/features/ecosystem_logos.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/exactly_once_state.png
----------------------------------------------------------------------
diff --git a/img/features/exactly_once_state.png b/img/features/exactly_once_state.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/iterations.png
----------------------------------------------------------------------
diff --git a/img/features/iterations.png b/img/features/iterations.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/memory_heap_division.png
----------------------------------------------------------------------
diff --git a/img/features/memory_heap_division.png b/img/features/memory_heap_division.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/one_runtime.png
----------------------------------------------------------------------
diff --git a/img/features/one_runtime.png b/img/features/one_runtime.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/optimizer_choice.png
----------------------------------------------------------------------
diff --git a/img/features/optimizer_choice.png b/img/features/optimizer_choice.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/features/streaming_performance.png
----------------------------------------------------------------------
diff --git a/img/features/streaming_performance.png b/img/features/streaming_performance.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/flink-front-graphic-update.png
----------------------------------------------------------------------
diff --git a/img/flink-front-graphic-update.png b/img/flink-front-graphic-update.png
new file mode 100644
index 0000000..447ead7
Binary files /dev/null and b/img/flink-front-graphic-update.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/flink-front-graphic.png
----------------------------------------------------------------------
diff --git a/img/flink-front-graphic.png b/img/flink-front-graphic.png
new file mode 100644
index 0000000..f891c02
Binary files /dev/null and b/img/flink-front-graphic.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/flink-stack-small.png
----------------------------------------------------------------------
diff --git a/img/flink-stack-small.png b/img/flink-stack-small.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/flink-stack.png
----------------------------------------------------------------------
diff --git a/img/flink-stack.png b/img/flink-stack.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/iterations.png
----------------------------------------------------------------------
diff --git a/img/iterations.png b/img/iterations.png
new file mode 100644
index 0000000..83dd83c
Binary files /dev/null and b/img/iterations.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo.zip
----------------------------------------------------------------------
diff --git a/img/logo.zip b/img/logo.zip
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/100/flink_squirrel_100_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/100/flink_squirrel_100_black.png b/img/logo/png/100/flink_squirrel_100_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/100/flink_squirrel_100_color.png
----------------------------------------------------------------------
diff --git a/img/logo/png/100/flink_squirrel_100_color.png b/img/logo/png/100/flink_squirrel_100_color.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/100/flink_squirrel_100_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/100/flink_squirrel_100_white.png b/img/logo/png/100/flink_squirrel_100_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/1000/flink1000_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/1000/flink1000_black.png b/img/logo/png/1000/flink1000_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/1000/flink1000_color_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/1000/flink1000_color_black.png b/img/logo/png/1000/flink1000_color_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/1000/flink1000_color_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/1000/flink1000_color_white.png b/img/logo/png/1000/flink1000_color_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/1000/flink1000_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/1000/flink1000_white.png b/img/logo/png/1000/flink1000_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/1000/flink_squirrel_1000.png
----------------------------------------------------------------------
diff --git a/img/logo/png/1000/flink_squirrel_1000.png b/img/logo/png/1000/flink_squirrel_1000.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/1000/flink_squirrel_black_1000.png
----------------------------------------------------------------------
diff --git a/img/logo/png/1000/flink_squirrel_black_1000.png b/img/logo/png/1000/flink_squirrel_black_1000.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/1000/flink_squirrel_white_1000.png
----------------------------------------------------------------------
diff --git a/img/logo/png/1000/flink_squirrel_white_1000.png b/img/logo/png/1000/flink_squirrel_white_1000.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/200/flink2_200_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/200/flink2_200_black.png b/img/logo/png/200/flink2_200_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/200/flink2_200_color_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/200/flink2_200_color_black.png b/img/logo/png/200/flink2_200_color_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/200/flink2_200_color_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/200/flink2_200_color_white.png b/img/logo/png/200/flink2_200_color_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/200/flink2_200_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/200/flink2_200_white.png b/img/logo/png/200/flink2_200_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/200/flink_squirrel_200_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/200/flink_squirrel_200_black.png b/img/logo/png/200/flink_squirrel_200_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/200/flink_squirrel_200_color.png
----------------------------------------------------------------------
diff --git a/img/logo/png/200/flink_squirrel_200_color.png b/img/logo/png/200/flink_squirrel_200_color.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/200/flink_squirrel_200_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/200/flink_squirrel_200_white.png b/img/logo/png/200/flink_squirrel_200_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/50/black_50.png
----------------------------------------------------------------------
diff --git a/img/logo/png/50/black_50.png b/img/logo/png/50/black_50.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/50/color_50.png
----------------------------------------------------------------------
diff --git a/img/logo/png/50/color_50.png b/img/logo/png/50/color_50.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/50/white_50.png
----------------------------------------------------------------------
diff --git a/img/logo/png/50/white_50.png b/img/logo/png/50/white_50.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink2_500_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink2_500_black.png b/img/logo/png/500/flink2_500_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink2_500_color_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink2_500_color_black.png b/img/logo/png/500/flink2_500_color_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink2_500_color_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink2_500_color_white.png b/img/logo/png/500/flink2_500_color_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink2_500_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink2_500_white.png b/img/logo/png/500/flink2_500_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink500_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink500_black.png b/img/logo/png/500/flink500_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink500_color_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink500_color_black.png b/img/logo/png/500/flink500_color_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink500_color_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink500_color_white.png b/img/logo/png/500/flink500_color_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink500_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink500_white.png b/img/logo/png/500/flink500_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink_3_500.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink_3_500.png b/img/logo/png/500/flink_3_500.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink_squirrel_500.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink_squirrel_500.png b/img/logo/png/500/flink_squirrel_500.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink_squirrel_500_black.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink_squirrel_500_black.png b/img/logo/png/500/flink_squirrel_500_black.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/png/500/flink_squirrel_500_white.png
----------------------------------------------------------------------
diff --git a/img/logo/png/500/flink_squirrel_500_white.png b/img/logo/png/500/flink_squirrel_500_white.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/psd/flink1000.psd
----------------------------------------------------------------------
diff --git a/img/logo/psd/flink1000.psd b/img/logo/psd/flink1000.psd
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/psd/flink50.psd
----------------------------------------------------------------------
diff --git a/img/logo/psd/flink50.psd b/img/logo/psd/flink50.psd
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/psd/flink5000.psd
----------------------------------------------------------------------
diff --git a/img/logo/psd/flink5000.psd b/img/logo/psd/flink5000.psd
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/psd/flink_3_500.psd
----------------------------------------------------------------------
diff --git a/img/logo/psd/flink_3_500.psd b/img/logo/psd/flink_3_500.psd
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/psd/flink_squirrel.psd
----------------------------------------------------------------------
diff --git a/img/logo/psd/flink_squirrel.psd b/img/logo/psd/flink_squirrel.psd
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/psd/flink_squirrel_1000.psd
----------------------------------------------------------------------
diff --git a/img/logo/psd/flink_squirrel_1000.psd b/img/logo/psd/flink_squirrel_1000.psd
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/rsz_1flink-stack.png
----------------------------------------------------------------------
diff --git a/img/logo/rsz_1flink-stack.png b/img/logo/rsz_1flink-stack.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/svg/black_outline.svg
----------------------------------------------------------------------
diff --git a/img/logo/svg/black_outline.svg b/img/logo/svg/black_outline.svg
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/svg/color_black.svg
----------------------------------------------------------------------
diff --git a/img/logo/svg/color_black.svg b/img/logo/svg/color_black.svg
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/svg/color_white.svg
----------------------------------------------------------------------
diff --git a/img/logo/svg/color_white.svg b/img/logo/svg/color_white.svg
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/svg/flink_logos.svg
----------------------------------------------------------------------
diff --git a/img/logo/svg/flink_logos.svg b/img/logo/svg/flink_logos.svg
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/svg/flink_logotypes.svg
----------------------------------------------------------------------
diff --git a/img/logo/svg/flink_logotypes.svg b/img/logo/svg/flink_logotypes.svg
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/logo/svg/white_filled.svg
----------------------------------------------------------------------
diff --git a/img/logo/svg/white_filled.svg b/img/logo/svg/white_filled.svg
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/managed-state.png
----------------------------------------------------------------------
diff --git a/img/managed-state.png b/img/managed-state.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/memory_heap_division.png
----------------------------------------------------------------------
diff --git a/img/memory_heap_division.png b/img/memory_heap_division.png
new file mode 100644
index 0000000..2b4c2e2
Binary files /dev/null and b/img/memory_heap_division.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/navbar-brand-logo.jpg
----------------------------------------------------------------------
diff --git a/img/navbar-brand-logo.jpg b/img/navbar-brand-logo.jpg
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/navbar-brand-logo.png
----------------------------------------------------------------------
diff --git a/img/navbar-brand-logo.png b/img/navbar-brand-logo.png
new file mode 100644
index 0000000..152f74e
Binary files /dev/null and b/img/navbar-brand-logo.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/one_runtime.png
----------------------------------------------------------------------
diff --git a/img/one_runtime.png b/img/one_runtime.png
new file mode 100644
index 0000000..9cb4363
Binary files /dev/null and b/img/one_runtime.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/optimizer_choice.png
----------------------------------------------------------------------
diff --git a/img/optimizer_choice.png b/img/optimizer_choice.png
new file mode 100644
index 0000000..1f8004b
Binary files /dev/null and b/img/optimizer_choice.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/out_of_order_stream.png
----------------------------------------------------------------------
diff --git a/img/out_of_order_stream.png b/img/out_of_order_stream.png
new file mode 100644
index 0000000..20ad09d
Binary files /dev/null and b/img/out_of_order_stream.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/parallel_dataflows.png
----------------------------------------------------------------------
diff --git a/img/parallel_dataflows.png b/img/parallel_dataflows.png
new file mode 100644
index 0000000..dbd83b2
Binary files /dev/null and b/img/parallel_dataflows.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/alibaba-logo.png
----------------------------------------------------------------------
diff --git a/img/poweredby/alibaba-logo.png b/img/poweredby/alibaba-logo.png
new file mode 100644
index 0000000..fe8ac1a
Binary files /dev/null and b/img/poweredby/alibaba-logo.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/bouygues-logo.jpg
----------------------------------------------------------------------
diff --git a/img/poweredby/bouygues-logo.jpg b/img/poweredby/bouygues-logo.jpg
new file mode 100755
index 0000000..b48d628
Binary files /dev/null and b/img/poweredby/bouygues-logo.jpg differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/capital-one-logo.png
----------------------------------------------------------------------
diff --git a/img/poweredby/capital-one-logo.png b/img/poweredby/capital-one-logo.png
new file mode 100644
index 0000000..752feea
Binary files /dev/null and b/img/poweredby/capital-one-logo.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/ericsson-logo.png
----------------------------------------------------------------------
diff --git a/img/poweredby/ericsson-logo.png b/img/poweredby/ericsson-logo.png
new file mode 100644
index 0000000..b4e9c2e
Binary files /dev/null and b/img/poweredby/ericsson-logo.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/king-logo.png
----------------------------------------------------------------------
diff --git a/img/poweredby/king-logo.png b/img/poweredby/king-logo.png
new file mode 100644
index 0000000..f155ed3
Binary files /dev/null and b/img/poweredby/king-logo.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/otto-group-logo.png
----------------------------------------------------------------------
diff --git a/img/poweredby/otto-group-logo.png b/img/poweredby/otto-group-logo.png
new file mode 100644
index 0000000..8da680d
Binary files /dev/null and b/img/poweredby/otto-group-logo.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/researchgate-logo.png
----------------------------------------------------------------------
diff --git a/img/poweredby/researchgate-logo.png b/img/poweredby/researchgate-logo.png
new file mode 100644
index 0000000..5e6847a
Binary files /dev/null and b/img/poweredby/researchgate-logo.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/poweredby/zalando-logo.jpg
----------------------------------------------------------------------
diff --git a/img/poweredby/zalando-logo.jpg b/img/poweredby/zalando-logo.jpg
new file mode 100644
index 0000000..12c1bcc
Binary files /dev/null and b/img/poweredby/zalando-logo.jpg differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/runtime.png
----------------------------------------------------------------------
diff --git a/img/runtime.png b/img/runtime.png
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/savepoints.png
----------------------------------------------------------------------
diff --git a/img/savepoints.png b/img/savepoints.png
new file mode 100644
index 0000000..9952450
Binary files /dev/null and b/img/savepoints.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/source-transform-sink-update.png
----------------------------------------------------------------------
diff --git a/img/source-transform-sink-update.png b/img/source-transform-sink-update.png
new file mode 100644
index 0000000..3693fb4
Binary files /dev/null and b/img/source-transform-sink-update.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/stack.png
----------------------------------------------------------------------
diff --git a/img/stack.png b/img/stack.png
new file mode 100644
index 0000000..2c34722
Binary files /dev/null and b/img/stack.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/streaming_performance.png
----------------------------------------------------------------------
diff --git a/img/streaming_performance.png b/img/streaming_performance.png
new file mode 100644
index 0000000..cf712df
Binary files /dev/null and b/img/streaming_performance.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/img/windows.png
----------------------------------------------------------------------
diff --git a/img/windows.png b/img/windows.png
new file mode 100644
index 0000000..9fb23b0
Binary files /dev/null and b/img/windows.png differ

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/improve-website.md
----------------------------------------------------------------------
diff --git a/improve-website.md b/improve-website.md
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/index.md
----------------------------------------------------------------------
diff --git a/index.md b/index.md
old mode 100644
new mode 100755
index 16c95a5..419c00b
--- a/index.md
+++ b/index.md
@@ -1,113 +1,159 @@
 ---
-title: "Scalable Batch and Stream Data Processing"
+title: "Scalable Stream and Batch Data Processing"
 layout: base
 ---
+<div class="row-fluid">
 
-<div class="row">
-  <div class="col-sm-12"><p class="lead" markdown="span">**Apache Flink�** is an open source platform for distributed stream and batch data processing.</p></div>
-</div>
-
-<div class="row">
-  <div class="col-md-6" markdown="1">
-
-**Flink\u2019s core** is a [streaming dataflow engine](features.html) that provides data distribution, communication, and fault tolerance for distributed computations over data streams.
-
-Flink includes **several APIs** for creating applications that use the Flink engine:
-
-1. [DataStream API]({{ site.docs-snapshot }}/dev/datastream_api.html) for unbounded streams embedded in Java and Scala, and
-2. [DataSet API]({{ site.docs-snapshot }}/dev/batch/index.html) for static data embedded in Java, Scala, and Python,
-3. [Table API]({{ site.docs-snapshot }}/dev/table_api.html) with a SQL-like expression language embedded in Java and Scala.
-
-Flink also bundles **libraries for domain-specific use cases**:
-
-1. [CEP]({{ site.docs-snapshot }}/dev/libs/cep.html), a complex event processing library,
-2. [Machine Learning library]({{ site.docs-snapshot }}/dev/libs/ml/index.html), and
-3. [Gelly]({{ site.docs-snapshot }}/dev/libs/gelly/index.html), a graph processing API and library.
-
-You can **integrate** Flink easily with other well-known open source systems both for [data input and output](features.html#deployment-and-integration) as well as [deployment](features.html#deployment-and-integration).
-  </div>
-  <div class="col-md-6 stack text-center">  
-    <!-- https://docs.google.com/drawings/d/1XCNHsBDAq0fP-TSazE4CcrUinrC37JFiuXAoAEZZavE/ -->
-    <img src="{{ site.baseurl }}/img/flink-stack-frontpage.png" alt="Apache Flink Stack" width="480px" height="280px">
+  <div class="col-sm-10 col-sm-offset-1 homecontent">
+    <p class="lead" markdown="span">Apache Flink� is an open-source stream processing framework for **distributed, high-performing, always-available,** and **accurate** data streaming applications.</p>
+    <a href="{{ site.baseurl }}/introduction.html" class="btn btn-default btn-intro">Introduction to Flink</a>
   </div>
-</div>
 
----
-
-<div class="frontpage-tags">
-  <div class="row">
-    <div class="col-md-4 text-center">
-      <h2><span class="glyphicon glyphicon-send"></span> <a href="features.html#streaming">Streaming First</a></h2>
-      <p>High throughput and low latency stream processing with exactly-once guarantees.</p>
-    </div>
-    <div class="col-md-4 text-center">
-      <h2><span class="glyphicon glyphicon-flash"></span> <a href="features.html#batch-on-streaming">Batch on Streaming</a></h2>
-      <p>Batch processing applications run efficiently as special cases of stream processing applications.</p>
-    </div>
-    <div class="col-md-4 text-center">
-      <h2><span class="glyphicon glyphicon-fire"></span> <a href="features.html#apis-and-libs">APIs, Libraries, and Ecosystem</a></h2>
-      <p>DataSet, DataStream, and more. Integrated with the Apache Big Data stack.</p>
-    </div>
-  </div>
-  <div class="row" style="margin-top: 1em">
-    <div class="col-md-12"><p class="text-center"><strong>Check out the <a href="{{ site.baseurl }}/features.html">Features</a> page to get a tour of all major Flink features and the <a href="{{ site.baseurl }}/poweredby.html">Powered by Flink</a> page to see real-world Flink use cases.</strong></p></div>
-  </div>
+<div class="col-sm-12">
+  <hr />
 </div>
 
----
+</div>
 
-<div class="row">
-  <div class="col-sm-6" markdown="1">
-## Getting Started
 
-Download the **latest stable release** and run Flink on your machine, cluster, or cloud:
 
-<div class="text-center download-button">
-  <a href="downloads.html" class="btn btn-primary" markdown="1">**Download** Apache Flink� {{ site.FLINK_VERSION_STABLE }}</a>
-  <a href="{{ site.github }}" class="btn btn-info" markdown="1">Apache Flink� on **GitHub**</a>
+<div class="row front-graphic">
+  <img src="/img/flink-front-graphic-update.png" width="599px" height="305px" />
 </div>
 
-The documentation contains a [setup guide]({{ site.docs-snapshot }}/setup/building.html) for all deployment options.
 
-The [programming guide]({{ site.docs-snapshot }}/dev/api_concepts.html) contains all information to get you started with writing and testing your Flink programs.
-
-See our list of [third-party packages]({{ site.baseurl }}/community.html#third-party-packages) for Flink.
+<!-- Powered by section -->
+
+<div class="row-fluid">
+  <div class="col-sm-12">
+
+  <hr />
+
+  <a style="float:right" href="{{ site.baseurl }}/poweredby.html">See more ></a>
+
+  <div class="jcarousel">
+    <ul>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/alibaba-logo.png" width="175"  alt="Alibaba" /></div>
+          <!--<span>Alibaba uses Flink for real-time search optimization.</span>-->
+
+        </li>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/bouygues-logo.jpg" width="175"  alt="Bouygues" /></div>
+          <!-- <span>Bouygues Telecom uses Flink for network monitoring.</span> -->
+        </li>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/capital-one-logo.png" width="175"  alt="Capital One" /></div>
+          <!-- <span>Capital One uses Flink for anomaly detection.</span> -->
+        </li>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/ericsson-logo.png" width="175"  alt="Ericsson" /></div>
+          <!-- <span>Ericsson uses Flink for .</span> -->
+        </li>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/king-logo.png" width="175" alt="King" /></div>
+          <!-- <span>King uses Flink to power real-time game analytics.</span> -->
+        </li>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/otto-group-logo.png" width="175" alt="Otto Group" /></div>
+          <!-- <span>Otto Group uses Flink for.</span> -->
+        </li>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/researchgate-logo.png" width="175" alt="ResearchGate" /></div>
+          <!-- <span>ResearchGate uses Flink for.</span>        -->
+        </li>
+        <li>
+          <div><img src="{{ site.baseurl }}/img/poweredby/zalando-logo.jpg" width="175" alt="Zalando" /></div>
+          <!-- <span>Zalando goes big with Flink.</span> -->
+        </li>
+    </ul>
+  </div>
 
-**Check out the [documentation]({{ site.docs-snapshot }}) for the next steps.**
+  <a href="#" class="jcarousel-control-prev" data-jcarouselcontrol="true"><span class="glyphicon glyphicon-chevron-left"></span></a>
+  <a href="#" class="jcarousel-control-next" data-jcarouselcontrol="true"><span class="glyphicon glyphicon-chevron-right"></span></a>
 
   </div>
-  <div class="col-sm-6" markdown="1" style="padding-bottom:1em">
-## Latest blog posts
-
-<ul class="list-group">
-{% for post in site.posts limit:5 %}  
-      <li class="list-group-item"><span>{{ post.date | date_to_string }}</span> &raquo;
-        <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a>
-      </li>
-{% endfor %}
-</ul>
-
-**Check out [the blog](blog/) for all posts.**
-  </div>
-</div>
 
-<div class="row">
-  <div class="col-sm-6" markdown="1">
-## Community
+</div>
 
-You can post questions to the Flink [community]() on various channels. Pick the one, which suits you best:
+<!-- Updates section -->
 
-- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> **User mailing list**. Subscribe to the mailing list by sending an empty email to user-subscribe@flink.apache.org. Once the subscription is confirmed, you can send questions to user@flink.apache.org.
+<div class="row-fluid">
 
-- <span class="glyphicon glyphicon-search" aria-hidden="true"></span> **Stack Overflow**. Post your questions to [Stack Overflow](http://stackoverflow.com/questions/ask/?tags=flink) and tag them with [#flink](http://stackoverflow.com/questions/ask/?tags=flink).
+<div class="col-sm-12">
+  <hr />
+</div>
 
-- <span class="glyphicon glyphicon-comment" aria-hidden="true"></span> **IRC chat**. The IRC channel **#flink** at irc.freenode.org is dedicated to Apache Flink. Join the channel and chat with the Flink community.
+<div class="col-sm-3">
 
-**Check out [the community page](community.html) for all community-related information. If you want to contribute, make sure to have a look at the [contribution guide](how-to-contribute.html).**
-  </div>
+  <h2>Latest Blog Posts</h2>
 
-  <div class="col-sm-6 text-center">
-   <a class="twitter-timeline" href="https://twitter.com/ApacheFlink" data-widget-id="598498380973735936">Tweets by @ApacheFlink</a>
-<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
-  </div>
 </div>
+
+<div class="col-sm-9">
+
+  <dl>
+    {% for post in site.posts limit:5 %}  
+        <dt> <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a></dt>
+        <dd>{{ post.excerpt }}</dd>
+    {% endfor %}
+  </dl>
+
+</div></div>
+
+<script type="text/javascript" src="{{ site.baseurl }}/js/jquery.jcarousel.min.js"></script>
+
+<script type="text/javascript">
+
+  $(window).load(function(){
+   $(function() {
+        var jcarousel = $('.jcarousel');
+
+        jcarousel
+            .on('jcarousel:reload jcarousel:create', function () {
+                var carousel = $(this),
+                    width = carousel.innerWidth();
+
+                if (width >= 600) {
+                    width = width / 4;
+                } else if (width >= 350) {
+                    width = width / 3;
+                }
+
+                carousel.jcarousel('items').css('width', Math.ceil(width) + 'px');
+            })
+            .jcarousel({
+                wrap: 'circular',
+                autostart: true
+            });
+
+        $('.jcarousel-control-prev')
+            .jcarouselControl({
+                target: '-=1'
+            });
+
+        $('.jcarousel-control-next')
+            .jcarouselControl({
+                target: '+=1'
+            });
+
+        $('.jcarousel-pagination')
+            .on('jcarouselpagination:active', 'a', function() {
+                $(this).addClass('active');
+            })
+            .on('jcarouselpagination:inactive', 'a', function() {
+                $(this).removeClass('active');
+            })
+            .on('click', function(e) {
+                e.preventDefault();
+            })
+            .jcarouselPagination({
+                perPage: 1,
+                item: function(page) {
+                    return '<a href="#' + page + '">' + page + '</a>';
+                }
+            });
+    });
+  });
+
+</script>

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/introduction.md
----------------------------------------------------------------------
diff --git a/introduction.md b/introduction.md
new file mode 100644
index 0000000..a1094ca
--- /dev/null
+++ b/introduction.md
@@ -0,0 +1,125 @@
+---
+title: "Introduction to Apache Flink�"
+---
+<br>
+Below is a high-level overview of Apache Flink and stream processing. For a more technical introduction, we recommend the <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/concepts/concepts.html" target="_blank">"Concepts" page</a> in the Flink documentation.
+<br>
+{% toc %}
+
+## Continuous Processing for Unbounded Datasets
+Before we go into detail about Flink, let\u2019s review at a higher level the _types of datasets_ you\u2019re likely to encounter when processing data as well as _types of execution models_ you can choose for processing. These two ideas are often conflated, and it\u2019s useful to clearly separate them.
+
+**First, 2 types of datasets**
+
++ Unbounded: Infinite datasets that are appended to continuously
++ Bounded: Finite, unchanging datasets
+
+Many real-word data sets that are traditionally thought of as bounded or \u201cbatch\u201d data are in reality unbounded datasets. This is true whether the data is stored in a sequence of directories on HDFS or in a log-based system like Apache Kafka.
+
+Examples of unbounded datasets include but are not limited to:
+
++ End users interacting with mobile or web applications
++ Physical sensors providing measurements
++ Financial markets
++ Machine log data
+
+**Second, 2 types of execution models**
+
++ Streaming: Processing that executes continuously as long as data is being produced
++ Batch: Processing that is executed and runs to completeness in a finite amount of time, releasing computing resources when finished
+
+It\u2019s possible, though not necessarily optimal, to process either type of dataset with either type of execution model. For instance, batch execution has long been applied to unbounded datasets despite potential problems with windowing, state management, and out-of-order data.
+
+Flink relies on a _streaming execution model_, which is an intuitive fit for processing unbounded datasets: streaming execution is continuous processing on data that is continuously produced. And alignment between the type of dataset and the type of execution model offers many advantages with regard to accuracy and performance.
+
+
+## Features: Why Flink?
+
+Flink is an open-source framework for distributed stream processing that:
+
++ Provides results that are **accurate**, even in the case of out-of-order or late-arriving data
++ Is **stateful and fault-tolerant** and can seamlessly recover from failures while maintaining exactly-once application state
++ Performs at **large scale**, running on thousands of nodes with very good throughput and latency characteristics
+
+Earlier, we discussed aligning the type of dataset (bounded vs. unbounded) with the type of execution model (batch vs. streaming). Many of the Flink features listed below--state management, handling of out-of-order data, flexible windowing--are essential for computing accurate results on unbounded datasets and are enabled by Flink's streaming execution model.
+
++ Flink guarantees **exactly-once semantics for stateful computations**. \u2018Stateful\u2019 means that applications can maintain an aggregation or summary of data that has been processed over time, and Flink's checkpointing mechanism ensures exactly-once semantics for an application\u2019s state in the event of a failure.
+
+<img class="illu" src="{{ site.baseurl }}/img/exactly_once_state.png" alt="Exactly Once State" width="389px" height="193px"/>
+
++ Flink supports stream processing and windowing with **event time semantics**. Event time makes it easy to compute accurate results over streams where events arrive out of order and where events may arrive delayed.
+
+<img class="illu" src="{{ site.baseurl }}/img/out_of_order_stream.png" alt="Out Of Order Stream" width="520px" height="130px"/>
+
++ Flink supports **flexible windowing** based on time, count, or sessions in addition to data-driven windows. Windows can be customized with flexible triggering conditions to support sophisticated streaming patterns. Flink\u2019s windowing makes it possible to model the reality of the environment in which data is created.
+
+<img class="illu" src="{{ site.baseurl }}/img/windows.png" alt="Windows" width="520px" height="134px"/>
+
++ Flink\u2019s **fault tolerance is lightweight** and allows the system to maintain high throughput rates and provide exactly-once consistency guarantees at the same time. Flink recovers from failures with zero data loss while the tradeoff between reliability and latency is negligible.
+
+<img class="illu" src="{{ site.baseurl }}/img/distributed_snapshots.png" alt="Snapshots" width="260px" height="306px"/>
+
++ Flink is capable of **high throughput and low latency** (processing lots of data quickly). The charts below show the performance of Apache Flink and Apache Storm completing a distributed item counting task that requires streaming data shuffles.
+
+<img class="illu" src="{{ site.baseurl }}/img/streaming_performance.png" alt="Performance" width="650px" height="232px"/>
+
++ Flink's **savepoints provide a state versioning mechanism**, making it possible to update applications or reprocess historic data with no lost state and minimal downtime.
+
+<img class="illu" src="{{ site.baseurl }}/img/savepoints.png" alt="Savepoints" width="450px" height="300px"/>
+
++ Flink is designed to run on **large-scale clusters** with many thousands of nodes, and in addition to a standalone cluster mode, Flink provides support for YARN and Mesos.
+
+<img class="illu" src="{{ site.baseurl }}/img/parallel_dataflows.png" alt="Parallel" width="695px" height="459px"/>
+
+## Flink, the streaming model, and bounded datasets
+
+If you\u2019ve reviewed Flink\u2019s documentation, you might have noticed both a DataStream API for working with unbounded data as well as a DataSet API for working with bounded data.
+
+Earlier in this write-up, we introduced the streaming execution model (\u201cprocessing that executes continuously, an event-at-a-time\u201d) as an intuitive fit for unbounded datasets. So how do bounded datasets relate to the stream processing paradigm?
+
+In Flink\u2019s case, the relationship is quite natural. A bounded dataset can simply be treated as a special case of an unbounded one, so it\u2019s possible to apply all of the same streaming concepts that we\u2019ve laid out above to finite data.
+
+This is exactly how Flink's DataSet API behaves. A bounded dataset is handled inside of Flink as a \u201cfinite stream\u201d, with only a few minor differences in how Flink manages bounded vs. unbounded datasets.
+
+And so it\u2019s possible to use Flink to process both bounded and unbounded data, with both APIs running on the same distributed streaming execution engine--a simple yet powerful architecture.
+
+
+## The \u201cWhat\u201d: Flink from the bottom-up
+
+<img class="illu" src="{{ site.baseurl }}/img/flink-stack-frontpage.png" alt="Source" width="596px" height="110px"/>
+
+### Deployment modes
+Flink can run in the cloud or on premise and on a standalone cluster or on a cluster managed by YARN or Mesos.
+
+### Runtime
+Flink\u2019s core is a distributed streaming dataflow engine, meaning that data is processed an event-at-a-time rather than as a series of batches--an important distinction, as this is what enables many of Flink\u2019s resilience and performance features that are detailed above.
+
+### APIs
+
++ Flink\u2019s <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/index.html" target="_blank">DataStream API</a> is for programs that implement transformations on data streams (e.g., filtering, updating state, defining windows, aggregating).
++ The <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/batch/index.html" target="_blank">DataSet API</a> is for programs that implement transformations on data sets (e.g., filtering, mapping, joining, grouping).
++ The <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/table.html" target="_blank">Table API</a> is a SQL-like expression language for relational stream and batch processing that can be easily embedded in Flink\u2019s DataSet and DataStream APIs (Java and Scala).
++ <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/table.html#sql" target="_blank">Streaming SQL</a> enables SQL queries to be executed on streaming and batch tables. The syntax is based on <a href="https://calcite.apache.org/docs/stream.html" target="_blank">Apache Calcite\u2122</a>.
+
+### Libraries
+Flink also includes special-purpose libraries for <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/streaming/libs/cep.html" target="_blank">complex event processing</a>, <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/batch/libs/ml/index.html" target="_blank">machine learning</a>, <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/apis/batch/libs/gelly.html" target="_blank">graph processing</a>, and <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.2/dev/libs/storm_compatibility.html" target="_blank">Apache Storm compatibility</a>.
+
+## Flink and other frameworks
+
+At the most basic level, a Flink program is made up of:
+
++ **Data source:** Incoming data that Flink processes
++ **Transformations:** The processing step, when Flink modifies incoming data
++ **Data sink:** Where Flink sends data after processing
+
+<img class="illu" src="{{ site.baseurl }}/img/source-transform-sink-update.png" alt="Source" width="1000px" height="232px"/>
+
+A well-developed ecosystem is necessary for the efficient movement of data in and out of a Flink program, and Flink supports a wide range of connectors to third-party systems for data sources and sinks.
+
+If you\u2019re interested in learning more, we\u2019ve collected [information about the Flink ecosystem here]({{ site.baseurl }}/ecosystem.html).
+
+## Key Takeaways and Next Steps
+
+In summary, Apache Flink is an open-source stream processing framework that eliminates the "performance vs. reliability" tradeoff often associated with open-source streaming engines and performs consistently in both categories. Following this introduction, we recommend you try our <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/setup_quickstart.html" target="_blank">quickstart</a>, [download]({{ site.baseurl }}/downloads.html) the most recent stable version of Flink, or review the <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/" target="_blank">documentation</a>.
+
+And we encourage you to join the Flink user mailing list and to share your questions with the community. We\u2019re here to help you get the most out of Flink.

http://git-wip-us.apache.org/repos/asf/flink-web/blob/d8883b04/js/codetabs.js
----------------------------------------------------------------------
diff --git a/js/codetabs.js b/js/codetabs.js
old mode 100644
new mode 100755