This is an automated email from the ASF dual-hosted git repository.

fhueske pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/flink-web.git

commit ac41805001489cdf211456f131cca4c397188ec2
Author: Fabian Hueske <fhue...@apache.org>
AuthorDate: Mon Jun 15 16:19:40 2020 +0200

    Rebuild website
---
 content/blog/feed.xml                              | 135 +++++---
 content/blog/index.html                            |  43 ++-
 content/blog/page10/index.html                     |  36 ++-
 content/blog/page11/index.html                     |  38 ++-
 content/blog/page12/index.html                     |  25 ++
 content/blog/page2/index.html                      |  39 ++-
 content/blog/page3/index.html                      |  38 ++-
 content/blog/page4/index.html                      |  38 ++-
 content/blog/page5/index.html                      |  38 ++-
 content/blog/page6/index.html                      |  40 ++-
 content/blog/page7/index.html                      |  40 ++-
 content/blog/page8/index.html                      |  40 ++-
 content/blog/page9/index.html                      |  38 ++-
 .../2020-06-15-flink-on-zeppelin/create_sink.png   | Bin 0 -> 138803 bytes
 .../2020-06-15-flink-on-zeppelin/create_source.png | Bin 0 -> 147213 bytes
 .../img/blog/2020-06-15-flink-on-zeppelin/etl.png  | Bin 0 -> 55319 bytes
 .../blog/2020-06-15-flink-on-zeppelin/preview.png  | Bin 0 -> 89756 bytes
 content/index.html                                 |  10 +-
 .../news/2020/06/15/flink-on-zeppelin-part1.html   | 351 +++++++++++++++++++++
 content/zh/index.html                              |  10 +-
 20 files changed, 756 insertions(+), 203 deletions(-)

diff --git a/content/blog/feed.xml b/content/blog/feed.xml
index 23b09f0..eabf57c 100644
--- a/content/blog/feed.xml
+++ b/content/blog/feed.xml
@@ -7,6 +7,102 @@
 <atom:link href="https://flink.apache.org/blog/feed.xml"; rel="self" 
type="application/rss+xml" />
 
 <item>
+<title>Flink on Zeppelin Notebooks for Interactive Data Analysis - Part 
1</title>
+<description>&lt;p&gt;The latest release of &lt;a 
href=&quot;https://zeppelin.apache.org/&quot;&gt;Apache Zeppelin&lt;/a&gt; 
comes with a redesigned interpreter for Apache Flink (version Flink 1.10+ is 
only supported moving forward) 
+that allows developers to use Flink directly on Zeppelin notebooks for 
interactive data analysis. I wrote 2 posts about how to use Flink in Zeppelin. 
This is part-1 where I explain how the Flink interpreter in Zeppelin works, 
+and provide a tutorial for running Streaming ETL with Flink on 
Zeppelin.&lt;/p&gt;
+
+&lt;h1 id=&quot;the-flink-interpreter-in-zeppelin-09&quot;&gt;The Flink 
Interpreter in Zeppelin 0.9&lt;/h1&gt;
+
+&lt;p&gt;The Flink interpreter can be accessed and configured from Zeppelin’s 
interpreter settings page. 
+The interpreter has been refactored so that Flink users can now take advantage 
of Zeppelin to write Flink applications in three languages, 
+namely Scala, Python (PyFlink) and SQL (for both batch &amp;amp; streaming 
executions). 
+Zeppelin 0.9 now comes with the Flink interpreter group, consisting of the 
below five interpreters:&lt;/p&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;%flink     - Provides a Scala environment&lt;/li&gt;
+  &lt;li&gt;%flink.pyflink   - Provides a python environment&lt;/li&gt;
+  &lt;li&gt;%flink.ipyflink   - Provides an ipython environment&lt;/li&gt;
+  &lt;li&gt;%flink.ssql     - Provides a stream sql environment&lt;/li&gt;
+  &lt;li&gt;%flink.bsql     - Provides a batch sql environment&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;p&gt;Not only has the interpreter been extended to support writing Flink 
applications in three languages, but it has also extended the available 
execution modes for Flink that now include:&lt;/p&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;Running Flink in Local Mode&lt;/li&gt;
+  &lt;li&gt;Running Flink in Remote Mode&lt;/li&gt;
+  &lt;li&gt;Running Flink in Yarn Mode&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;p&gt;You can find more information about how to get started with Zeppelin 
and all the execution modes for Flink applications in &lt;a 
href=&quot;https://github.com/apache/zeppelin/tree/master/notebook/Flink%20Tutorial&quot;&gt;Zeppelin
 notebooks&lt;/a&gt; in this post.&lt;/p&gt;
+
+&lt;h1 id=&quot;flink-on-zeppelin-for-stream-processing&quot;&gt;Flink on 
Zeppelin for Stream processing&lt;/h1&gt;
+
+&lt;p&gt;Performing stream processing jobs with Apache Flink on Zeppelin 
allows you to run most major streaming cases, 
+such as streaming ETL and real time data analytics, with the use of Flink SQL 
and specific UDFs. 
+Below we showcase how you can execute streaming ETL using Flink on 
Zeppelin:&lt;/p&gt;
+
+&lt;p&gt;You can use Flink SQL to perform streaming ETL by following the steps 
below 
+(for the full tutorial, please refer to the &lt;a 
href=&quot;https://github.com/apache/zeppelin/blob/master/notebook/Flink%20Tutorial/4.%20Streaming%20ETL_2EYD56B9B.zpln&quot;&gt;Flink
 Tutorial/Streaming ETL tutorial&lt;/a&gt; of the Zeppelin 
distribution):&lt;/p&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;Step 1. Create source table to represent the source 
data.&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;center&gt;
+&lt;img 
src=&quot;/img/blog/2020-06-15-flink-on-zeppelin/create_source.png&quot; 
width=&quot;80%&quot; alt=&quot;Create Source Table&quot; /&gt;
+&lt;/center&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;Step 2. Create a sink table to represent the processed 
data.&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;center&gt;
+&lt;img src=&quot;/img/blog/2020-06-15-flink-on-zeppelin/create_sink.png&quot; 
width=&quot;80%&quot; alt=&quot;Create Sink Table&quot; /&gt;
+&lt;/center&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;Step 3. After creating the source and sink table, we can insert 
them to our statement to trigger the stream processing job as the 
following:&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;center&gt;
+&lt;img src=&quot;/img/blog/2020-06-15-flink-on-zeppelin/etl.png&quot; 
width=&quot;80%&quot; alt=&quot;ETL&quot; /&gt;
+&lt;/center&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;Step 4. After initiating the streaming job, you can use another 
SQL statement to query the sink table to verify the results of your job. Here 
you can see the top 10 records which will be refreshed every 3 
seconds.&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;center&gt;
+&lt;img src=&quot;/img/blog/2020-06-15-flink-on-zeppelin/preview.png&quot; 
width=&quot;80%&quot; alt=&quot;Preview&quot; /&gt;
+&lt;/center&gt;
+
+&lt;h1 id=&quot;summary&quot;&gt;Summary&lt;/h1&gt;
+
+&lt;p&gt;In this post, we explained how the redesigned Flink interpreter works 
in Zeppelin 0.9.0 and provided some examples for performing streaming ETL jobs 
with 
+Flink and Zeppelin. In the next post, I will talk about how to do streaming 
data visualization via Flink on Zeppelin.
+Besides that, you can find an additional &lt;a 
href=&quot;https://medium.com/@zjffdu/flink-on-zeppelin-part-2-batch-711731df5ad9&quot;&gt;tutorial
 for batch processing with Flink on Zeppelin&lt;/a&gt; as well as using Flink 
on Zeppelin for 
+more advance operations like resource isolation, job concurrency &amp;amp; 
parallelism, multiple Hadoop &amp;amp; Hive environments and more on our series 
of posts on Medium.
+And here’s a list of &lt;a 
href=&quot;https://www.youtube.com/watch?v=YxPo0Fosjjg&amp;amp;list=PL4oy12nnS7FFtg3KV1iS5vDb0pTz12VcX&quot;&gt;Flink
 on Zeppelin tutorial videos&lt;/a&gt; for your reference.&lt;/p&gt;
+
+&lt;h1 id=&quot;references&quot;&gt;References&lt;/h1&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;&lt;a href=&quot;http://zeppelin.apache.org&quot;&gt;Apache 
Zeppelin official website&lt;/a&gt;&lt;/li&gt;
+  &lt;li&gt;Flink on Zeppelin tutorials - &lt;a 
href=&quot;https://medium.com/@zjffdu/flink-on-zeppelin-part-1-get-started-2591aaa6aa47&quot;&gt;Part
 1&lt;/a&gt;&lt;/li&gt;
+  &lt;li&gt;Flink on Zeppelin tutorials - &lt;a 
href=&quot;https://medium.com/@zjffdu/flink-on-zeppelin-part-2-batch-711731df5ad9&quot;&gt;Part
 2&lt;/a&gt;&lt;/li&gt;
+  &lt;li&gt;Flink on Zeppelin tutorials - &lt;a 
href=&quot;https://medium.com/@zjffdu/flink-on-zeppelin-part-3-streaming-5fca1e16754&quot;&gt;Part
 3&lt;/a&gt;&lt;/li&gt;
+  &lt;li&gt;Flink on Zeppelin tutorials - &lt;a 
href=&quot;https://medium.com/@zjffdu/flink-on-zeppelin-part-4-advanced-usage-998b74908cd9&quot;&gt;Part
 4&lt;/a&gt;&lt;/li&gt;
+  &lt;li&gt;&lt;a 
href=&quot;https://www.youtube.com/watch?v=YxPo0Fosjjg&amp;amp;list=PL4oy12nnS7FFtg3KV1iS5vDb0pTz12VcX&quot;&gt;Flink
 on Zeppelin tutorial videos&lt;/a&gt;&lt;/li&gt;
+&lt;/ul&gt;
+</description>
+<pubDate>Mon, 15 Jun 2020 10:00:00 +0200</pubDate>
+<link>https://flink.apache.org/news/2020/06/15/flink-on-zeppelin-part1.html</link>
+<guid isPermaLink="true">/news/2020/06/15/flink-on-zeppelin-part1.html</guid>
+</item>
+
+<item>
 <title>Flink Community Update - June&#39;20</title>
 <description>&lt;p&gt;And suddenly it’s June. The previous month has been calm 
on the surface, but quite hectic underneath — the final testing phase for Flink 
1.11 is moving at full speed, Stateful Functions 2.1 is out in the wild and 
Flink has made it into Google Season of Docs 2020.&lt;/p&gt;
 
@@ -16915,44 +17011,5 @@ tools, graph database systems and sampling 
techniques.&lt;/p&gt;
 <guid 
isPermaLink="true">/news/2015/06/24/announcing-apache-flink-0.9.0-release.html</guid>
 </item>
 
-<item>
-<title>April 2015 in the Flink community</title>
-<description>&lt;p&gt;April was an packed month for Apache Flink.&lt;/p&gt;
-
-&lt;h3 id=&quot;flink-runner-for-google-cloud-dataflow&quot;&gt;Flink runner 
for Google Cloud Dataflow&lt;/h3&gt;
-
-&lt;p&gt;A Flink runner for Google Cloud Dataflow was announced. See the blog
-posts by &lt;a 
href=&quot;http://data-artisans.com/announcing-google-cloud-dataflow-on-flink-and-easy-flink-deployment-on-google-cloud/&quot;&gt;data
 Artisans&lt;/a&gt; and
-the &lt;a 
href=&quot;http://googlecloudplatform.blogspot.de/2015/03/announcing-Google-Cloud-Dataflow-runner-for-Apache-Flink.html&quot;&gt;Google
 Cloud Platform Blog&lt;/a&gt;.
-Google Cloud Dataflow programs can be written using and open-source
-SDK and run in multiple backends, either as a managed service inside
-Google’s infrastructure, or leveraging open source runners,
-including Apache Flink.&lt;/p&gt;
-
-&lt;h2 id=&quot;flink-090-milestone1-release&quot;&gt;Flink 0.9.0-milestone1 
release&lt;/h2&gt;
-
-&lt;p&gt;The highlight of April was of course the availability of &lt;a 
href=&quot;/news/2015/04/13/release-0.9.0-milestone1.html&quot;&gt;Flink 
0.9-milestone1&lt;/a&gt;. This was a release packed with new features, 
including, a Python DataSet API, the new SQL-like Table API, FlinkML, a machine 
learning library on Flink, Gelly, FLink’s Graph API, as well as a mode to run 
Flink on YARN leveraging Tez. In case you missed it, check out the &lt;a 
href=&quot;/news/2015/04/13/release-0.9.0-mil [...]
-
-&lt;h2 id=&quot;conferences-and-meetups&quot;&gt;Conferences and 
meetups&lt;/h2&gt;
-
-&lt;p&gt;April kicked off the conference season. Apache Flink was presented at 
ApacheCon in Texas (&lt;a 
href=&quot;http://www.slideshare.net/fhueske/apache-flink&quot;&gt;slides&lt;/a&gt;),
 the Hadoop Summit in Brussels featured two talks on Flink (see slides &lt;a 
href=&quot;http://www.slideshare.net/AljoschaKrettek/data-analysis-with-apache-flink-hadoop-summit-2015&quot;&gt;here&lt;/a&gt;
 and &lt;a 
href=&quot;http://www.slideshare.net/GyulaFra/flink-streaming-hadoopsummit&quot;&gt;her
 [...]
-
-&lt;h2 id=&quot;google-summer-of-code&quot;&gt;Google Summer of Code&lt;/h2&gt;
-
-&lt;p&gt;Three students will work on Flink during Google’s &lt;a 
href=&quot;https://www.google-melange.com/gsoc/homepage/google/gsoc2015&quot;&gt;Summer
 of Code program&lt;/a&gt; on distributed pattern matching, exact and 
approximate statistics for data streams and windows, as well as asynchronous 
iterations and updates.&lt;/p&gt;
-
-&lt;h2 id=&quot;flink-on-the-web&quot;&gt;Flink on the web&lt;/h2&gt;
-
-&lt;p&gt;Fabian Hueske gave an &lt;a 
href=&quot;http://www.infoq.com/news/2015/04/hueske-apache-flink?utm_campaign=infoq_content&amp;amp;utm_source=infoq&amp;amp;utm_medium=feed&amp;amp;utm_term=global&quot;&gt;interview
 at InfoQ&lt;/a&gt; on Apache Flink.&lt;/p&gt;
-
-&lt;h2 id=&quot;upcoming-events&quot;&gt;Upcoming events&lt;/h2&gt;
-
-&lt;p&gt;Stay tuned for a wealth of upcoming events! Two Flink talsk will be 
presented at &lt;a 
href=&quot;http://berlinbuzzwords.de/15/sessions&quot;&gt;Berlin 
Buzzwords&lt;/a&gt;, Flink will be presented at the &lt;a 
href=&quot;http://2015.hadoopsummit.org/san-jose/&quot;&gt;Hadoop Summit in San 
Jose&lt;/a&gt;. A &lt;a 
href=&quot;http://www.meetup.com/Apache-Flink-Meetup/events/220557545/&quot;&gt;training
 workshop on Apache Flink&lt;/a&gt; is being organized in Berlin. Finally, 
&lt;a  [...]
-</description>
-<pubDate>Thu, 14 May 2015 12:00:00 +0200</pubDate>
-<link>https://flink.apache.org/news/2015/05/14/Community-update-April.html</link>
-<guid isPermaLink="true">/news/2015/05/14/Community-update-April.html</guid>
-</item>
-
 </channel>
 </rss>
diff --git a/content/blog/index.html b/content/blog/index.html
index eb6fba3..d89dc1c 100644
--- a/content/blog/index.html
+++ b/content/blog/index.html
@@ -196,6 +196,23 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on Zeppelin 
Notebooks for Interactive Data Analysis - Part 1</a></h2>
+
+      <p>15 Jun 2020
+       Jeff Zhang (<a href="https://twitter.com/zjffdu";>@zjffdu</a>)</p>
+
+      <p><p>The latest release of <a 
href="https://zeppelin.apache.org/";>Apache Zeppelin</a> comes with a redesigned 
interpreter for Apache Flink (version Flink 1.10+ is only supported moving 
forward) 
+that allows developers to use Flink directly on Zeppelin notebooks for 
interactive data analysis. I wrote 2 posts about how to use Flink in Zeppelin. 
This is part-1 where I explain how the Flink interpreter in Zeppelin works, 
+and provide a tutorial for running Streaming ETL with Flink on Zeppelin.</p>
+
+</p>
+
+      <p><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Continue 
reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2020/06/11/community-update.html">Flink Community Update - 
June'20</a></h2>
 
       <p>11 Jun 2020
@@ -318,22 +335,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2020/04/07/release-statefun-2.0.0.html">Stateful Functions 2.0 - An 
Event-driven Database on Apache Flink</a></h2>
-
-      <p>07 Apr 2020
-       Stephan Ewen (<a 
href="https://twitter.com/stephanewen";>@stephanewen</a>)</p>
-
-      <p><p>Today, we are announcing the release of Stateful Functions 
(StateFun) 2.0 — the first release of Stateful Functions as part of the Apache 
Flink project.
-This release marks a big milestone: Stateful Functions 2.0 is not only an API 
update, but the <strong>first version of an event-driven database</strong> that 
is built on Apache Flink.</p>
-
-</p>
-
-      <p><a href="/news/2020/04/07/release-statefun-2.0.0.html">Continue 
reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -366,6 +367,16 @@ This release marks a big milestone: Stateful Functions 2.0 
is not only an API up
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page10/index.html b/content/blog/page10/index.html
index bdc80d3..77fe9a8 100644
--- a/content/blog/page10/index.html
+++ b/content/blog/page10/index.html
@@ -196,6 +196,19 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2015/12/18/a-year-in-review.html">Flink 2015: A year in review, and 
a lookout to 2016</a></h2>
+
+      <p>18 Dec 2015 by Robert Metzger (<a 
href="https://twitter.com/";>@rmetzger_</a>)
+      </p>
+
+      <p><p>With 2015 ending, we thought that this would be good time to 
reflect on the amazing work done by the Flink community over this past year, 
and how much this community has grown.</p></p>
+
+      <p><a href="/news/2015/12/18/a-year-in-review.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2015/12/11/storm-compatibility.html">Storm Compatibility in Apache 
Flink: How to run existing Storm topologies on Flink</a></h2>
 
       <p>11 Dec 2015 by Matthias J. Sax (<a 
href="https://twitter.com/";>@MatthiasJSax</a>)
@@ -333,19 +346,6 @@ vertex-centric or gather-sum-apply to Flink dataflows.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2015/05/14/Community-update-April.html">April 2015 in the Flink 
community</a></h2>
-
-      <p>14 May 2015 by Kostas Tzoumas (<a 
href="https://twitter.com/";>@kostas_tzoumas</a>)
-      </p>
-
-      <p><p>The monthly update from the Flink community. Including the 
availability of a new preview release, lots of meetups and conference talks and 
a great interview about Flink.</p></p>
-
-      <p><a href="/news/2015/05/14/Community-update-April.html">Continue 
reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -378,6 +378,16 @@ vertex-centric or gather-sum-apply to Flink dataflows.</p>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page11/index.html b/content/blog/page11/index.html
index a78b694..2ee6290 100644
--- a/content/blog/page11/index.html
+++ b/content/blog/page11/index.html
@@ -196,6 +196,19 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2015/05/14/Community-update-April.html">April 2015 in the Flink 
community</a></h2>
+
+      <p>14 May 2015 by Kostas Tzoumas (<a 
href="https://twitter.com/";>@kostas_tzoumas</a>)
+      </p>
+
+      <p><p>The monthly update from the Flink community. Including the 
availability of a new preview release, lots of meetups and conference talks and 
a great interview about Flink.</p></p>
+
+      <p><a href="/news/2015/05/14/Community-update-April.html">Continue 
reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2015/05/11/Juggling-with-Bits-and-Bytes.html">Juggling with Bits 
and Bytes</a></h2>
 
       <p>11 May 2015 by Fabian Hüske (<a 
href="https://twitter.com/";>@fhueske</a>)
@@ -339,21 +352,6 @@ and offers a new API including definition of flexible 
windows.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2014/11/18/hadoop-compatibility.html">Hadoop Compatibility in 
Flink</a></h2>
-
-      <p>18 Nov 2014 by Fabian Hüske (<a 
href="https://twitter.com/";>@fhueske</a>)
-      </p>
-
-      <p><p><a href="http://hadoop.apache.org";>Apache Hadoop</a> is an 
industry standard for scalable analytical data processing. Many data analysis 
applications have been implemented as Hadoop MapReduce jobs and run in clusters 
around the world. Apache Flink can be an alternative to MapReduce and improves 
it in many dimensions. Among other features, Flink provides much better 
performance and offers APIs in Java and Scala, which are very easy to use. 
Similar to Hadoop, Flink’s APIs provi [...]
-
-</p>
-
-      <p><a href="/news/2014/11/18/hadoop-compatibility.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -386,6 +384,16 @@ and offers a new API including definition of flexible 
windows.</p>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page12/index.html b/content/blog/page12/index.html
index da58d39..e42e317 100644
--- a/content/blog/page12/index.html
+++ b/content/blog/page12/index.html
@@ -196,6 +196,21 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2014/11/18/hadoop-compatibility.html">Hadoop Compatibility in 
Flink</a></h2>
+
+      <p>18 Nov 2014 by Fabian Hüske (<a 
href="https://twitter.com/";>@fhueske</a>)
+      </p>
+
+      <p><p><a href="http://hadoop.apache.org";>Apache Hadoop</a> is an 
industry standard for scalable analytical data processing. Many data analysis 
applications have been implemented as Hadoop MapReduce jobs and run in clusters 
around the world. Apache Flink can be an alternative to MapReduce and improves 
it in many dimensions. Among other features, Flink provides much better 
performance and offers APIs in Java and Scala, which are very easy to use. 
Similar to Hadoop, Flink’s APIs provi [...]
+
+</p>
+
+      <p><a href="/news/2014/11/18/hadoop-compatibility.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2014/11/04/release-0.7.0.html">Apache Flink 0.7.0 available</a></h2>
 
       <p>04 Nov 2014
@@ -290,6 +305,16 @@ academic and open source project that Flink originates 
from.</p>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page2/index.html b/content/blog/page2/index.html
index 9460f41..21766ce 100644
--- a/content/blog/page2/index.html
+++ b/content/blog/page2/index.html
@@ -196,6 +196,22 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2020/04/07/release-statefun-2.0.0.html">Stateful Functions 2.0 - An 
Event-driven Database on Apache Flink</a></h2>
+
+      <p>07 Apr 2020
+       Stephan Ewen (<a 
href="https://twitter.com/stephanewen";>@stephanewen</a>)</p>
+
+      <p><p>Today, we are announcing the release of Stateful Functions 
(StateFun) 2.0 — the first release of Stateful Functions as part of the Apache 
Flink project.
+This release marks a big milestone: Stateful Functions 2.0 is not only an API 
update, but the <strong>first version of an event-driven database</strong> that 
is built on Apache Flink.</p>
+
+</p>
+
+      <p><a href="/news/2020/04/07/release-statefun-2.0.0.html">Continue 
reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2020/04/01/community-update.html">Flink Community Update - 
April'20</a></h2>
 
       <p>01 Apr 2020
@@ -318,19 +334,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2020/01/15/demo-fraud-detection.html">Advanced Flink Application 
Patterns Vol.1: Case Study of a Fraud Detection System</a></h2>
-
-      <p>15 Jan 2020
-       Alexander Fedulov (<a 
href="https://twitter.com/alex_fedulov";>@alex_fedulov</a>)</p>
-
-      <p>In this series of blog posts you will learn about three powerful 
Flink patterns for building streaming applications.</p>
-
-      <p><a href="/news/2020/01/15/demo-fraud-detection.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -363,6 +366,16 @@
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page3/index.html b/content/blog/page3/index.html
index fb8404e..a1808b9 100644
--- a/content/blog/page3/index.html
+++ b/content/blog/page3/index.html
@@ -196,6 +196,19 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2020/01/15/demo-fraud-detection.html">Advanced Flink Application 
Patterns Vol.1: Case Study of a Fraud Detection System</a></h2>
+
+      <p>15 Jan 2020
+       Alexander Fedulov (<a 
href="https://twitter.com/alex_fedulov";>@alex_fedulov</a>)</p>
+
+      <p>In this series of blog posts you will learn about three powerful 
Flink patterns for building streaming applications.</p>
+
+      <p><a href="/news/2020/01/15/demo-fraud-detection.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2019/12/11/release-1.8.3.html">Apache Flink 1.8.3 Released</a></h2>
 
       <p>11 Dec 2019
@@ -321,21 +334,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2019/07/02/release-1.8.1.html">Apache Flink 1.8.1 Released</a></h2>
-
-      <p>02 Jul 2019
-       Jincheng Sun (<a 
href="https://twitter.com/sunjincheng121";>@sunjincheng121</a>)</p>
-
-      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.8 series.</p>
-
-</p>
-
-      <p><a href="/news/2019/07/02/release-1.8.1.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -368,6 +366,16 @@
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page4/index.html b/content/blog/page4/index.html
index 0c64f0c..2036202 100644
--- a/content/blog/page4/index.html
+++ b/content/blog/page4/index.html
@@ -196,6 +196,21 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2019/07/02/release-1.8.1.html">Apache Flink 1.8.1 Released</a></h2>
+
+      <p>02 Jul 2019
+       Jincheng Sun (<a 
href="https://twitter.com/sunjincheng121";>@sunjincheng121</a>)</p>
+
+      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.8 series.</p>
+
+</p>
+
+      <p><a href="/news/2019/07/02/release-1.8.1.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a href="/2019/06/26/broadcast-state.html">A 
Practical Guide to Broadcast State in Apache Flink</a></h2>
 
       <p>26 Jun 2019
@@ -320,19 +335,6 @@ for more details.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2019/02/25/monitoring-best-practices.html">Monitoring Apache Flink 
Applications 101</a></h2>
-
-      <p>25 Feb 2019
-       Konstantin Knauf (<a 
href="https://twitter.com/snntrable";>@snntrable</a>)</p>
-
-      <p>The monitoring of business-critical applications is a crucial aspect 
of a production deployment. It ensures that any degradation or downtime is 
immediately identified and can be resolved as quickly as possible. In this 
post, we discuss the most important metrics that indicate healthy Flink 
applications.</p>
-
-      <p><a href="/news/2019/02/25/monitoring-best-practices.html">Continue 
reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -365,6 +367,16 @@ for more details.</p>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page5/index.html b/content/blog/page5/index.html
index 496ddc2..a0ad863 100644
--- a/content/blog/page5/index.html
+++ b/content/blog/page5/index.html
@@ -196,6 +196,19 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2019/02/25/monitoring-best-practices.html">Monitoring Apache Flink 
Applications 101</a></h2>
+
+      <p>25 Feb 2019
+       Konstantin Knauf (<a 
href="https://twitter.com/snntrable";>@snntrable</a>)</p>
+
+      <p>The monitoring of business-critical applications is a crucial aspect 
of a production deployment. It ensures that any degradation or downtime is 
immediately identified and can be resolved as quickly as possible. In this 
post, we discuss the most important metrics that indicate healthy Flink 
applications.</p>
+
+      <p><a href="/news/2019/02/25/monitoring-best-practices.html">Continue 
reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2019/02/25/release-1.6.4.html">Apache Flink 1.6.4 Released</a></h2>
 
       <p>25 Feb 2019
@@ -330,21 +343,6 @@ Please check the <a 
href="https://issues.apache.org/jira/secure/ReleaseNote.jspa
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2018/09/20/release-1.6.1.html">Apache Flink 1.6.1 Released</a></h2>
-
-      <p>20 Sep 2018
-      </p>
-
-      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.6 series.</p>
-
-</p>
-
-      <p><a href="/news/2018/09/20/release-1.6.1.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -377,6 +375,16 @@ Please check the <a 
href="https://issues.apache.org/jira/secure/ReleaseNote.jspa
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page6/index.html b/content/blog/page6/index.html
index bbea907..316b494 100644
--- a/content/blog/page6/index.html
+++ b/content/blog/page6/index.html
@@ -196,6 +196,21 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2018/09/20/release-1.6.1.html">Apache Flink 1.6.1 Released</a></h2>
+
+      <p>20 Sep 2018
+      </p>
+
+      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.6 series.</p>
+
+</p>
+
+      <p><a href="/news/2018/09/20/release-1.6.1.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2018/09/20/release-1.5.4.html">Apache Flink 1.5.4 Released</a></h2>
 
       <p>20 Sep 2018
@@ -328,21 +343,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2018/02/15/release-1.4.1.html">Apache Flink 1.4.1 Released</a></h2>
-
-      <p>15 Feb 2018
-      </p>
-
-      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.4 series.</p>
-
-</p>
-
-      <p><a href="/news/2018/02/15/release-1.4.1.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -375,6 +375,16 @@
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page7/index.html b/content/blog/page7/index.html
index 632f4dc..7896685 100644
--- a/content/blog/page7/index.html
+++ b/content/blog/page7/index.html
@@ -196,6 +196,21 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2018/02/15/release-1.4.1.html">Apache Flink 1.4.1 Released</a></h2>
+
+      <p>15 Feb 2018
+      </p>
+
+      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.4 series.</p>
+
+</p>
+
+      <p><a href="/news/2018/02/15/release-1.4.1.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/features/2018/01/30/incremental-checkpointing.html">Managing Large State 
in Apache Flink: An Intro to Incremental Checkpointing</a></h2>
 
       <p>30 Jan 2018
@@ -329,21 +344,6 @@ what’s coming in Flink 1.4.0 as well as a preview of what 
the Flink community
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2017/04/26/release-1.2.1.html">Apache Flink 1.2.1 Released</a></h2>
-
-      <p>26 Apr 2017
-      </p>
-
-      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.2 series.</p>
-
-</p>
-
-      <p><a href="/news/2017/04/26/release-1.2.1.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -376,6 +376,16 @@ what’s coming in Flink 1.4.0 as well as a preview of what 
the Flink community
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page8/index.html b/content/blog/page8/index.html
index 4cbf258..226bafe 100644
--- a/content/blog/page8/index.html
+++ b/content/blog/page8/index.html
@@ -196,6 +196,21 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2017/04/26/release-1.2.1.html">Apache Flink 1.2.1 Released</a></h2>
+
+      <p>26 Apr 2017
+      </p>
+
+      <p><p>The Apache Flink community released the first bugfix version of 
the Apache Flink 1.2 series.</p>
+
+</p>
+
+      <p><a href="/news/2017/04/26/release-1.2.1.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2017/04/04/dynamic-tables.html">Continuous Queries on Dynamic 
Tables</a></h2>
 
       <p>04 Apr 2017 by Fabian Hueske, Shaoxuan Wang, and Xiaowei Jiang
@@ -323,21 +338,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2016/08/11/release-1.1.1.html">Flink 1.1.1 Released</a></h2>
-
-      <p>11 Aug 2016
-      </p>
-
-      <p><p>Today, the Flink community released Flink version 1.1.1.</p>
-
-</p>
-
-      <p><a href="/news/2016/08/11/release-1.1.1.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -370,6 +370,16 @@
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/blog/page9/index.html b/content/blog/page9/index.html
index 3bd741d..6f99fcc 100644
--- a/content/blog/page9/index.html
+++ b/content/blog/page9/index.html
@@ -196,6 +196,21 @@
     <!-- Blog posts -->
     
     <article>
+      <h2 class="blog-title"><a 
href="/news/2016/08/11/release-1.1.1.html">Flink 1.1.1 Released</a></h2>
+
+      <p>11 Aug 2016
+      </p>
+
+      <p><p>Today, the Flink community released Flink version 1.1.1.</p>
+
+</p>
+
+      <p><a href="/news/2016/08/11/release-1.1.1.html">Continue reading 
&raquo;</a></p>
+    </article>
+
+    <hr>
+    
+    <article>
       <h2 class="blog-title"><a 
href="/news/2016/08/08/release-1.1.0.html">Announcing Apache Flink 
1.1.0</a></h2>
 
       <p>08 Aug 2016
@@ -327,19 +342,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a 
href="/news/2015/12/18/a-year-in-review.html">Flink 2015: A year in review, and 
a lookout to 2016</a></h2>
-
-      <p>18 Dec 2015 by Robert Metzger (<a 
href="https://twitter.com/";>@rmetzger_</a>)
-      </p>
-
-      <p><p>With 2015 ending, we thought that this would be good time to 
reflect on the amazing work done by the Flink community over this past year, 
and how much this community has grown.</p></p>
-
-      <p><a href="/news/2015/12/18/a-year-in-review.html">Continue reading 
&raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -372,6 +374,16 @@
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></li>
+
+      
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></li>
 
       
diff --git a/content/img/blog/2020-06-15-flink-on-zeppelin/create_sink.png 
b/content/img/blog/2020-06-15-flink-on-zeppelin/create_sink.png
new file mode 100644
index 0000000..cb9bacc
Binary files /dev/null and 
b/content/img/blog/2020-06-15-flink-on-zeppelin/create_sink.png differ
diff --git a/content/img/blog/2020-06-15-flink-on-zeppelin/create_source.png 
b/content/img/blog/2020-06-15-flink-on-zeppelin/create_source.png
new file mode 100644
index 0000000..8024612
Binary files /dev/null and 
b/content/img/blog/2020-06-15-flink-on-zeppelin/create_source.png differ
diff --git a/content/img/blog/2020-06-15-flink-on-zeppelin/etl.png 
b/content/img/blog/2020-06-15-flink-on-zeppelin/etl.png
new file mode 100644
index 0000000..c4dc2cc
Binary files /dev/null and 
b/content/img/blog/2020-06-15-flink-on-zeppelin/etl.png differ
diff --git a/content/img/blog/2020-06-15-flink-on-zeppelin/preview.png 
b/content/img/blog/2020-06-15-flink-on-zeppelin/preview.png
new file mode 100644
index 0000000..7007d86
Binary files /dev/null and 
b/content/img/blog/2020-06-15-flink-on-zeppelin/preview.png differ
diff --git a/content/index.html b/content/index.html
index b4f74a2..a686f3c 100644
--- a/content/index.html
+++ b/content/index.html
@@ -568,6 +568,13 @@
 
   <dl>
       
+        <dt> <a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></dt>
+        <dd><p>The latest release of <a 
href="https://zeppelin.apache.org/";>Apache Zeppelin</a> comes with a redesigned 
interpreter for Apache Flink (version Flink 1.10+ is only supported moving 
forward) 
+that allows developers to use Flink directly on Zeppelin notebooks for 
interactive data analysis. I wrote 2 posts about how to use Flink in Zeppelin. 
This is part-1 where I explain how the Flink interpreter in Zeppelin works, 
+and provide a tutorial for running Streaming ETL with Flink on Zeppelin.</p>
+
+</dd>
+      
         <dt> <a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></dt>
         <dd>And suddenly it’s June. The previous month has been calm on the 
surface, but quite hectic underneath — the final testing phase for Flink 1.11 
is moving at full speed, Stateful Functions 2.1 is out in the wild and Flink 
has made it into Google Season of Docs 2020.</dd>
       
@@ -583,9 +590,6 @@
       
         <dt> <a href="/news/2020/05/07/community-update.html">Flink Community 
Update - May'20</a></dt>
         <dd>Can you smell it? It’s release month! This time around, we’re 
warming up for Flink 1.11 and peeping back to the past month in the Flink 
community — with the release of Stateful Functions 2.0, a new self-paced Flink 
training and some efforts to improve the Flink documentation experience.</dd>
-      
-        <dt> <a href="/news/2020/05/04/season-of-docs.html">Applying to Google 
Season of Docs 2020</a></dt>
-        <dd>The Flink community is thrilled to share that the project is 
applying again to Google Season of Docs (GSoD) this year! If you’re unfamiliar 
with the program, GSoD is a great initiative organized by Google Open Source to 
pair technical writers with mentors to work on documentation for open source 
projects. Does working shoulder to shoulder with the Flink community on 
documentation sound exciting? We’d love to hear from you!</dd>
     
   </dl>
 
diff --git a/content/news/2020/06/15/flink-on-zeppelin-part1.html 
b/content/news/2020/06/15/flink-on-zeppelin-part1.html
new file mode 100644
index 0000000..2d08eea
--- /dev/null
+++ b/content/news/2020/06/15/flink-on-zeppelin-part1.html
@@ -0,0 +1,351 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <!-- The above 3 meta tags *must* come first in the head; any other head 
content must come *after* these tags -->
+    <title>Apache Flink: Flink on Zeppelin Notebooks for Interactive Data 
Analysis - Part 1</title>
+    <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
+    <link rel="icon" href="/favicon.ico" type="image/x-icon">
+
+    <!-- Bootstrap -->
+    <link rel="stylesheet" 
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css";>
+    <link rel="stylesheet" href="/css/flink.css">
+    <link rel="stylesheet" href="/css/syntax.css">
+
+    <!-- Blog RSS feed -->
+    <link href="/blog/feed.xml" rel="alternate" type="application/rss+xml" 
title="Apache Flink Blog: RSS feed" />
+
+    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
+    <!-- We need to load Jquery in the header for custom google analytics 
event tracking-->
+    <script src="/js/jquery.min.js"></script>
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media 
queries -->
+    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
+    <!--[if lt IE 9]>
+      <script 
src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js";></script>
+      <script 
src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js";></script>
+    <![endif]-->
+  </head>
+  <body>  
+    
+
+    <!-- Main content. -->
+    <div class="container">
+    <div class="row">
+
+      
+     <div id="sidebar" class="col-sm-3">
+        
+
+<!-- Top navbar. -->
+    <nav class="navbar navbar-default">
+        <!-- The logo. -->
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle collapsed" 
data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <div class="navbar-logo">
+            <a href="/">
+              <img alt="Apache Flink" src="/img/flink-header-logo.svg" 
width="147px" height="73px">
+            </a>
+          </div>
+        </div><!-- /.navbar-header -->
+
+        <!-- The navigation links. -->
+        <div class="collapse navbar-collapse" 
id="bs-example-navbar-collapse-1">
+          <ul class="nav navbar-nav navbar-main">
+
+            <!-- First menu section explains visitors what Flink is -->
+
+            <!-- What is Stream Processing? -->
+            <!--
+            <li><a href="/streamprocessing1.html">What is Stream 
Processing?</a></li>
+            -->
+
+            <!-- What is Flink? -->
+            <li><a href="/flink-architecture.html">What is Apache 
Flink?</a></li>
+
+            
+            <ul class="nav navbar-nav navbar-subnav">
+              <li >
+                  <a href="/flink-architecture.html">Architecture</a>
+              </li>
+              <li >
+                  <a href="/flink-applications.html">Applications</a>
+              </li>
+              <li >
+                  <a href="/flink-operations.html">Operations</a>
+              </li>
+            </ul>
+            
+
+            <!-- What is Stateful Functions? -->
+
+            <li><a href="/stateful-functions.html">What is Stateful 
Functions?</a></li>
+
+            <!-- Use cases -->
+            <li><a href="/usecases.html">Use Cases</a></li>
+
+            <!-- Powered by -->
+            <li><a href="/poweredby.html">Powered By</a></li>
+
+
+            &nbsp;
+            <!-- Second menu section aims to support Flink users -->
+
+            <!-- Downloads -->
+            <li><a href="/downloads.html">Downloads</a></li>
+
+            <!-- Getting Started -->
+            <li class="dropdown">
+              <a class="dropdown-toggle" data-toggle="dropdown" 
href="#">Getting Started<span class="caret"></span></a>
+              <ul class="dropdown-menu">
+                <li><a 
href="https://ci.apache.org/projects/flink/flink-docs-release-1.10/getting-started/index.html";
 target="_blank">With Flink <small><span class="glyphicon 
glyphicon-new-window"></span></small></a></li>
+                <li><a 
href="https://ci.apache.org/projects/flink/flink-statefun-docs-release-2.1/getting-started/project-setup.html";
 target="_blank">With Flink Stateful Functions <small><span class="glyphicon 
glyphicon-new-window"></span></small></a></li>
+                <li><a href="/training.html">Training Course</a></li>
+              </ul>
+            </li>
+
+            <!-- Documentation -->
+            <li class="dropdown">
+              <a class="dropdown-toggle" data-toggle="dropdown" 
href="#">Documentation<span class="caret"></span></a>
+              <ul class="dropdown-menu">
+                <li><a 
href="https://ci.apache.org/projects/flink/flink-docs-release-1.10"; 
target="_blank">Flink 1.10 (Latest stable release) <small><span 
class="glyphicon glyphicon-new-window"></span></small></a></li>
+                <li><a 
href="https://ci.apache.org/projects/flink/flink-docs-master"; 
target="_blank">Flink Master (Latest Snapshot) <small><span class="glyphicon 
glyphicon-new-window"></span></small></a></li>
+                <li><a 
href="https://ci.apache.org/projects/flink/flink-statefun-docs-release-2.1"; 
target="_blank">Flink Stateful Functions 2.1 (Latest stable release) 
<small><span class="glyphicon glyphicon-new-window"></span></small></a></li>
+                <li><a 
href="https://ci.apache.org/projects/flink/flink-statefun-docs-master"; 
target="_blank">Flink Stateful Functions Master (Latest Snapshot) <small><span 
class="glyphicon glyphicon-new-window"></span></small></a></li>
+              </ul>
+            </li>
+
+            <!-- getting help -->
+            <li><a href="/gettinghelp.html">Getting Help</a></li>
+
+            <!-- Blog -->
+            <li class="active"><a href="/blog/"><b>Flink Blog</b></a></li>
+
+
+            <!-- Flink-packages -->
+            <li>
+              <a href="https://flink-packages.org"; 
target="_blank">flink-packages.org <small><span class="glyphicon 
glyphicon-new-window"></span></small></a>
+            </li>
+            &nbsp;
+
+            <!-- Third menu section aim to support community and contributors 
-->
+
+            <!-- Community -->
+            <li><a href="/community.html">Community &amp; Project Info</a></li>
+
+            <!-- Roadmap -->
+            <li><a href="/roadmap.html">Roadmap</a></li>
+
+            <!-- Contribute -->
+            <li><a href="/contributing/how-to-contribute.html">How to 
Contribute</a></li>
+            
+
+            <!-- GitHub -->
+            <li>
+              <a href="https://github.com/apache/flink"; target="_blank">Flink 
on GitHub <small><span class="glyphicon 
glyphicon-new-window"></span></small></a>
+            </li>
+
+            &nbsp;
+
+            <!-- Language Switcher -->
+            <li>
+              
+                
+                  <!-- link to the Chinese home page when current is blog page 
-->
+                  <a href="/zh">中文版</a>
+                
+              
+            </li>
+
+          </ul>
+
+          <ul class="nav navbar-nav navbar-bottom">
+          <hr />
+
+            <!-- Twitter -->
+            <li><a href="https://twitter.com/apacheflink"; 
target="_blank">@ApacheFlink <small><span class="glyphicon 
glyphicon-new-window"></span></small></a></li>
+
+            <!-- Visualizer -->
+            <li class=" hidden-md hidden-sm"><a href="/visualizer/" 
target="_blank">Plan Visualizer <small><span class="glyphicon 
glyphicon-new-window"></span></small></a></li>
+
+          <hr />
+
+            <li><a href="https://apache.org"; target="_blank">Apache Software 
Foundation <small><span class="glyphicon 
glyphicon-new-window"></span></small></a></li>
+
+            <li>
+              <style>
+                .smalllinks:link {
+                  display: inline-block !important; background: none; 
padding-top: 0px; padding-bottom: 0px; padding-right: 0px; min-width: 75px;
+                }
+              </style>
+
+              <a class="smalllinks" href="https://www.apache.org/licenses/"; 
target="_blank">License</a> <small><span class="glyphicon 
glyphicon-new-window"></span></small>
+
+              <a class="smalllinks" href="https://www.apache.org/security/"; 
target="_blank">Security</a> <small><span class="glyphicon 
glyphicon-new-window"></span></small>
+
+              <a class="smalllinks" 
href="https://www.apache.org/foundation/sponsorship.html"; 
target="_blank">Donate</a> <small><span class="glyphicon 
glyphicon-new-window"></span></small>
+
+              <a class="smalllinks" 
href="https://www.apache.org/foundation/thanks.html"; target="_blank">Thanks</a> 
<small><span class="glyphicon glyphicon-new-window"></span></small>
+            </li>
+
+          </ul>
+        </div><!-- /.navbar-collapse -->
+    </nav>
+
+      </div>
+      <div class="col-sm-9">
+      <div class="row-fluid">
+  <div class="col-sm-12">
+    <div class="row">
+      <h1>Flink on Zeppelin Notebooks for Interactive Data Analysis - Part 
1</h1>
+      <p><i></i></p>
+
+      <article>
+        <p>15 Jun 2020 Jeff Zhang (<a 
href="https://twitter.com/zjffdu";>@zjffdu</a>)</p>
+
+<p>The latest release of <a href="https://zeppelin.apache.org/";>Apache 
Zeppelin</a> comes with a redesigned interpreter for Apache Flink (version 
Flink 1.10+ is only supported moving forward) 
+that allows developers to use Flink directly on Zeppelin notebooks for 
interactive data analysis. I wrote 2 posts about how to use Flink in Zeppelin. 
This is part-1 where I explain how the Flink interpreter in Zeppelin works, 
+and provide a tutorial for running Streaming ETL with Flink on Zeppelin.</p>
+
+<h1 id="the-flink-interpreter-in-zeppelin-09">The Flink Interpreter in 
Zeppelin 0.9</h1>
+
+<p>The Flink interpreter can be accessed and configured from Zeppelin’s 
interpreter settings page. 
+The interpreter has been refactored so that Flink users can now take advantage 
of Zeppelin to write Flink applications in three languages, 
+namely Scala, Python (PyFlink) and SQL (for both batch &amp; streaming 
executions). 
+Zeppelin 0.9 now comes with the Flink interpreter group, consisting of the 
below five interpreters:</p>
+
+<ul>
+  <li>%flink     - Provides a Scala environment</li>
+  <li>%flink.pyflink   - Provides a python environment</li>
+  <li>%flink.ipyflink   - Provides an ipython environment</li>
+  <li>%flink.ssql     - Provides a stream sql environment</li>
+  <li>%flink.bsql     - Provides a batch sql environment</li>
+</ul>
+
+<p>Not only has the interpreter been extended to support writing Flink 
applications in three languages, but it has also extended the available 
execution modes for Flink that now include:</p>
+
+<ul>
+  <li>Running Flink in Local Mode</li>
+  <li>Running Flink in Remote Mode</li>
+  <li>Running Flink in Yarn Mode</li>
+</ul>
+
+<p>You can find more information about how to get started with Zeppelin and 
all the execution modes for Flink applications in <a 
href="https://github.com/apache/zeppelin/tree/master/notebook/Flink%20Tutorial";>Zeppelin
 notebooks</a> in this post.</p>
+
+<h1 id="flink-on-zeppelin-for-stream-processing">Flink on Zeppelin for Stream 
processing</h1>
+
+<p>Performing stream processing jobs with Apache Flink on Zeppelin allows you 
to run most major streaming cases, 
+such as streaming ETL and real time data analytics, with the use of Flink SQL 
and specific UDFs. 
+Below we showcase how you can execute streaming ETL using Flink on 
Zeppelin:</p>
+
+<p>You can use Flink SQL to perform streaming ETL by following the steps below 
+(for the full tutorial, please refer to the <a 
href="https://github.com/apache/zeppelin/blob/master/notebook/Flink%20Tutorial/4.%20Streaming%20ETL_2EYD56B9B.zpln";>Flink
 Tutorial/Streaming ETL tutorial</a> of the Zeppelin distribution):</p>
+
+<ul>
+  <li>Step 1. Create source table to represent the source data.</li>
+</ul>
+
+<center>
+<img src="/img/blog/2020-06-15-flink-on-zeppelin/create_source.png" 
width="80%" alt="Create Source Table" />
+</center>
+
+<ul>
+  <li>Step 2. Create a sink table to represent the processed data.</li>
+</ul>
+
+<center>
+<img src="/img/blog/2020-06-15-flink-on-zeppelin/create_sink.png" width="80%" 
alt="Create Sink Table" />
+</center>
+
+<ul>
+  <li>Step 3. After creating the source and sink table, we can insert them to 
our statement to trigger the stream processing job as the following:</li>
+</ul>
+
+<center>
+<img src="/img/blog/2020-06-15-flink-on-zeppelin/etl.png" width="80%" 
alt="ETL" />
+</center>
+
+<ul>
+  <li>Step 4. After initiating the streaming job, you can use another SQL 
statement to query the sink table to verify the results of your job. Here you 
can see the top 10 records which will be refreshed every 3 seconds.</li>
+</ul>
+
+<center>
+<img src="/img/blog/2020-06-15-flink-on-zeppelin/preview.png" width="80%" 
alt="Preview" />
+</center>
+
+<h1 id="summary">Summary</h1>
+
+<p>In this post, we explained how the redesigned Flink interpreter works in 
Zeppelin 0.9.0 and provided some examples for performing streaming ETL jobs 
with 
+Flink and Zeppelin. In the next post, I will talk about how to do streaming 
data visualization via Flink on Zeppelin.
+Besides that, you can find an additional <a 
href="https://medium.com/@zjffdu/flink-on-zeppelin-part-2-batch-711731df5ad9";>tutorial
 for batch processing with Flink on Zeppelin</a> as well as using Flink on 
Zeppelin for 
+more advance operations like resource isolation, job concurrency &amp; 
parallelism, multiple Hadoop &amp; Hive environments and more on our series of 
posts on Medium.
+And here’s a list of <a 
href="https://www.youtube.com/watch?v=YxPo0Fosjjg&amp;list=PL4oy12nnS7FFtg3KV1iS5vDb0pTz12VcX";>Flink
 on Zeppelin tutorial videos</a> for your reference.</p>
+
+<h1 id="references">References</h1>
+
+<ul>
+  <li><a href="http://zeppelin.apache.org";>Apache Zeppelin official 
website</a></li>
+  <li>Flink on Zeppelin tutorials - <a 
href="https://medium.com/@zjffdu/flink-on-zeppelin-part-1-get-started-2591aaa6aa47";>Part
 1</a></li>
+  <li>Flink on Zeppelin tutorials - <a 
href="https://medium.com/@zjffdu/flink-on-zeppelin-part-2-batch-711731df5ad9";>Part
 2</a></li>
+  <li>Flink on Zeppelin tutorials - <a 
href="https://medium.com/@zjffdu/flink-on-zeppelin-part-3-streaming-5fca1e16754";>Part
 3</a></li>
+  <li>Flink on Zeppelin tutorials - <a 
href="https://medium.com/@zjffdu/flink-on-zeppelin-part-4-advanced-usage-998b74908cd9";>Part
 4</a></li>
+  <li><a 
href="https://www.youtube.com/watch?v=YxPo0Fosjjg&amp;list=PL4oy12nnS7FFtg3KV1iS5vDb0pTz12VcX";>Flink
 on Zeppelin tutorial videos</a></li>
+</ul>
+
+      </article>
+    </div>
+
+    <div class="row">
+      <div id="disqus_thread"></div>
+      <script type="text/javascript">
+        /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE 
* * */
+        var disqus_shortname = 'stratosphere-eu'; // required: replace example 
with your forum shortname
+
+        /* * * DON'T EDIT BELOW THIS LINE * * */
+        (function() {
+            var dsq = document.createElement('script'); dsq.type = 
'text/javascript'; dsq.async = true;
+            dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
+             (document.getElementsByTagName('head')[0] || 
document.getElementsByTagName('body')[0]).appendChild(dsq);
+        })();
+      </script>
+    </div>
+  </div>
+</div>
+      </div>
+    </div>
+
+    <hr />
+
+    <div class="row">
+      <div class="footer text-center col-sm-12">
+        <p>Copyright © 2014-2019 <a href="http://apache.org";>The Apache 
Software Foundation</a>. All Rights Reserved.</p>
+        <p>Apache Flink, Flink®, Apache®, the squirrel logo, and the Apache 
feather logo are either registered trademarks or trademarks of The Apache 
Software Foundation.</p>
+        <p><a href="/privacy-policy.html">Privacy Policy</a> &middot; <a 
href="/blog/feed.xml">RSS feed</a></p>
+      </div>
+    </div>
+    </div><!-- /.container -->
+
+    <!-- Include all compiled plugins (below), or include individual files as 
needed -->
+    <script 
src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js";></script>
+    <script 
src="https://cdnjs.cloudflare.com/ajax/libs/jquery.matchHeight/0.7.0/jquery.matchHeight-min.js";></script>
+    <script src="/js/codetabs.js"></script>
+    <script src="/js/stickysidebar.js"></script>
+
+    <!-- Google Analytics -->
+    <script>
+      
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+      
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-52545728-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+  </body>
+</html>
diff --git a/content/zh/index.html b/content/zh/index.html
index d89be9a..54ea3b9 100644
--- a/content/zh/index.html
+++ b/content/zh/index.html
@@ -565,6 +565,13 @@
 
   <dl>
       
+        <dt> <a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on 
Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></dt>
+        <dd><p>The latest release of <a 
href="https://zeppelin.apache.org/";>Apache Zeppelin</a> comes with a redesigned 
interpreter for Apache Flink (version Flink 1.10+ is only supported moving 
forward) 
+that allows developers to use Flink directly on Zeppelin notebooks for 
interactive data analysis. I wrote 2 posts about how to use Flink in Zeppelin. 
This is part-1 where I explain how the Flink interpreter in Zeppelin works, 
+and provide a tutorial for running Streaming ETL with Flink on Zeppelin.</p>
+
+</dd>
+      
         <dt> <a href="/news/2020/06/11/community-update.html">Flink Community 
Update - June'20</a></dt>
         <dd>And suddenly it’s June. The previous month has been calm on the 
surface, but quite hectic underneath — the final testing phase for Flink 1.11 
is moving at full speed, Stateful Functions 2.1 is out in the wild and Flink 
has made it into Google Season of Docs 2020.</dd>
       
@@ -580,9 +587,6 @@
       
         <dt> <a href="/news/2020/05/07/community-update.html">Flink Community 
Update - May'20</a></dt>
         <dd>Can you smell it? It’s release month! This time around, we’re 
warming up for Flink 1.11 and peeping back to the past month in the Flink 
community — with the release of Stateful Functions 2.0, a new self-paced Flink 
training and some efforts to improve the Flink documentation experience.</dd>
-      
-        <dt> <a href="/news/2020/05/04/season-of-docs.html">Applying to Google 
Season of Docs 2020</a></dt>
-        <dd>The Flink community is thrilled to share that the project is 
applying again to Google Season of Docs (GSoD) this year! If you’re unfamiliar 
with the program, GSoD is a great initiative organized by Google Open Source to 
pair technical writers with mentors to work on documentation for open source 
projects. Does working shoulder to shoulder with the Flink community on 
documentation sound exciting? We’d love to hear from you!</dd>
     
   </dl>
 

Reply via email to