http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/libs/spargel_guide.html ---------------------------------------------------------------------- diff --git a/content/docs/0.9/libs/spargel_guide.html b/content/docs/0.9/libs/spargel_guide.html deleted file mode 100644 index 6e45e00..0000000 --- a/content/docs/0.9/libs/spargel_guide.html +++ /dev/null @@ -1,313 +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. ---> -<!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 0.9.0 Documentation: Spargel Graph Processing API - DEPRECATED</title> - - <link rel="shortcut icon" href="http://flink.apache.org/docs/0.9/page/favicon.ico" type="image/x-icon"> - <link rel="icon" href="http://flink.apache.org/docs/0.9/page/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="http://flink.apache.org/docs/0.9/page/css/flink.css"> - <link rel="stylesheet" href="http://flink.apache.org/docs/0.9/page/css/syntax.css"> - <link rel="stylesheet" href="http://flink.apache.org/docs/0.9/page/css/codetabs.css"> - - <!-- 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="http://flink.apache.org"><img alt="Apache Flink" src="http://flink.apache.org/docs/0.9/page/img/navbar-brand-logo.jpg"></a> - </div> - </div><!-- /.navbar-header --> - - <!-- The navigation links. --> - <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> - <ul class="nav navbar-nav"> - <li><a href="http://flink.apache.org/docs/0.9/index.html">Overview<span class="hidden-sm hidden-xs"> 0.9.0</span></a></li> - - <!-- Setup --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/setup" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Setup <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li><a href="http://flink.apache.org/docs/0.9/setup/building.html">Get Flink 0.9-SNAPSHOT</a></li> - - <li class="divider"></li> - <li role="presentation" class="dropdown-header"><strong>Deployment</strong></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/local_setup.html" class="active">Local</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/cluster_setup.html">Cluster (Standalone)</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/yarn_setup.html">YARN</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/gce_setup.html">GCloud</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/flink_on_tez.html">Flink on Tez <span class="badge">Beta</span></a></li> - - <li class="divider"></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/config.html">Configuration</a></li> - </ul> - </li> - - <!-- Programming Guides --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/apis" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Programming Guides <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li><a href="http://flink.apache.org/docs/0.9/apis/programming_guide.html"><strong>Batch: DataSet API</strong></a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/streaming_guide.html"><strong>Streaming: DataStream API</strong> <span class="badge">Beta</span></a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/python.html">Python API <span class="badge">Beta</span></a></li> - - <li class="divider"></li> - <li><a href="scala_shell.html">Interactive Scala Shell</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/dataset_transformations.html">Dataset Transformations</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/best_practices.html">Best Practices</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/example_connectors.html">Connectors</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/examples.html">Examples</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/local_execution.html">Local Execution</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/cluster_execution.html">Cluster Execution</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/cli.html">Command Line Interface</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/web_client.html">Web Client</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/iterations.html">Iterations</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/java8.html">Java 8</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/hadoop_compatibility.html">Hadoop Compatability <span class="badge">Beta</span></a></li> - </ul> - </li> - - <!-- Libraries --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/libs" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Libraries <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li><a href="http://flink.apache.org/docs/0.9/libs/spargel_guide.html">Graphs: Spargel</a></li> - <li><a href="http://flink.apache.org/docs/0.9/libs/gelly_guide.html">Graphs: Gelly <span class="badge">Beta</span></a></li> - <li><a href="http://flink.apache.org/docs/0.9/libs/ml/">Machine Learning <span class="badge">Beta</span></a></li> - <li><a href="http://flink.apache.org/docs/0.9/libs/table.html">Relational: Table <span class="badge">Beta</span></a></li> - </ul> - </li> - - <!-- Internals --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/internals" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Internals <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li role="presentation" class="dropdown-header"><strong>Contribute</strong></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/how_to_contribute.html">How to Contribute</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/coding_guidelines.html">Coding Guidelines</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/ide_setup.html">IDE Setup</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/logging.html">Logging</a></li> - <li class="divider"></li> - <li role="presentation" class="dropdown-header"><strong>Internals</strong></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/general_arch.html">Architecture & Process Model</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/types_serialization.html">Type Extraction & Serialization</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/job_scheduling.html">Jobs & Scheduling</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/add_operator.html">How-To: Add an Operator</a></li> - </ul> - </li> - </ul> - <form class="navbar-form navbar-right hidden-sm hidden-md" role="search" action="http://flink.apache.org/docs/0.9/search-results.html"> - <div class="form-group"> - <input type="text" class="form-control" name="q" placeholder="Search all pages"> - </div> - <button type="submit" class="btn btn-default">Search</button> - </form> - </div><!-- /.navbar-collapse --> - </div><!-- /.container --> - </nav> - - - - - <!-- Main content. --> - <div class="container"> - - -<div class="row"> - <div class="col-sm-10 col-sm-offset-1"> - <h1>Spargel Graph Processing API - DEPRECATED</h1> - - - -<p>Spargel is our <a href="http://giraph.apache.org">Giraph</a> like <strong>graph processing</strong> Java API. It supports basic graph computations, which are run as a sequence of <a href="http://flink.apache.org/docs/0.9/apis/iterations.html#supersteps">supersteps</a>. Spargel and Giraph both implement the <a href="https://en.wikipedia.org/wiki/Bulk_Synchronous_Parallel">Bulk Synchronous Parallel (BSP)</a> programming model, propsed by Googleâs <a href="http://googleresearch.blogspot.de/2009/06/large-scale-graph-computing-at-google.html">Pregel</a>.</p> - -<p>The API provides a <strong>vertex-centric</strong> view on graph processing with two basic operations per superstep:</p> - -<ol> - <li><strong>Send messages</strong> to other vertices, and</li> - <li><strong>Receive messages</strong> from other vertices and <strong>update own vertex state</strong>.</li> -</ol> - -<p>This vertex-centric view makes it easy to express a large class of graph problems efficiently. We will list all <em>relevant interfaces</em> of the <strong>Spargel API</strong> to implement and walk through an <strong>example Spargel program</strong>.</p> - -<ul id="markdown-toc"> - <li><a href="#spargel-api---deprecated" id="markdown-toc-spargel-api---deprecated">Spargel API - DEPRECATED</a></li> - <li><a href="#example-propagate-minimum-vertex-id-in-graph" id="markdown-toc-example-propagate-minimum-vertex-id-in-graph">Example: Propagate Minimum Vertex ID in Graph</a></li> -</ul> - -<h2 id="spargel-api---deprecated">Spargel API - DEPRECATED</h2> -<p>The Spargel API is Deprecated. Please check out the new <a href="gelly_guide.html">Gelly API</a> for graph processing with Apache Flink. If you want to port your Spargel code into Gelly, -please check the <a href="gelly_guide.html#migrating-spargel-code-to-gelly">migration guide</a>.</p> - -<p>The Spargel API is part of the <em>addons</em> Maven project. All relevant classes are located in the <em>org.apache.flink.spargel.java</em> package.</p> - -<p>Add the following dependency to your <code>pom.xml</code> to use the Spargel.</p> - -<div class="highlight"><pre><code class="language-xml"><span class="nt"><dependency></span> - <span class="nt"><groupId></span>org.apache.flink<span class="nt"></groupId></span> - <span class="nt"><artifactId></span>flink-spargel<span class="nt"></artifactId></span> - <span class="nt"><version></span>0.9.0<span class="nt"></version></span> -<span class="nt"></dependency></span></code></pre></div> - -<p>Extend <strong>VertexUpdateFunction<</strong><em>VertexKeyType</em>, <em>VertexValueType</em>, <em>MessageType</em><strong>></strong> to implement your <em>custom vertex update logic</em>.</p> - -<p>Extend <strong>MessagingFunction<</strong><em>VertexKeyType</em>, <em>VertexValueType</em>, <em>MessageType</em>, <em>EdgeValueType</em><strong>></strong> to implement your <em>custom message logic</em>.</p> - -<p>Create a <strong>SpargelIteration</strong> operator to include Spargel in your data flow.</p> - -<h2 id="example-propagate-minimum-vertex-id-in-graph">Example: Propagate Minimum Vertex ID in Graph</h2> - -<p>The Spargel operator <strong>SpargelIteration</strong> includes Spargel graph processing into your data flow. As usual, it can be combined with other operators like <em>map</em>, <em>reduce</em>, <em>join</em>, etc.</p> - -<div class="highlight"><pre><code class="language-java"><span class="n">FileDataSource</span> <span class="n">vertices</span> <span class="o">=</span> <span class="k">new</span> <span class="nf">FileDataSource</span><span class="o">(...);</span> -<span class="n">FileDataSource</span> <span class="n">edges</span> <span class="o">=</span> <span class="k">new</span> <span class="nf">FileDataSource</span><span class="o">(...);</span> - -<span class="n">SpargelIteration</span> <span class="n">iteration</span> <span class="o">=</span> <span class="k">new</span> <span class="nf">SpargelIteration</span><span class="o">(</span><span class="k">new</span> <span class="nf">MinMessager</span><span class="o">(),</span> <span class="k">new</span> <span class="nf">MinNeighborUpdater</span><span class="o">());</span> -<span class="n">iteration</span><span class="o">.</span><span class="na">setVertexInput</span><span class="o">(</span><span class="n">vertices</span><span class="o">);</span> -<span class="n">iteration</span><span class="o">.</span><span class="na">setEdgesInput</span><span class="o">(</span><span class="n">edges</span><span class="o">);</span> -<span class="n">iteration</span><span class="o">.</span><span class="na">setNumberOfIterations</span><span class="o">(</span><span class="n">maxIterations</span><span class="o">);</span> - -<span class="n">FileDataSink</span> <span class="n">result</span> <span class="o">=</span> <span class="k">new</span> <span class="nf">FileDataSink</span><span class="o">(...);</span> -<span class="n">result</span><span class="o">.</span><span class="na">setInput</span><span class="o">(</span><span class="n">iteration</span><span class="o">.</span><span class="na">getOutput</span><span class="o">());</span> - -<span class="k">new</span> <span class="nf">Plan</span><span class="o">(</span><span class="n">result</span><span class="o">);</span></code></pre></div> - -<p>Besides the <strong>program logic</strong> of vertex updates in <em>MinNeighborUpdater</em> and messages in <em>MinMessager</em>, you have to specify the <strong>initial vertex</strong> and <strong>edge input</strong>. Every vertex has a <strong>key</strong> and <strong>value</strong>. In each superstep, it <strong>receives messages</strong> from other vertices and updates its state:</p> - -<ul> - <li><strong>Vertex</strong> input: <strong>(id</strong>: <em>VertexKeyType</em>, <strong>value</strong>: <em>VertexValueType</em><strong>)</strong></li> - <li><strong>Edge</strong> input: <strong>(source</strong>: <em>VertexKeyType</em>, <strong>target</strong>: <em>VertexKeyType</em>[, <strong>value</strong>: <em>EdgeValueType</em>])</li> -</ul> - -<p>For our example, we set the vertex ID as both <em>id and value</em> (initial minimum) and <em>leave out the edge values</em> as we donât need them:</p> - -<p class="text-center"> - <img alt="Spargel Example Input" width="75%" src="fig/spargel_example_input.png" /> -</p> - -<p>In order to <strong>propagate the minimum vertex ID</strong>, we iterate over all received messages (which contain the neighboring IDs) and update our value, if we found a new minimum:</p> - -<div class="highlight"><pre><code class="language-java"><span class="kd">public</span> <span class="kd">class</span> <span class="nc">MinNeighborUpdater</span> <span class="kd">extends</span> <span class="n">VertexUpdateFunction</span><span class="o"><</span><span class="n">IntValue</span><span class="o">,</span> <span class="n">IntValue</span><span class="o">,</span> <span class="n">IntValue</span><span class="o">></span> <span class="o">{</span> - - <span class="nd">@Override</span> - <span class="kd">public</span> <span class="kt">void</span> <span class="nf">updateVertex</span><span class="o">(</span><span class="n">IntValue</span> <span class="n">id</span><span class="o">,</span> <span class="n">IntValue</span> <span class="n">currentMin</span><span class="o">,</span> <span class="n">Iterator</span><span class="o"><</span><span class="n">IntValue</span><span class="o">></span> <span class="n">messages</span><span class="o">)</span> <span class="o">{</span> - <span class="kt">int</span> <span class="n">min</span> <span class="o">=</span> <span class="n">Integer</span><span class="o">.</span><span class="na">MAX_VALUE</span><span class="o">;</span> - - <span class="c1">// iterate over all received messages</span> - <span class="k">while</span> <span class="o">(</span><span class="n">messages</span><span class="o">.</span><span class="na">hasNext</span><span class="o">())</span> <span class="o">{</span> - <span class="kt">int</span> <span class="n">next</span> <span class="o">=</span> <span class="n">messages</span><span class="o">.</span><span class="na">next</span><span class="o">().</span><span class="na">getValue</span><span class="o">();</span> - <span class="n">min</span> <span class="o">=</span> <span class="n">next</span> <span class="o"><</span> <span class="n">min</span> <span class="o">?</span> <span class="n">next</span> <span class="o">:</span> <span class="n">min</span><span class="o">;</span> - <span class="o">}</span> - - <span class="c1">// update vertex value, if new minimum</span> - <span class="k">if</span> <span class="o">(</span><span class="n">min</span> <span class="o"><</span> <span class="n">currentMin</span><span class="o">.</span><span class="na">getValue</span><span class="o">())</span> <span class="o">{</span> - <span class="n">setNewVertexValue</span><span class="o">(</span><span class="k">new</span> <span class="nf">IntValue</span><span class="o">(</span><span class="n">min</span><span class="o">));</span> - <span class="o">}</span> - <span class="o">}</span> -<span class="o">}</span></code></pre></div> - -<p>The <strong>messages in each superstep</strong> consist of the <strong>current minimum ID</strong> seen by the vertex:</p> - -<div class="highlight"><pre><code class="language-java"><span class="kd">public</span> <span class="kd">class</span> <span class="nc">MinMessager</span> <span class="kd">extends</span> <span class="n">MessagingFunction</span><span class="o"><</span><span class="n">IntValue</span><span class="o">,</span> <span class="n">IntValue</span><span class="o">,</span> <span class="n">IntValue</span><span class="o">,</span> <span class="n">NullValue</span><span class="o">></span> <span class="o">{</span> - - <span class="nd">@Override</span> - <span class="kd">public</span> <span class="kt">void</span> <span class="nf">sendMessages</span><span class="o">(</span><span class="n">IntValue</span> <span class="n">id</span><span class="o">,</span> <span class="n">IntValue</span> <span class="n">currentMin</span><span class="o">)</span> <span class="o">{</span> - <span class="c1">// send current minimum to neighbors</span> - <span class="n">sendMessageToAllNeighbors</span><span class="o">(</span><span class="n">currentMin</span><span class="o">);</span> - <span class="o">}</span> -<span class="o">}</span></code></pre></div> - -<p>The <strong>API-provided method</strong> <code>sendMessageToAllNeighbors(MessageType)</code> sends the message to all neighboring vertices. It is also possible to address specific vertices with <code>sendMessageTo(VertexKeyType, MessageType)</code>.</p> - -<p>If the value of a vertex does not change during a superstep, it will <strong>not send</strong> any messages in the superstep. This allows to do incremental updates to the <strong>hot (changing) parts</strong> of the graph, while leaving <strong>cold (steady) parts</strong> untouched.</p> - -<p>The computation <strong>terminates</strong> after a specified <em>maximum number of supersteps</em> <strong>-OR-</strong> the <em>vertex states stop changing</em>.</p> - -<p class="text-center"> - <img alt="Spargel Example" width="75%" src="fig/spargel_example.png" /> -</p> - - </div> - - <div class="col-sm-10 col-sm-offset-1"> - <!-- Disqus thread and some vertical offset --> - <div style="margin-top: 75px; margin-bottom: 50px" id="disqus_thread"></div> - </div> -</div> - - </div><!-- /.container --> - - <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> - <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> - <!-- 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="http://flink.apache.org/docs/0.9/page/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> - - <!-- Disqus --> - <script type="text/javascript"> - var disqus_shortname = 'stratosphere-eu'; - (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> - </body> -</html>
http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/libs/table.html ---------------------------------------------------------------------- diff --git a/content/docs/0.9/libs/table.html b/content/docs/0.9/libs/table.html deleted file mode 100644 index 73bd084..0000000 --- a/content/docs/0.9/libs/table.html +++ /dev/null @@ -1,302 +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. ---> -<!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 0.9.0 Documentation: Table API - Relational Queries</title> - - <link rel="shortcut icon" href="http://flink.apache.org/docs/0.9/page/favicon.ico" type="image/x-icon"> - <link rel="icon" href="http://flink.apache.org/docs/0.9/page/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="http://flink.apache.org/docs/0.9/page/css/flink.css"> - <link rel="stylesheet" href="http://flink.apache.org/docs/0.9/page/css/syntax.css"> - <link rel="stylesheet" href="http://flink.apache.org/docs/0.9/page/css/codetabs.css"> - - <!-- 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="http://flink.apache.org"><img alt="Apache Flink" src="http://flink.apache.org/docs/0.9/page/img/navbar-brand-logo.jpg"></a> - </div> - </div><!-- /.navbar-header --> - - <!-- The navigation links. --> - <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> - <ul class="nav navbar-nav"> - <li><a href="http://flink.apache.org/docs/0.9/index.html">Overview<span class="hidden-sm hidden-xs"> 0.9.0</span></a></li> - - <!-- Setup --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/setup" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Setup <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li><a href="http://flink.apache.org/docs/0.9/setup/building.html">Get Flink 0.9-SNAPSHOT</a></li> - - <li class="divider"></li> - <li role="presentation" class="dropdown-header"><strong>Deployment</strong></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/local_setup.html" class="active">Local</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/cluster_setup.html">Cluster (Standalone)</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/yarn_setup.html">YARN</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/gce_setup.html">GCloud</a></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/flink_on_tez.html">Flink on Tez <span class="badge">Beta</span></a></li> - - <li class="divider"></li> - <li><a href="http://flink.apache.org/docs/0.9/setup/config.html">Configuration</a></li> - </ul> - </li> - - <!-- Programming Guides --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/apis" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Programming Guides <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li><a href="http://flink.apache.org/docs/0.9/apis/programming_guide.html"><strong>Batch: DataSet API</strong></a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/streaming_guide.html"><strong>Streaming: DataStream API</strong> <span class="badge">Beta</span></a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/python.html">Python API <span class="badge">Beta</span></a></li> - - <li class="divider"></li> - <li><a href="scala_shell.html">Interactive Scala Shell</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/dataset_transformations.html">Dataset Transformations</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/best_practices.html">Best Practices</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/example_connectors.html">Connectors</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/examples.html">Examples</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/local_execution.html">Local Execution</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/cluster_execution.html">Cluster Execution</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/cli.html">Command Line Interface</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/web_client.html">Web Client</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/iterations.html">Iterations</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/java8.html">Java 8</a></li> - <li><a href="http://flink.apache.org/docs/0.9/apis/hadoop_compatibility.html">Hadoop Compatability <span class="badge">Beta</span></a></li> - </ul> - </li> - - <!-- Libraries --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/libs" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Libraries <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li><a href="http://flink.apache.org/docs/0.9/libs/spargel_guide.html">Graphs: Spargel</a></li> - <li><a href="http://flink.apache.org/docs/0.9/libs/gelly_guide.html">Graphs: Gelly <span class="badge">Beta</span></a></li> - <li><a href="http://flink.apache.org/docs/0.9/libs/ml/">Machine Learning <span class="badge">Beta</span></a></li> - <li><a href="http://flink.apache.org/docs/0.9/libs/table.html">Relational: Table <span class="badge">Beta</span></a></li> - </ul> - </li> - - <!-- Internals --> - <li class="dropdown"> - <a href="http://flink.apache.org/docs/0.9/internals" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Internals <span class="caret"></span></a> - <ul class="dropdown-menu" role="menu"> - <li role="presentation" class="dropdown-header"><strong>Contribute</strong></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/how_to_contribute.html">How to Contribute</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/coding_guidelines.html">Coding Guidelines</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/ide_setup.html">IDE Setup</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/logging.html">Logging</a></li> - <li class="divider"></li> - <li role="presentation" class="dropdown-header"><strong>Internals</strong></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/general_arch.html">Architecture & Process Model</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/types_serialization.html">Type Extraction & Serialization</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/job_scheduling.html">Jobs & Scheduling</a></li> - <li><a href="http://flink.apache.org/docs/0.9/internals/add_operator.html">How-To: Add an Operator</a></li> - </ul> - </li> - </ul> - <form class="navbar-form navbar-right hidden-sm hidden-md" role="search" action="http://flink.apache.org/docs/0.9/search-results.html"> - <div class="form-group"> - <input type="text" class="form-control" name="q" placeholder="Search all pages"> - </div> - <button type="submit" class="btn btn-default">Search</button> - </form> - </div><!-- /.navbar-collapse --> - </div><!-- /.container --> - </nav> - - - - - <!-- Main content. --> - <div class="container"> - - -<div class="row"> - <div class="col-sm-10 col-sm-offset-1"> - <h1>Table API - Relational Queries <span class="badge">Beta</span></h1> - - - -<p><strong>The Table API an experimental feature</strong></p> - -<p>Flink provides an API that allows specifying operations using SQL-like expressions. Instead of -manipulating <code>DataSet</code> or <code>DataStream</code> you work with <code>Table</code> on which relational operations can -be performed.</p> - -<p>The following dependency must be added to your project when using the Table API:</p> - -<div class="highlight"><pre><code class="language-xml" data-lang="xml"><span class="nt"><dependency></span> - <span class="nt"><groupId></span>org.apache.flink<span class="nt"></groupId></span> - <span class="nt"><artifactId></span>flink-table<span class="nt"></artifactId></span> - <span class="nt"><version></span>0.9.0<span class="nt"></version></span> -<span class="nt"></dependency></span></code></pre></div> - -<p>Note that the Table API is currently not part of the binary distribution. See linking with it for cluster execution <a href="../apis/cluster_execution.html#linking-with-modules-not-contained-in-the-binary-distribution">here</a>.</p> - -<h2 id="scala-table-api">Scala Table API</h2> - -<p>The Table API can be enabled by importing <code>org.apache.flink.api.scala.table._</code>. This enables -implicit conversions that allow -converting a DataSet or DataStream to a Table. This example shows how a DataSet can -be converted, how relational queries can be specified and how a Table can be -converted back to a DataSet:</p> - -<div class="highlight"><pre><code class="language-scala" data-lang="scala"><span class="k">import</span> <span class="nn">org.apache.flink.api.scala._</span> -<span class="k">import</span> <span class="nn">org.apache.flink.api.scala.table._</span> - -<span class="k">case</span> <span class="k">class</span> <span class="nc">WC</span><span class="o">(</span><span class="n">word</span><span class="k">:</span> <span class="kt">String</span><span class="o">,</span> <span class="n">count</span><span class="k">:</span> <span class="kt">Int</span><span class="o">)</span> -<span class="k">val</span> <span class="n">input</span> <span class="k">=</span> <span class="n">env</span><span class="o">.</span><span class="n">fromElements</span><span class="o">(</span><span class="nc">WC</span><span class="o">(</span><span class="s">"hello"</span><span class="o">,</span> <span class="mi">1</span><span class="o">),</span> <span class="nc">WC</span><span class="o">(</span><span class="s">"hello"</span><span class="o">,</span> <span class="mi">1</span><span class="o">),</span> <span class="nc">WC</span><span class="o">(</span><span class="s">"ciao"</span><span class="o">,</span> <span class="mi">1</span><span class="o">))</span> -<span class="k">val</span> <span class="n">expr</span> <span class="k">=</span> <span class="n">input</span><span class="o">.</span><span class="n">toTable</span> -<span class="k">val</span> <span class="n">result</span> <span class="k">=</span> <span class="n">expr</span><span class="o">.</span><span class="n">groupBy</span><span class="o">(</span><span class="-Symbol">'word</span><span class="o">).</span><span class="n">select</span><span class="o">(</span><span class="-Symbol">'word</span><span class="o">,</span> <span class="-Symbol">'count</span><span class="o">.</span><span class="n">sum</span> <span class="n">as</span> <span class="-Symbol">'count</span><span class="o">).</span><span class="n">toDataSet</span><span class="o">[</span><span class="kt">WC</span><span class="o">]</span></code></pre></div> - -<p>The expression DSL uses Scala symbols to refer to field names and we use code generation to -transform expressions to efficient runtime code. Please note that the conversion to and from -Tables only works when using Scala case classes or Flink POJOs. Please check out -the <a href="programming_guide.html">programming guide</a> to learn the requirements for a class to be -considered a POJO.</p> - -<p>This is another example that shows how you -can join to Tables:</p> - -<div class="highlight"><pre><code class="language-scala" data-lang="scala"><span class="k">case</span> <span class="k">class</span> <span class="nc">MyResult</span><span class="o">(</span><span class="n">a</span><span class="k">:</span> <span class="kt">String</span><span class="o">,</span> <span class="n">d</span><span class="k">:</span> <span class="kt">Int</span><span class="o">)</span> - -<span class="k">val</span> <span class="n">input1</span> <span class="k">=</span> <span class="n">env</span><span class="o">.</span><span class="n">fromElements</span><span class="o">(...).</span><span class="n">toTable</span><span class="o">(</span><span class="-Symbol">'a</span><span class="o">,</span> <span class="-Symbol">'b</span><span class="o">)</span> -<span class="k">val</span> <span class="n">input2</span> <span class="k">=</span> <span class="n">env</span><span class="o">.</span><span class="n">fromElements</span><span class="o">(...).</span><span class="n">toTable</span><span class="o">(</span><span class="-Symbol">'c</span><span class="o">,</span> <span class="-Symbol">'d</span><span class="o">)</span> -<span class="k">val</span> <span class="n">joined</span> <span class="k">=</span> <span class="n">input1</span><span class="o">.</span><span class="n">join</span><span class="o">(</span><span class="n">input2</span><span class="o">).</span><span class="n">where</span><span class="o">(</span><span class="s">"b = a && d > 42"</span><span class="o">).</span><span class="n">select</span><span class="o">(</span><span class="s">"a, d"</span><span class="o">).</span><span class="n">toDataSet</span><span class="o">[</span><span class="kt">MyResult</span><span class="o">]</span></code></pre></div> - -<p>Notice, how a DataSet can be converted to a Table by using <code>as</code> and specifying new -names for the fields. This can also be used to disambiguate fields before a join operation. Also, -in this example we see that you can also use Strings to specify relational expressions.</p> - -<p>Please refer to the Scaladoc (and Javadoc) for a full list of supported operations and a -description of the expression syntax.</p> - -<h2 id="java-table-api">Java Table API</h2> - -<p>When using Java, Tables can be converted to and from DataSet and DataStream using <code>TableEnvironment</code>. -This example is equivalent to the above Scala Example:</p> - -<div class="highlight"><pre><code class="language-java" data-lang="java"><span class="kd">public</span> <span class="kd">class</span> <span class="nc">WC</span> <span class="o">{</span> - - <span class="kd">public</span> <span class="nf">WC</span><span class="o">(</span><span class="n">String</span> <span class="n">word</span><span class="o">,</span> <span class="kt">int</span> <span class="n">count</span><span class="o">)</span> <span class="o">{</span> - <span class="k">this</span><span class="o">.</span><span class="na">word</span> <span class="o">=</span> <span class="n">word</span><span class="o">;</span> <span class="k">this</span><span class="o">.</span><span class="na">count</span> <span class="o">=</span> <span class="n">count</span><span class="o">;</span> - <span class="o">}</span> - - <span class="kd">public</span> <span class="nf">WC</span><span class="o">()</span> <span class="o">{}</span> <span class="c1">// empty constructor to satisfy POJO requirements</span> - - <span class="kd">public</span> <span class="n">String</span> <span class="n">word</span><span class="o">;</span> - <span class="kd">public</span> <span class="kt">int</span> <span class="n">count</span><span class="o">;</span> -<span class="o">}</span> - -<span class="o">...</span> - -<span class="n">ExecutionEnvironment</span> <span class="n">env</span> <span class="o">=</span> <span class="n">ExecutionEnvironment</span><span class="o">.</span><span class="na">createCollectionsEnvironment</span><span class="o">();</span> -<span class="n">TableEnvironment</span> <span class="n">tableEnv</span> <span class="o">=</span> <span class="k">new</span> <span class="nf">TableEnvironment</span><span class="o">();</span> - -<span class="n">DataSet</span><span class="o"><</span><span class="n">WC</span><span class="o">></span> <span class="n">input</span> <span class="o">=</span> <span class="n">env</span><span class="o">.</span><span class="na">fromElements</span><span class="o">(</span> - <span class="k">new</span> <span class="nf">WC</span><span class="o">(</span><span class="s">"Hello"</span><span class="o">,</span> <span class="mi">1</span><span class="o">),</span> - <span class="k">new</span> <span class="nf">WC</span><span class="o">(</span><span class="s">"Ciao"</span><span class="o">,</span> <span class="mi">1</span><span class="o">),</span> - <span class="k">new</span> <span class="nf">WC</span><span class="o">(</span><span class="s">"Hello"</span><span class="o">,</span> <span class="mi">1</span><span class="o">));</span> - -<span class="n">Table</span> <span class="n">table</span> <span class="o">=</span> <span class="n">tableEnv</span><span class="o">.</span><span class="na">fromDataSet</span><span class="o">(</span><span class="n">input</span><span class="o">);</span> - -<span class="n">Table</span> <span class="n">filtered</span> <span class="o">=</span> <span class="n">table</span> - <span class="o">.</span><span class="na">groupBy</span><span class="o">(</span><span class="s">"word"</span><span class="o">)</span> - <span class="o">.</span><span class="na">select</span><span class="o">(</span><span class="s">"word.count as count, word"</span><span class="o">)</span> - <span class="o">.</span><span class="na">filter</span><span class="o">(</span><span class="s">"count = 2"</span><span class="o">);</span> - -<span class="n">DataSet</span><span class="o"><</span><span class="n">WC</span><span class="o">></span> <span class="n">result</span> <span class="o">=</span> <span class="n">tableEnv</span><span class="o">.</span><span class="na">toDataSet</span><span class="o">(</span><span class="n">filtered</span><span class="o">,</span> <span class="n">WC</span><span class="o">.</span><span class="na">class</span><span class="o">);</span></code></pre></div> - -<p>When using Java, the embedded DSL for specifying expressions cannot be used. Only String expressions -are supported. They support exactly the same feature set as the expression DSL.</p> - -<p>Please refer to the Javadoc for a full list of supported operations and a description of the -expression syntax.</p> - - - </div> - - <div class="col-sm-10 col-sm-offset-1"> - <!-- Disqus thread and some vertical offset --> - <div style="margin-top: 75px; margin-bottom: 50px" id="disqus_thread"></div> - </div> -</div> - - </div><!-- /.container --> - - <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> - <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> - <!-- 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="http://flink.apache.org/docs/0.9/page/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> - - <!-- Disqus --> - <script type="text/javascript"> - var disqus_shortname = 'stratosphere-eu'; - (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> - </body> -</html> http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/css/codetabs.css ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/css/codetabs.css b/content/docs/0.9/page/css/codetabs.css deleted file mode 100644 index 420d559..0000000 --- a/content/docs/0.9/page/css/codetabs.css +++ /dev/null @@ -1,62 +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. -**/ - -/** - * Make dropdown menus in nav bars show on hover instead of click - * using solution at http://stackoverflow.com/questions/8878033/how- - * to-make-twitter-bootstrap-menu-dropdown-on-hover-rather-than-click - **/ -ul.nav li.dropdown:hover ul.dropdown-menu{ - display: block; -} - -a.menu:after, .dropdown-toggle:after { - content: none; -} - -/** Make the submenus open on hover on the parent menu item */ -ul.nav li.dropdown ul.dropdown-menu li.dropdown-submenu:hover ul.dropdown-menu { - display: block; -} - -/** Make the submenus be invisible until the parent menu item is hovered upon */ -ul.nav li.dropdown ul.dropdown-menu li.dropdown-submenu ul.dropdown-menu { - display: none; -} - -/** - * Made the navigation bar buttons not grey out when clicked. - * Essentially making nav bar buttons not react to clicks, only hover events. - */ -.navbar .nav li.dropdown.open > .dropdown-toggle { - background-color: transparent; -} - -/** - * Made the active tab caption blue. Otherwise the active tab is black, and inactive tab is blue. - * That looks weird. Changed the colors to active - blue, inactive - black, and - * no color change on hover. - */ -.nav-tabs > .active > a, .nav-tabs > .active > a:hover { - color: #08c; -} - -.nav-tabs > li > a, .nav-tabs > li > a:hover { - color: #333; -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/css/flink.css ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/css/flink.css b/content/docs/0.9/page/css/flink.css deleted file mode 100644 index 9074e23..0000000 --- a/content/docs/0.9/page/css/flink.css +++ /dev/null @@ -1,123 +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. -*/ -/*============================================================================= - Navbar at the top of the page -=============================================================================*/ - -/* Padding at top because of the fixed navbar. */ -body { - padding-top: 70px; -} - -/* Our logo. */ -.navbar-logo { - padding: 5px 15px 5px 15px; -} -.navbar-logo img { - height: 40px; -} - -/* Links */ -.navbar-default .navbar-nav > li > a { - color: black; - font-weight: bold; -} -.navbar-default .navbar-nav > li > a:hover { - background: #E7E7E7; -} - -.navbar-collapse .dropdown-header { - color: black; -} - -.version { - display: block-inline; - font-size: 90%; -} - -/*============================================================================= - Navbar at the side of the page -=============================================================================*/ - -/* Move the side nav a little bit down to align with the main heading */ -#markdown-toc { - font-size: 90%; -} - -/* Custom list styling */ -#markdown-toc, #markdown-toc ul { - list-style: none; - display: block; - position: relative; - padding-left: 0; - margin-bottom: 0; -} - -/* All element */ -#markdown-toc li > a { - display: block; - padding: 5px 10px; - border: 1px solid #E5E5E5; - margin:-1px; -} -#markdown-toc li > a:hover, -#markdown-toc li > a:focus { - text-decoration: none; - background-color: #eee; -} - -/* 1st-level elements */ -#markdown-toc > li > a { - font-weight: bold; -} - -/* 2nd-level element */ -#markdown-toc > li li > a { - padding-left: 20px; /* A little more indentation*/ -} - -/* >= 3rd-level element */ -#markdown-toc > li li li { - display: none; /* hide */ -} - -#markdown-toc li:last-child > a { - border-bottom: 1px solid #E5E5E5; -} - -/*============================================================================= - Text -=============================================================================*/ - -h2, h3 { - padding-top: 1em; - padding-bottom: 5px; - border-bottom: 1px solid #E5E5E5; -} - -code { - background: #f5f5f5; - padding: 0; - color: #333333; - font-family: "Menlo", "Lucida Console", monospace; -} - -pre { - font-size: 85%; -} http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/css/syntax.css ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/css/syntax.css b/content/docs/0.9/page/css/syntax.css deleted file mode 100644 index ba3c0ba..0000000 --- a/content/docs/0.9/page/css/syntax.css +++ /dev/null @@ -1,79 +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. -**/ - -.highlight { background: #ffffff; } -.highlight .c { color: #999988; font-style: italic } /* Comment */ -.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ -.highlight .k { font-weight: bold } /* Keyword */ -.highlight .o { font-weight: bold } /* Operator */ -.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */ -.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */ -.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */ -.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ -.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ -.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */ -.highlight .ge { font-style: italic } /* Generic.Emph */ -.highlight .gr { color: #aa0000 } /* Generic.Error */ -.highlight .gh { color: #999999 } /* Generic.Heading */ -.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ -.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */ -.highlight .go { color: #888888 } /* Generic.Output */ -.highlight .gp { color: #555555 } /* Generic.Prompt */ -.highlight .gs { font-weight: bold } /* Generic.Strong */ -.highlight .gu { color: #aaaaaa } /* Generic.Subheading */ -.highlight .gt { color: #aa0000 } /* Generic.Traceback */ -.highlight .kc { font-weight: bold } /* Keyword.Constant */ -.highlight .kd { font-weight: bold } /* Keyword.Declaration */ -.highlight .kp { font-weight: bold } /* Keyword.Pseudo */ -.highlight .kr { font-weight: bold } /* Keyword.Reserved */ -.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */ -.highlight .m { color: #009999 } /* Literal.Number */ -.highlight .s { color: #d14 } /* Literal.String */ -.highlight .na { color: #008080 } /* Name.Attribute */ -.highlight .nb { color: #0086B3 } /* Name.Builtin */ -.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */ -.highlight .no { color: #008080 } /* Name.Constant */ -.highlight .ni { color: #800080 } /* Name.Entity */ -.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */ -.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */ -.highlight .nn { color: #555555 } /* Name.Namespace */ -.highlight .nt { color: #000080 } /* Name.Tag */ -.highlight .nv { color: #008080 } /* Name.Variable */ -.highlight .ow { font-weight: bold } /* Operator.Word */ -.highlight .w { color: #bbbbbb } /* Text.Whitespace */ -.highlight .mf { color: #009999 } /* Literal.Number.Float */ -.highlight .mh { color: #009999 } /* Literal.Number.Hex */ -.highlight .mi { color: #009999 } /* Literal.Number.Integer */ -.highlight .mo { color: #009999 } /* Literal.Number.Oct */ -.highlight .sb { color: #d14 } /* Literal.String.Backtick */ -.highlight .sc { color: #d14 } /* Literal.String.Char */ -.highlight .sd { color: #d14 } /* Literal.String.Doc */ -.highlight .s2 { color: #d14 } /* Literal.String.Double */ -.highlight .se { color: #d14 } /* Literal.String.Escape */ -.highlight .sh { color: #d14 } /* Literal.String.Heredoc */ -.highlight .si { color: #d14 } /* Literal.String.Interpol */ -.highlight .sx { color: #d14 } /* Literal.String.Other */ -.highlight .sr { color: #009926 } /* Literal.String.Regex */ -.highlight .s1 { color: #d14 } /* Literal.String.Single */ -.highlight .ss { color: #990073 } /* Literal.String.Symbol */ -.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */ -.highlight .vc { color: #008080 } /* Name.Variable.Class */ -.highlight .vg { color: #008080 } /* Name.Variable.Global */ -.highlight .vi { color: #008080 } /* Name.Variable.Instance */ -.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/favicon.ico ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/favicon.ico b/content/docs/0.9/page/favicon.ico deleted file mode 100644 index 34a467a..0000000 Binary files a/content/docs/0.9/page/favicon.ico and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/LICENSE.txt ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/LICENSE.txt b/content/docs/0.9/page/img/LICENSE.txt deleted file mode 100644 index 35b8673..0000000 --- a/content/docs/0.9/page/img/LICENSE.txt +++ /dev/null @@ -1,17 +0,0 @@ -All image files in the folder and its subfolders are -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. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/navbar-brand-logo.jpg ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/navbar-brand-logo.jpg b/content/docs/0.9/page/img/navbar-brand-logo.jpg deleted file mode 100644 index 5993ee8..0000000 Binary files a/content/docs/0.9/page/img/navbar-brand-logo.jpg and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/compiler-webclient-new.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/compiler-webclient-new.png b/content/docs/0.9/page/img/quickstart-example/compiler-webclient-new.png deleted file mode 100644 index e60689e..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/compiler-webclient-new.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/jobmanager-running-new.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/jobmanager-running-new.png b/content/docs/0.9/page/img/quickstart-example/jobmanager-running-new.png deleted file mode 100644 index 6255022..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/jobmanager-running-new.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/kmeans003.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/kmeans003.png b/content/docs/0.9/page/img/quickstart-example/kmeans003.png deleted file mode 100644 index 32f8dbb..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/kmeans003.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/kmeans008.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/kmeans008.png b/content/docs/0.9/page/img/quickstart-example/kmeans008.png deleted file mode 100644 index b372fd1..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/kmeans008.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/kmeans015.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/kmeans015.png b/content/docs/0.9/page/img/quickstart-example/kmeans015.png deleted file mode 100644 index 8b6fb51..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/kmeans015.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/result003.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/result003.png b/content/docs/0.9/page/img/quickstart-example/result003.png deleted file mode 100644 index bdcef44..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/result003.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/result008.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/result008.png b/content/docs/0.9/page/img/quickstart-example/result008.png deleted file mode 100644 index 921c73c..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/result008.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/result015.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/result015.png b/content/docs/0.9/page/img/quickstart-example/result015.png deleted file mode 100644 index 9dbc6c4..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/result015.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart-example/run-webclient.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart-example/run-webclient.png b/content/docs/0.9/page/img/quickstart-example/run-webclient.png deleted file mode 100644 index 8b3d535..0000000 Binary files a/content/docs/0.9/page/img/quickstart-example/run-webclient.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/img/quickstart_cluster.png ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/img/quickstart_cluster.png b/content/docs/0.9/page/img/quickstart_cluster.png deleted file mode 100644 index 9e24795..0000000 Binary files a/content/docs/0.9/page/img/quickstart_cluster.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/flink-web/blob/f0ac0cdb/content/docs/0.9/page/js/codetabs.js ---------------------------------------------------------------------- diff --git a/content/docs/0.9/page/js/codetabs.js b/content/docs/0.9/page/js/codetabs.js deleted file mode 100644 index 878aa32..0000000 --- a/content/docs/0.9/page/js/codetabs.js +++ /dev/null @@ -1,121 +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. - */ - -/* Note: This file is originally from the Apache Spark project. */ - -/* Custom JavaScript code in the MarkDown docs */ - -// Enable language-specific code tabs -function codeTabs() { - var counter = 0; - var langImages = { - "scala": "img/scala-sm.png", - "python": "img/python-sm.png", - "java": "img/java-sm.png" - }; - $("div.codetabs").each(function() { - $(this).addClass("tab-content"); - - // Insert the tab bar - var tabBar = $('<ul class="nav nav-tabs" data-tabs="tabs"></ul>'); - $(this).before(tabBar); - - // Add each code sample to the tab bar: - var codeSamples = $(this).children("div"); - codeSamples.each(function() { - $(this).addClass("tab-pane"); - var lang = $(this).data("lang"); - var image = $(this).data("image"); - var notabs = $(this).data("notabs"); - var capitalizedLang = lang.substr(0, 1).toUpperCase() + lang.substr(1); - var id = "tab_" + lang + "_" + counter; - $(this).attr("id", id); - if (image != null && langImages[lang]) { - var buttonLabel = "<img src='" +langImages[lang] + "' alt='" + capitalizedLang + "' />"; - } else if (notabs == null) { - var buttonLabel = "<b>" + capitalizedLang + "</b>"; - } else { - var buttonLabel = "" - } - tabBar.append( - '<li><a class="tab_' + lang + '" href="#' + id + '">' + buttonLabel + '</a></li>' - ); - }); - - codeSamples.first().addClass("active"); - tabBar.children("li").first().addClass("active"); - counter++; - }); - $("ul.nav-tabs a").click(function (e) { - // Toggling a tab should switch all tabs corresponding to the same language - // while retaining the scroll position - e.preventDefault(); - var scrollOffset = $(this).offset().top - $(document).scrollTop(); - $("." + $(this).attr('class')).tab('show'); - $(document).scrollTop($(this).offset().top - scrollOffset); - }); -} - -function makeCollapsable(elt, accordionClass, accordionBodyId, title) { - $(elt).addClass("accordion-inner"); - $(elt).wrap('<div class="accordion ' + accordionClass + '"></div>') - $(elt).wrap('<div class="accordion-group"></div>') - $(elt).wrap('<div id="' + accordionBodyId + '" class="accordion-body collapse"></div>') - $(elt).parent().before( - '<div class="accordion-heading">' + - '<a class="accordion-toggle" data-toggle="collapse" href="#' + accordionBodyId + '">' + - title + - '</a>' + - '</div>' - ); -} - -// Enable "view solution" sections (for exercises) -function viewSolution() { - var counter = 0 - $("div.solution").each(function() { - var id = "solution_" + counter - makeCollapsable(this, "", id, - '<i class="icon-ok-sign" style="text-decoration: none; color: #0088cc">' + - '</i>' + "View Solution"); - counter++; - }); -} - -// A script to fix internal hash links because we have an overlapping top bar. -// Based on https://github.com/twitter/bootstrap/issues/193#issuecomment-2281510 -function maybeScrollToHash() { - console.log("HERE"); - if (window.location.hash && $(window.location.hash).length) { - console.log("HERE2", $(window.location.hash), $(window.location.hash).offset().top); - var newTop = $(window.location.hash).offset().top - 57; - $(window).scrollTop(newTop); - } -} - -$(function() { - codeTabs(); - viewSolution(); - - $(window).bind('hashchange', function() { - maybeScrollToHash(); - }); - - // Scroll now too in case we had opened the page on a hash, but wait a bit because some browsers - // will try to do *their* initial scroll after running the onReady handler. - $(window).load(function() { setTimeout(function() { maybeScrollToHash(); }, 25); }); -});
