Added: zeppelin/site/docs/0.7.3/interpreter/pig.html URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.7.3/interpreter/pig.html?rev=1809223&view=auto ============================================================================== --- zeppelin/site/docs/0.7.3/interpreter/pig.html (added) +++ zeppelin/site/docs/0.7.3/interpreter/pig.html Thu Sep 21 20:33:57 2017 @@ -0,0 +1,378 @@ + +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <title>Apache Zeppelin 0.7.3 Documentation: Pig Interpreter for Apache Zeppelin</title> + <meta name="description" content="Apache Pig is a platform for analyzing large data sets that consists of a high-level language for expressing data analysis programs, coupled with infrastructure for evaluating these programs."> + <meta name="author" content="The Apache Software Foundation"> + + <!-- Enable responsive viewport --> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + + <!-- Le HTML5 shim, for IE6-8 support of HTML elements --> + <!--[if lt IE 9]> + <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + + <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet"> + + <!-- Le styles --> + <link href="/docs/0.7.3/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet"> + <link href="/docs/0.7.3/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css"> + <link href="/docs/0.7.3/assets/themes/zeppelin/css/syntax.css" rel="stylesheet" type="text/css" media="screen" /> + <!-- Le fav and touch icons --> + <!-- Update these with your own images + <link rel="shortcut icon" href="images/favicon.ico"> + <link rel="apple-touch-icon" href="images/apple-touch-icon.png"> + <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png"> + <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png"> + --> + + <!-- Js --> + <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/docs.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/anchor.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/toc.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/lunr.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/search.js"></script> + + <!-- atom & rss feed --> + <link href="/docs/0.7.3/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed"> + <link href="/docs/0.7.3/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed"> + </head> + + <body> + + <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation"> + <div class="container"> + <div class="navbar-header"> + <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> + <span class="sr-only">Toggle navigation</span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </button> + <div class="navbar-brand"> + <a class="navbar-brand-main" href="http://zeppelin.apache.org"> + <img src="/assets/themes/zeppelin/img/zeppelin_logo.png" width="50" alt="I'm zeppelin"> + <span style="vertical-align:middle">Zeppelin</span> + </a> + <a class="navbar-brand-version" href="/docs/0.7.3"> + <span><small>0.7.3</small></span> + </a> + </div> + </div> + <nav class="navbar-collapse collapse" role="navigation"> + <ul class="nav navbar-nav"> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li><a href="/docs/0.7.3/index.html">What is Apache Zeppelin ?</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Getting Started</b><span></li> + <li><a href="/docs/0.7.3/install/install.html">Install</a></li> + <li><a href="/docs/0.7.3/install/configuration.html">Configuration</a></li> + <li><a href="/docs/0.7.3/quickstart/explorezeppelinui.html">Explore Zeppelin UI</a></li> + <li><a href="/docs/0.7.3/quickstart/tutorial.html">Tutorial</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Basic Feature Guide</b><span></li> + <li><a href="/docs/0.7.3/manual/dynamicform.html">Dynamic Form</a></li> + <li><a href="/docs/0.7.3/manual/publish.html">Publish your Paragraph</a></li> + <li><a href="/docs/0.7.3/manual/notebookashomepage.html">Customize Zeppelin Homepage</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>More</b><span></li> + <li><a href="/docs/0.7.3/install/upgrade.html">Upgrade Zeppelin Version</a></li> + <li><a href="/docs/0.7.3/install/build.html">Build from source</a></li> + <li><a href="/docs/0.7.3/quickstart/install_with_flink_and_spark_cluster.html">Install Zeppelin with Flink and Spark Clusters Tutorial</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a> + <ul class="dropdown-menu scrollable-menu"> + <li><a href="/docs/0.7.3/manual/interpreters.html">Overview</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Usage</b><span></li> + <li><a href="/docs/0.7.3/manual/interpreterinstallation.html">Interpreter Installation</a></li> + <!--<li><a href="/docs/0.7.3/manual/dynamicinterpreterload.html">Dynamic Interpreter Loading</a></li>--> + <li><a href="/docs/0.7.3/manual/dependencymanagement.html">Interpreter Dependency Management</a></li> + <li><a href="/docs/0.7.3/manual/userimpersonation.html">Interpreter User Impersonation</a></li> + <li><a href="/docs/0.7.3/manual/interpreterexechooks.html">Interpreter Execution Hooks (Experimental)</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Available Interpreters</b><span></li> + <li><a href="/docs/0.7.3/interpreter/alluxio.html">Alluxio</a></li> + <li><a href="/docs/0.7.3/interpreter/beam.html">Beam</a></li> + <li><a href="/docs/0.7.3/interpreter/bigquery.html">BigQuery</a></li> + <li><a href="/docs/0.7.3/interpreter/cassandra.html">Cassandra</a></li> + <li><a href="/docs/0.7.3/interpreter/elasticsearch.html">Elasticsearch</a></li> + <li><a href="/docs/0.7.3/interpreter/flink.html">Flink</a></li> + <li><a href="/docs/0.7.3/interpreter/geode.html">Geode</a></li> + <li><a href="/docs/0.7.3/interpreter/hbase.html">HBase</a></li> + <li><a href="/docs/0.7.3/interpreter/hdfs.html">HDFS</a></li> + <li><a href="/docs/0.7.3/interpreter/hive.html">Hive</a></li> + <li><a href="/docs/0.7.3/interpreter/ignite.html">Ignite</a></li> + <li><a href="/docs/0.7.3/interpreter/jdbc.html">JDBC</a></li> + <li><a href="/docs/0.7.3/interpreter/kylin.html">Kylin</a></li> + <li><a href="/docs/0.7.3/interpreter/lens.html">Lens</a></li> + <li><a href="/docs/0.7.3/interpreter/livy.html">Livy</a></li> + <li><a href="/docs/0.7.3/interpreter/markdown.html">Markdown</a></li> + <li><a href="/docs/0.7.3/interpreter/pig.html">Pig</a></li> + <li><a href="/docs/0.7.3/interpreter/python.html">Python</a></li> + <li><a href="/docs/0.7.3/interpreter/postgresql.html">Postgresql, HAWQ</a></li> + <li><a href="/docs/0.7.3/interpreter/r.html">R</a></li> + <li><a href="/docs/0.7.3/interpreter/scalding.html">Scalding</a></li> + <li><a href="/docs/0.7.3/interpreter/scio.html">Scio</a></li> + <li><a href="/docs/0.7.3/interpreter/shell.html">Shell</a></li> + <li><a href="/docs/0.7.3/interpreter/spark.html">Spark</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Display System <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li class="title"><span><b>Basic Display System</b><span></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#text">Text</a></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#html">Html</a></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#table">Table</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Angular API</b><span></li> + <li><a href="/docs/0.7.3/displaysystem/back-end-angular.html">Angular (backend API)</a></li> + <li><a href="/docs/0.7.3/displaysystem/front-end-angular.html">Angular (frontend API)</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a> + <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;"> + <li class="title"><span><b>Notebook Storage</b><span></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#storage-in-zeppelinhub">ZeppelinHub Storage</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>REST API</b><span></li> + <li><a href="/docs/0.7.3/rest-api/rest-interpreter.html">Interpreter API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-notebook.html">Notebook API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-notebookRepo.html">Notebook Repository API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-configuration.html">Configuration API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-credential.html">Credential API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-helium.html">Helium API</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Security</b><span></li> + <li><a href="/docs/0.7.3/security/shiroauthentication.html">Shiro Authentication</a></li> + <li><a href="/docs/0.7.3/security/notebook_authorization.html">Notebook Authorization</a></li> + <li><a href="/docs/0.7.3/security/datasource_authorization.html">Data Source Authorization</a></li> + <li><a href="/docs/0.7.3/security/http_security_headers.html">HTTP Security Headers</a></li> + <li><a href="/docs/0.7.3/security/helium_authorization.html">Helium Authorization</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Advanced</b><span></li> + <li><a href="/docs/0.7.3/install/virtual_machine.html">Zeppelin on Vagrant VM</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-standalone-mode">Zeppelin on Spark Cluster Mode (Standalone)</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-yarn-mode">Zeppelin on Spark Cluster Mode (YARN)</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-mesos-mode">Zeppelin on Spark Cluster Mode (Mesos)</a></li> + <li><a href="/docs/0.7.3/install/cdh.html">Zeppelin on CDH</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Contibute</b><span></li> + <li><a href="/docs/0.7.3/development/writingzeppelininterpreter.html">Writing Zeppelin Interpreter</a></li> + <li><a href="/docs/0.7.3/development/writingzeppelinvisualization.html">Writing Zeppelin Visualization (Experimental)</a></li> + <li><a href="/docs/0.7.3/development/writingzeppelinapplication.html">Writing Zeppelin Application (Experimental)</a></li> + <li><a href="/docs/0.7.3/development/howtocontribute.html">How to contribute (code)</a></li> + <li><a href="/docs/0.7.3/development/howtocontributewebsite.html">How to contribute (website)</a></li> + </ul> + </li> + <li> + <a href="/docs/0.7.3/search.html" class="nav-search-link"> + <span class="fa fa-search nav-search-icon"></span> + </a> + </li> + </ul> + </nav><!--/.navbar-collapse --> + </div> + </div> + + + + <div class="content"> + +<!--<div class="hero-unit Pig Interpreter for Apache Zeppelin"> + <h1></h1> +</div> +--> + +<div class="row"> + <div class="col-md-12"> + <h1>Pig Interpreter for Apache Zeppelin</h1> + +<div id="toc"></div> + +<h2>Overview</h2> + +<p><a href="https://pig.apache.org/">Apache Pig</a> is a platform for analyzing large data sets that consists of a high-level language for expressing data analysis programs, coupled with infrastructure for evaluating these programs. The salient property of Pig programs is that their structure is amenable to substantial parallelization, which in turns enables them to handle very large data sets.</p> + +<h2>Supported interpreter type</h2> + +<ul> +<li><p><code>%pig.script</code> (default Pig interpreter, so you can use <code>%pig</code>)</p> + +<p><code>%pig.script</code> is like the Pig grunt shell. Anything you can run in Pig grunt shell can be run in <code>%pig.script</code> interpreter, it is used for running Pig script where you donât need to visualize the data, it is suitable for data munging. </p></li> +<li><p><code>%pig.query</code></p> + +<p><code>%pig.query</code> is a little different compared with <code>%pig.script</code>. It is used for exploratory data analysis via Pig latin where you can leverage Zeppelinâs visualization ability. There're 2 minor differences in the last statement between <code>%pig.script</code> and <code>%pig.query</code></p> + +<ul> +<li>No pig alias in the last statement in <code>%pig.query</code> (read the examples below).</li> +<li>The last statement must be in single line in <code>%pig.query</code></li> +</ul></li> +</ul> + +<h2>How to use</h2> + +<h3>How to setup Pig execution modes.</h3> + +<ul> +<li><p>Local Mode</p> + +<p>Set <code>zeppelin.pig.execType</code> as <code>local</code>.</p></li> +<li><p>MapReduce Mode</p> + +<p>Set <code>zeppelin.pig.execType</code> as <code>mapreduce</code>. HADOOP_CONF_DIR needs to be specified in <code>ZEPPELIN_HOME/conf/zeppelin-env.sh</code>.</p></li> +<li><p>Tez Local Mode</p> + +<p>Only Tez 0.7 is supported. Set <code>zeppelin.pig.execType</code> as <code>tez_local</code>.</p></li> +<li><p>Tez Mode</p> + +<p>Only Tez 0.7 is supported. Set <code>zeppelin.pig.execType</code> as <code>tez</code>. HADOOP_CONF_DIR and TEZ_CONF_DIR needs to be specified in <code>ZEPPELIN_HOME/conf/zeppelin-env.sh</code>.</p></li> +<li><p>Spark Local Mode</p> + +<p>Only Spark 1.6.x is supported, by default it is Spark 1.6.3. Set <code>zeppelin.pig.execType</code> as <code>spark_local</code>.</p></li> +<li><p>Spark Mode</p> + +<p>Only Spark 1.6.x is supported, by default it is Spark 1.6.3. Set <code>zeppelin.pig.execType</code> as <code>spark</code>. For now, only yarn-client mode is supported. To enable it, you need to set property <code>SPARK_MASTER</code> to yarn-client and set <code>SPARK_JAR</code> to the spark assembly jar.</p></li> +</ul> + +<h3>How to choose custom Spark Version</h3> + +<p>By default, Pig Interpreter would use Spark 1.6.3 built with scala 2.10, if you want to use another spark version or scala version, +you need to rebuild Zeppelin by specifying the custom Spark version via -Dpig.spark.version=<custom_spark_version> and scala version via -Dpig.scala.version=<scala_version> in the maven build command.</p> + +<h3>How to configure interpreter</h3> + +<p>At the Interpreters menu, you have to create a new Pig interpreter. Pig interpreter has below properties by default. +And you can set any Pig properties here which will be passed to Pig engine. (like tez.queue.name & mapred.job.queue.name). +Besides, we use paragraph title as job name if it exists, else use the last line of Pig script. So you can use that to find app running in YARN RM UI.</p> + +<table class="table-configuration"> + <tr> + <th>Property</th> + <th>Default</th> + <th>Description</th> + </tr> + <tr> + <td>zeppelin.pig.execType</td> + <td>mapreduce</td> + <td>Execution mode for pig runtime. local | mapreduce | tez_local | tez | spark_local | spark </td> + </tr> + <tr> + <td>zeppelin.pig.includeJobStats</td> + <td>false</td> + <td>whether display jobStats info in <code>%pig.script</code></td> + </tr> + <tr> + <td>zeppelin.pig.maxResult</td> + <td>1000</td> + <td>max row number displayed in <code>%pig.query</code></td> + </tr> + <tr> + <td>tez.queue.name</td> + <td>default</td> + <td>queue name for tez engine</td> + </tr> + <tr> + <td>mapred.job.queue.name</td> + <td>default</td> + <td>queue name for mapreduce engine</td> + </tr> + <tr> + <td>SPARK_MASTER</td> + <td>local</td> + <td>local | yarn-client</td> + </tr> + <tr> + <td>SPARK_JAR</td> + <td></td> + <td>The spark assembly jar, both jar in local or hdfs is supported. Put it on hdfs could have + performance benefit</td> + </tr> +</table> + +<h3>Example</h3> + +<h5>pig</h5> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%pig + +bankText = load 'bank.csv' using PigStorage(';'); +bank = foreach bankText generate $0 as age, $1 as job, $2 as marital, $3 as education, $5 as balance; +bank = filter bank by age != '"age"'; +bank = foreach bank generate (int)age, REPLACE(job,'"','') as job, REPLACE(marital, '"', '') as marital, (int)(REPLACE(balance, '"', '')) as balance; +store bank into 'clean_bank.csv' using PigStorage(';'); -- this statement is optional, it just show you that most of time %pig.script is used for data munging before querying the data. +</code></pre></div> +<h5>pig.query</h5> + +<p>Get the number of each age where age is less than 30</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%pig.query + +bank_data = filter bank by age < 30; +b = group bank_data by age; +foreach b generate group, COUNT($1); +</code></pre></div> +<p>The same as above, but use dynamic text form so that use can specify the variable maxAge in textbox. (See screenshot below). Dynamic form is a very cool feature of Zeppelin, you can refer this <a href="(../manual/dynamicform.html">link</a>) for details.</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%pig.query + +bank_data = filter bank by age < ${maxAge=40}; +b = group bank_data by age; +foreach b generate group, COUNT($1) as count; +</code></pre></div> +<p>Get the number of each age for specific marital type, also use dynamic form here. User can choose the marital type in the dropdown list (see screenshot below).</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%pig.query + +bank_data = filter bank by marital=='${marital=single,single|divorced|married}'; +b = group bank_data by age; +foreach b generate group, COUNT($1) as count; +</code></pre></div> +<p>The above examples are in the Pig tutorial note in Zeppelin, you can check that for details. Here's the screenshot.</p> + +<p><img class="img-responsive" width="1024px" style="margin:0 auto; padding: 26px;" src="../assets/themes/zeppelin/img/pig_zeppelin_tutorial.png" /></p> + +<p>Data is shared between <code>%pig</code> and <code>%pig.query</code>, so that you can do some common work in <code>%pig</code>, and do different kinds of query based on the data of <code>%pig</code>. +Besides, we recommend you to specify alias explicitly so that the visualization can display the column name correctly. In the above example 2 and 3 of <code>%pig.query</code>, we name <code>COUNT($1)</code> as <code>count</code>. If you don't do this, +then we will name it using position. E.g. in the above first example of <code>%pig.query</code>, we will use <code>col_1</code> in chart to represent <code>COUNT($1)</code>.</p> + + </div> +</div> + + + <hr> + <footer> + <!-- <p>© 2017 The Apache Software Foundation</p>--> + </footer> + </div> + + + + + <script type="text/javascript"> + (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-45176241-5', 'zeppelin.apache.org'); + ga('require', 'linkid', 'linkid.js'); + ga('send', 'pageview'); + +</script> + + + + </body> +</html> +
Added: zeppelin/site/docs/0.7.3/interpreter/postgresql.html URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.7.3/interpreter/postgresql.html?rev=1809223&view=auto ============================================================================== --- zeppelin/site/docs/0.7.3/interpreter/postgresql.html (added) +++ zeppelin/site/docs/0.7.3/interpreter/postgresql.html Thu Sep 21 20:33:57 2017 @@ -0,0 +1,447 @@ + +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <title>Apache Zeppelin 0.7.3 Documentation: PostgreSQL, Apache HAWQ (incubating) Interpreter for Apache Zeppelin</title> + <meta name="description" content="Apache Zeppelin supports PostgreSQL, Apache HAWQ(incubating) and Greenplum SQL data processing engines."> + <meta name="author" content="The Apache Software Foundation"> + + <!-- Enable responsive viewport --> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + + <!-- Le HTML5 shim, for IE6-8 support of HTML elements --> + <!--[if lt IE 9]> + <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + + <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet"> + + <!-- Le styles --> + <link href="/docs/0.7.3/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet"> + <link href="/docs/0.7.3/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css"> + <link href="/docs/0.7.3/assets/themes/zeppelin/css/syntax.css" rel="stylesheet" type="text/css" media="screen" /> + <!-- Le fav and touch icons --> + <!-- Update these with your own images + <link rel="shortcut icon" href="images/favicon.ico"> + <link rel="apple-touch-icon" href="images/apple-touch-icon.png"> + <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png"> + <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png"> + --> + + <!-- Js --> + <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/docs.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/anchor.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/toc.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/lunr.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/search.js"></script> + + <!-- atom & rss feed --> + <link href="/docs/0.7.3/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed"> + <link href="/docs/0.7.3/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed"> + </head> + + <body> + + <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation"> + <div class="container"> + <div class="navbar-header"> + <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> + <span class="sr-only">Toggle navigation</span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </button> + <div class="navbar-brand"> + <a class="navbar-brand-main" href="http://zeppelin.apache.org"> + <img src="/assets/themes/zeppelin/img/zeppelin_logo.png" width="50" alt="I'm zeppelin"> + <span style="vertical-align:middle">Zeppelin</span> + </a> + <a class="navbar-brand-version" href="/docs/0.7.3"> + <span><small>0.7.3</small></span> + </a> + </div> + </div> + <nav class="navbar-collapse collapse" role="navigation"> + <ul class="nav navbar-nav"> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li><a href="/docs/0.7.3/index.html">What is Apache Zeppelin ?</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Getting Started</b><span></li> + <li><a href="/docs/0.7.3/install/install.html">Install</a></li> + <li><a href="/docs/0.7.3/install/configuration.html">Configuration</a></li> + <li><a href="/docs/0.7.3/quickstart/explorezeppelinui.html">Explore Zeppelin UI</a></li> + <li><a href="/docs/0.7.3/quickstart/tutorial.html">Tutorial</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Basic Feature Guide</b><span></li> + <li><a href="/docs/0.7.3/manual/dynamicform.html">Dynamic Form</a></li> + <li><a href="/docs/0.7.3/manual/publish.html">Publish your Paragraph</a></li> + <li><a href="/docs/0.7.3/manual/notebookashomepage.html">Customize Zeppelin Homepage</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>More</b><span></li> + <li><a href="/docs/0.7.3/install/upgrade.html">Upgrade Zeppelin Version</a></li> + <li><a href="/docs/0.7.3/install/build.html">Build from source</a></li> + <li><a href="/docs/0.7.3/quickstart/install_with_flink_and_spark_cluster.html">Install Zeppelin with Flink and Spark Clusters Tutorial</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a> + <ul class="dropdown-menu scrollable-menu"> + <li><a href="/docs/0.7.3/manual/interpreters.html">Overview</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Usage</b><span></li> + <li><a href="/docs/0.7.3/manual/interpreterinstallation.html">Interpreter Installation</a></li> + <!--<li><a href="/docs/0.7.3/manual/dynamicinterpreterload.html">Dynamic Interpreter Loading</a></li>--> + <li><a href="/docs/0.7.3/manual/dependencymanagement.html">Interpreter Dependency Management</a></li> + <li><a href="/docs/0.7.3/manual/userimpersonation.html">Interpreter User Impersonation</a></li> + <li><a href="/docs/0.7.3/manual/interpreterexechooks.html">Interpreter Execution Hooks (Experimental)</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Available Interpreters</b><span></li> + <li><a href="/docs/0.7.3/interpreter/alluxio.html">Alluxio</a></li> + <li><a href="/docs/0.7.3/interpreter/beam.html">Beam</a></li> + <li><a href="/docs/0.7.3/interpreter/bigquery.html">BigQuery</a></li> + <li><a href="/docs/0.7.3/interpreter/cassandra.html">Cassandra</a></li> + <li><a href="/docs/0.7.3/interpreter/elasticsearch.html">Elasticsearch</a></li> + <li><a href="/docs/0.7.3/interpreter/flink.html">Flink</a></li> + <li><a href="/docs/0.7.3/interpreter/geode.html">Geode</a></li> + <li><a href="/docs/0.7.3/interpreter/hbase.html">HBase</a></li> + <li><a href="/docs/0.7.3/interpreter/hdfs.html">HDFS</a></li> + <li><a href="/docs/0.7.3/interpreter/hive.html">Hive</a></li> + <li><a href="/docs/0.7.3/interpreter/ignite.html">Ignite</a></li> + <li><a href="/docs/0.7.3/interpreter/jdbc.html">JDBC</a></li> + <li><a href="/docs/0.7.3/interpreter/kylin.html">Kylin</a></li> + <li><a href="/docs/0.7.3/interpreter/lens.html">Lens</a></li> + <li><a href="/docs/0.7.3/interpreter/livy.html">Livy</a></li> + <li><a href="/docs/0.7.3/interpreter/markdown.html">Markdown</a></li> + <li><a href="/docs/0.7.3/interpreter/pig.html">Pig</a></li> + <li><a href="/docs/0.7.3/interpreter/python.html">Python</a></li> + <li><a href="/docs/0.7.3/interpreter/postgresql.html">Postgresql, HAWQ</a></li> + <li><a href="/docs/0.7.3/interpreter/r.html">R</a></li> + <li><a href="/docs/0.7.3/interpreter/scalding.html">Scalding</a></li> + <li><a href="/docs/0.7.3/interpreter/scio.html">Scio</a></li> + <li><a href="/docs/0.7.3/interpreter/shell.html">Shell</a></li> + <li><a href="/docs/0.7.3/interpreter/spark.html">Spark</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Display System <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li class="title"><span><b>Basic Display System</b><span></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#text">Text</a></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#html">Html</a></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#table">Table</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Angular API</b><span></li> + <li><a href="/docs/0.7.3/displaysystem/back-end-angular.html">Angular (backend API)</a></li> + <li><a href="/docs/0.7.3/displaysystem/front-end-angular.html">Angular (frontend API)</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a> + <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;"> + <li class="title"><span><b>Notebook Storage</b><span></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#storage-in-zeppelinhub">ZeppelinHub Storage</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>REST API</b><span></li> + <li><a href="/docs/0.7.3/rest-api/rest-interpreter.html">Interpreter API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-notebook.html">Notebook API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-notebookRepo.html">Notebook Repository API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-configuration.html">Configuration API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-credential.html">Credential API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-helium.html">Helium API</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Security</b><span></li> + <li><a href="/docs/0.7.3/security/shiroauthentication.html">Shiro Authentication</a></li> + <li><a href="/docs/0.7.3/security/notebook_authorization.html">Notebook Authorization</a></li> + <li><a href="/docs/0.7.3/security/datasource_authorization.html">Data Source Authorization</a></li> + <li><a href="/docs/0.7.3/security/http_security_headers.html">HTTP Security Headers</a></li> + <li><a href="/docs/0.7.3/security/helium_authorization.html">Helium Authorization</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Advanced</b><span></li> + <li><a href="/docs/0.7.3/install/virtual_machine.html">Zeppelin on Vagrant VM</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-standalone-mode">Zeppelin on Spark Cluster Mode (Standalone)</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-yarn-mode">Zeppelin on Spark Cluster Mode (YARN)</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-mesos-mode">Zeppelin on Spark Cluster Mode (Mesos)</a></li> + <li><a href="/docs/0.7.3/install/cdh.html">Zeppelin on CDH</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Contibute</b><span></li> + <li><a href="/docs/0.7.3/development/writingzeppelininterpreter.html">Writing Zeppelin Interpreter</a></li> + <li><a href="/docs/0.7.3/development/writingzeppelinvisualization.html">Writing Zeppelin Visualization (Experimental)</a></li> + <li><a href="/docs/0.7.3/development/writingzeppelinapplication.html">Writing Zeppelin Application (Experimental)</a></li> + <li><a href="/docs/0.7.3/development/howtocontribute.html">How to contribute (code)</a></li> + <li><a href="/docs/0.7.3/development/howtocontributewebsite.html">How to contribute (website)</a></li> + </ul> + </li> + <li> + <a href="/docs/0.7.3/search.html" class="nav-search-link"> + <span class="fa fa-search nav-search-icon"></span> + </a> + </li> + </ul> + </nav><!--/.navbar-collapse --> + </div> + </div> + + + + <div class="content"> + +<!--<div class="hero-unit PostgreSQL, Apache HAWQ (incubating) Interpreter for Apache Zeppelin"> + <h1></h1> +</div> +--> + +<div class="row"> + <div class="col-md-12"> + <!-- +Licensed 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. +--> + +<h1>PostgreSQL, Apache HAWQ (incubating) Interpreter for Apache Zeppelin</h1> + +<div id="toc"></div> + +<h2>Important Notice</h2> + +<p>Postgresql Interpreter will be deprecated and merged into JDBC Interpreter. You can use Postgresql by using JDBC Interpreter with same functionality. See the example below of settings and dependencies.</p> + +<h3>Properties</h3> + +<table class="table-configuration"> + <tr> + <th>Property</th> + <th>Value</th> + </tr> + <tr> + <td>psql.driver</td> + <td>org.postgresql.Driver</td> + </tr> + <tr> + <td>psql.url</td> + <td>jdbc:postgresql://localhost:5432/</td> + </tr> + <tr> + <td>psql.user</td> + <td>psqlUser</td> + </tr> + <tr> + <td>psql.password</td> + <td>psqlPassword</td> + </tr> +</table> + +<h3>Dependencies</h3> + +<table class="table-configuration"> + <tr> + <th>Artifact</th> + <th>Exclude</th> + </tr> + <tr> + <td>org.postgresql:postgresql:9.4-1201-jdbc41</td> + <td></td> + </tr> +</table> + +<hr> + +<h2>Overview</h2> + +<p><a href="https://www.youtube.com/watch?v=wqXXQhJ5Uk8"><img align="right" src="http://img.youtube.com/vi/wqXXQhJ5Uk8/0.jpg" alt="zeppelin-view" hspace="10" width="250"></img></a></p> + +<p>This interpreter seamlessly supports the following SQL data processing engines:</p> + +<ul> +<li><a href="http://www.postgresql.org/">PostgreSQL</a> - OSS, Object-relational database management system (ORDBMS)</li> +<li><a href="http://hawq.incubator.apache.org/">pache HAWQ (incubating)</a> - Powerful open source SQL-On-Hadoop engine.</li> +<li><a href="http://pivotal.io/big-data/pivotal-greenplum-database">Greenplum</a> - MPP database built on open source PostgreSQL.</li> +</ul> + +<p>This <a href="https://www.youtube.com/watch?v=wqXXQhJ5Uk8">Video Tutorial</a> illustrates some of the features provided by the <code>Postgresql Interpreter</code>.</p> + +<table class="table-configuration"> + <tr> + <th>Name</th> + <th>Class</th> + <th>Description</th> + </tr> + <tr> + <td>%psql.sql</td> + <td>PostgreSqlInterpreter</td> + <td>Provides SQL environment for PostgreSQL, HAWQ and Greenplum</td> + </tr> +</table> + +<h2>Create Interpreter</h2> + +<p>By default Zeppelin creates one <code>PSQL</code> instance. You can remove it or create new instances.</p> + +<p>Multiple PSQL instances can be created, each configured to the same or different backend databases. But over time a <code>Notebook</code> can have only one PSQL interpreter instance <code>bound</code>. That means you <em>cannot</em> connect to different databases in the same <code>Notebook</code>. This is a known Zeppelin limitation.</p> + +<p>To create new PSQL instance open the <code>Interpreter</code> section and click the <code>+Create</code> button. Pick a <code>Name</code> of your choice and from the <code>Interpreter</code> drop-down select <code>psql</code>. Then follow the configuration instructions and <code>Save</code> the new instance.</p> + +<blockquote> +<p>Note: The <code>Name</code> of the instance is used only to distinct the instances while binding them to the <code>Notebook</code>. The <code>Name</code> is irrelevant inside the <code>Notebook</code>. In the <code>Notebook</code> you must use <code>%psql.sql</code> tag.</p> +</blockquote> + +<h2>Bind to Notebook</h2> + +<p>In the <code>Notebook</code> click on the <code>settings</code> icon in the top right corner. The select/deselect the interpreters to be bound with the <code>Notebook</code>.</p> + +<h2>Configuration</h2> + +<p>You can modify the configuration of the PSQL from the <code>Interpreter</code> section. The PSQL interpreter expenses the following properties:</p> + +<table class="table-configuration"> + <tr> + <th>Property Name</th> + <th>Description</th> + <th>Default Value</th> + </tr> + <tr> + <td>postgresql.url</td> + <td>JDBC URL to connect to </td> + <td>jdbc:postgresql://localhost:5432</td> + </tr> + <tr> + <td>postgresql.user</td> + <td>JDBC user name</td> + <td>gpadmin</td> + </tr> + <tr> + <td>postgresql.password</td> + <td>JDBC password</td> + <td></td> + </tr> + <tr> + <td>postgresql.driver.name</td> + <td>JDBC driver name. In this version the driver name is fixed and should not be changed</td> + <td>org.postgresql.Driver</td> + </tr> + <tr> + <td>postgresql.max.result</td> + <td>Max number of SQL result to display to prevent the browser overload</td> + <td>1000</td> + </tr> +</table> + +<h2>How to use</h2> +<div class="highlight"><pre><code class="text language-text" data-lang="text">Tip: Use (CTRL + .) for SQL auto-completion. +</code></pre></div> +<h3>DDL and SQL commands</h3> + +<p>Start the paragraphs with the full <code>%psql.sql</code> prefix tag! The short notation: <code>%psql</code> would still be able run the queries but the syntax highlighting and the auto-completions will be disabled.</p> + +<p>You can use the standard CREATE / DROP / INSERT commands to create or modify the data model:</p> +<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">psql</span><span class="p">.</span><span class="k">sql</span> +<span class="k">drop</span> <span class="k">table</span> <span class="n">if</span> <span class="k">exists</span> <span class="n">mytable</span><span class="p">;</span> +<span class="k">create</span> <span class="k">table</span> <span class="n">mytable</span> <span class="p">(</span><span class="n">i</span> <span class="nb">int</span><span class="p">);</span> +<span class="k">insert</span> <span class="k">into</span> <span class="n">mytable</span> <span class="k">select</span> <span class="n">generate_series</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">100</span><span class="p">);</span> +</code></pre></div> +<p>Then in a separate paragraph run the query.</p> +<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">psql</span><span class="p">.</span><span class="k">sql</span> +<span class="k">select</span> <span class="o">*</span> <span class="k">from</span> <span class="n">mytable</span><span class="p">;</span> +</code></pre></div> +<blockquote> +<p>Note: You can have multiple queries in the same paragraph but only the result from the first is displayed. [<a href="https://issues.apache.org/jira/browse/ZEPPELIN-178">1</a>], [<a href="https://issues.apache.org/jira/browse/ZEPPELIN-212">2</a>].</p> +</blockquote> + +<p>For example, this will execute both queries but only the count result will be displayed. If you revert the order of the queries the mytable content will be shown instead.</p> +<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">psql</span><span class="p">.</span><span class="k">sql</span> +<span class="k">select</span> <span class="k">count</span><span class="p">(</span><span class="o">*</span><span class="p">)</span> <span class="k">from</span> <span class="n">mytable</span><span class="p">;</span> +<span class="k">select</span> <span class="o">*</span> <span class="k">from</span> <span class="n">mytable</span><span class="p">;</span> +</code></pre></div> +<h3>PSQL command line tools</h3> + +<p>Use the Shell Interpreter (<code>%sh</code>) to access the command line <a href="http://www.postgresql.org/docs/9.4/static/app-psql.html">PSQL</a> interactively:</p> +<div class="highlight"><pre><code class="bash language-bash" data-lang="bash">%sh +psql -h phd3.localdomain -U gpadmin -p 5432 <span class="s"><<EOF</span> +<span class="s"> \dn </span> +<span class="s"> \q</span> +<span class="s">EOF</span> +</code></pre></div> +<p>This will produce output like this:</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text"> Name | Owner +--------------------+--------- + hawq_toolkit | gpadmin + information_schema | gpadmin + madlib | gpadmin + pg_catalog | gpadmin + pg_toast | gpadmin + public | gpadmin + retail_demo | gpadmin +</code></pre></div> +<h3>Apply Zeppelin Dynamic Forms</h3> + +<p>You can leverage <a href="../manual/dynamicform.html">Zeppelin Dynamic Form</a> inside your queries. You can use both the <code>text input</code> and <code>select form</code> parametrization features</p> +<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">psql</span><span class="p">.</span><span class="k">sql</span> +<span class="k">SELECT</span> <span class="err">${</span><span class="n">group_by</span><span class="err">}</span><span class="p">,</span> <span class="k">count</span><span class="p">(</span><span class="o">*</span><span class="p">)</span> <span class="k">as</span> <span class="k">count</span> +<span class="k">FROM</span> <span class="n">retail_demo</span><span class="p">.</span><span class="n">order_lineitems_pxf</span> +<span class="k">GROUP</span> <span class="k">BY</span> <span class="err">${</span><span class="n">group_by</span><span class="o">=</span><span class="n">product_id</span><span class="p">,</span><span class="n">product_id</span><span class="o">|</span><span class="n">product_name</span><span class="o">|</span><span class="n">customer_id</span><span class="o">|</span><span class="n">store_id</span><span class="err">}</span> +<span class="k">ORDER</span> <span class="k">BY</span> <span class="k">count</span> <span class="err">${</span><span class="k">order</span><span class="o">=</span><span class="k">DESC</span><span class="p">,</span><span class="k">DESC</span><span class="o">|</span><span class="k">ASC</span><span class="err">}</span> +<span class="k">LIMIT</span> <span class="err">${</span><span class="k">limit</span><span class="o">=</span><span class="mi">10</span><span class="err">}</span><span class="p">;</span> +</code></pre></div> +<h3>Example HAWQ PXF/HDFS Tables</h3> + +<p>Create HAWQ external table that read data from tab-separated-value data in HDFS.</p> +<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">psql</span><span class="p">.</span><span class="k">sql</span> +<span class="k">CREATE</span> <span class="k">EXTERNAL</span> <span class="k">TABLE</span> <span class="n">retail_demo</span><span class="p">.</span><span class="n">payment_methods_pxf</span> <span class="p">(</span> + <span class="n">payment_method_id</span> <span class="nb">smallint</span><span class="p">,</span> + <span class="n">payment_method_code</span> <span class="nb">character</span> <span class="nb">varying</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span> +<span class="p">)</span> <span class="k">LOCATION</span> <span class="p">(</span><span class="s1">'pxf://${NAME_NODE_HOST}:50070/retail_demo/payment_methods.tsv.gz?profile=HdfsTextSimple'</span><span class="p">)</span> <span class="n">FORMAT</span> <span class="s1">'TEXT'</span> <span class="p">(</span><span class="k">DELIMITER</span> <span class="o">=</span> <span class="n">E</span><span class="s1">'\t'</span><span class="p">);</span> +</code></pre></div> +<p>And retrieve content</p> +<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">psql</span><span class="p">.</span><span class="k">sql</span> +<span class="k">select</span> <span class="o">*</span> <span class="k">from</span> <span class="n">retail_demo</span><span class="p">.</span><span class="n">payment_methods_pxf</span> +</code></pre></div> +<h2>Auto-completion</h2> + +<p>The PSQL Interpreter provides a basic auto-completion functionality. On <code>(Ctrl+.)</code> it list the most relevant suggestions in a pop-up window. In addition to the SQL keyword the interpreter provides suggestions for the Schema, Table, Column names as well.</p> + + </div> +</div> + + + <hr> + <footer> + <!-- <p>© 2017 The Apache Software Foundation</p>--> + </footer> + </div> + + + + + <script type="text/javascript"> + (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-45176241-5', 'zeppelin.apache.org'); + ga('require', 'linkid', 'linkid.js'); + ga('send', 'pageview'); + +</script> + + + + </body> +</html> + Added: zeppelin/site/docs/0.7.3/interpreter/python.html URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.7.3/interpreter/python.html?rev=1809223&view=auto ============================================================================== --- zeppelin/site/docs/0.7.3/interpreter/python.html (added) +++ zeppelin/site/docs/0.7.3/interpreter/python.html Thu Sep 21 20:33:57 2017 @@ -0,0 +1,420 @@ + +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <title>Apache Zeppelin 0.7.3 Documentation: Python 2 & 3 Interpreter for Apache Zeppelin</title> + <meta name="description" content="Python is a programming language that lets you work quickly and integrate systems more effectively."> + <meta name="author" content="The Apache Software Foundation"> + + <!-- Enable responsive viewport --> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + + <!-- Le HTML5 shim, for IE6-8 support of HTML elements --> + <!--[if lt IE 9]> + <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + + <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet"> + + <!-- Le styles --> + <link href="/docs/0.7.3/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet"> + <link href="/docs/0.7.3/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css"> + <link href="/docs/0.7.3/assets/themes/zeppelin/css/syntax.css" rel="stylesheet" type="text/css" media="screen" /> + <!-- Le fav and touch icons --> + <!-- Update these with your own images + <link rel="shortcut icon" href="images/favicon.ico"> + <link rel="apple-touch-icon" href="images/apple-touch-icon.png"> + <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png"> + <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png"> + --> + + <!-- Js --> + <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/docs.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/anchor.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/toc.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/lunr.min.js"></script> + <script src="/docs/0.7.3/assets/themes/zeppelin/js/search.js"></script> + + <!-- atom & rss feed --> + <link href="/docs/0.7.3/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed"> + <link href="/docs/0.7.3/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed"> + </head> + + <body> + + <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation"> + <div class="container"> + <div class="navbar-header"> + <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> + <span class="sr-only">Toggle navigation</span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </button> + <div class="navbar-brand"> + <a class="navbar-brand-main" href="http://zeppelin.apache.org"> + <img src="/assets/themes/zeppelin/img/zeppelin_logo.png" width="50" alt="I'm zeppelin"> + <span style="vertical-align:middle">Zeppelin</span> + </a> + <a class="navbar-brand-version" href="/docs/0.7.3"> + <span><small>0.7.3</small></span> + </a> + </div> + </div> + <nav class="navbar-collapse collapse" role="navigation"> + <ul class="nav navbar-nav"> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li><a href="/docs/0.7.3/index.html">What is Apache Zeppelin ?</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Getting Started</b><span></li> + <li><a href="/docs/0.7.3/install/install.html">Install</a></li> + <li><a href="/docs/0.7.3/install/configuration.html">Configuration</a></li> + <li><a href="/docs/0.7.3/quickstart/explorezeppelinui.html">Explore Zeppelin UI</a></li> + <li><a href="/docs/0.7.3/quickstart/tutorial.html">Tutorial</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Basic Feature Guide</b><span></li> + <li><a href="/docs/0.7.3/manual/dynamicform.html">Dynamic Form</a></li> + <li><a href="/docs/0.7.3/manual/publish.html">Publish your Paragraph</a></li> + <li><a href="/docs/0.7.3/manual/notebookashomepage.html">Customize Zeppelin Homepage</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>More</b><span></li> + <li><a href="/docs/0.7.3/install/upgrade.html">Upgrade Zeppelin Version</a></li> + <li><a href="/docs/0.7.3/install/build.html">Build from source</a></li> + <li><a href="/docs/0.7.3/quickstart/install_with_flink_and_spark_cluster.html">Install Zeppelin with Flink and Spark Clusters Tutorial</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a> + <ul class="dropdown-menu scrollable-menu"> + <li><a href="/docs/0.7.3/manual/interpreters.html">Overview</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Usage</b><span></li> + <li><a href="/docs/0.7.3/manual/interpreterinstallation.html">Interpreter Installation</a></li> + <!--<li><a href="/docs/0.7.3/manual/dynamicinterpreterload.html">Dynamic Interpreter Loading</a></li>--> + <li><a href="/docs/0.7.3/manual/dependencymanagement.html">Interpreter Dependency Management</a></li> + <li><a href="/docs/0.7.3/manual/userimpersonation.html">Interpreter User Impersonation</a></li> + <li><a href="/docs/0.7.3/manual/interpreterexechooks.html">Interpreter Execution Hooks (Experimental)</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Available Interpreters</b><span></li> + <li><a href="/docs/0.7.3/interpreter/alluxio.html">Alluxio</a></li> + <li><a href="/docs/0.7.3/interpreter/beam.html">Beam</a></li> + <li><a href="/docs/0.7.3/interpreter/bigquery.html">BigQuery</a></li> + <li><a href="/docs/0.7.3/interpreter/cassandra.html">Cassandra</a></li> + <li><a href="/docs/0.7.3/interpreter/elasticsearch.html">Elasticsearch</a></li> + <li><a href="/docs/0.7.3/interpreter/flink.html">Flink</a></li> + <li><a href="/docs/0.7.3/interpreter/geode.html">Geode</a></li> + <li><a href="/docs/0.7.3/interpreter/hbase.html">HBase</a></li> + <li><a href="/docs/0.7.3/interpreter/hdfs.html">HDFS</a></li> + <li><a href="/docs/0.7.3/interpreter/hive.html">Hive</a></li> + <li><a href="/docs/0.7.3/interpreter/ignite.html">Ignite</a></li> + <li><a href="/docs/0.7.3/interpreter/jdbc.html">JDBC</a></li> + <li><a href="/docs/0.7.3/interpreter/kylin.html">Kylin</a></li> + <li><a href="/docs/0.7.3/interpreter/lens.html">Lens</a></li> + <li><a href="/docs/0.7.3/interpreter/livy.html">Livy</a></li> + <li><a href="/docs/0.7.3/interpreter/markdown.html">Markdown</a></li> + <li><a href="/docs/0.7.3/interpreter/pig.html">Pig</a></li> + <li><a href="/docs/0.7.3/interpreter/python.html">Python</a></li> + <li><a href="/docs/0.7.3/interpreter/postgresql.html">Postgresql, HAWQ</a></li> + <li><a href="/docs/0.7.3/interpreter/r.html">R</a></li> + <li><a href="/docs/0.7.3/interpreter/scalding.html">Scalding</a></li> + <li><a href="/docs/0.7.3/interpreter/scio.html">Scio</a></li> + <li><a href="/docs/0.7.3/interpreter/shell.html">Shell</a></li> + <li><a href="/docs/0.7.3/interpreter/spark.html">Spark</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">Display System <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li class="title"><span><b>Basic Display System</b><span></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#text">Text</a></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#html">Html</a></li> + <li><a href="/docs/0.7.3/displaysystem/basicdisplaysystem.html#table">Table</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Angular API</b><span></li> + <li><a href="/docs/0.7.3/displaysystem/back-end-angular.html">Angular (backend API)</a></li> + <li><a href="/docs/0.7.3/displaysystem/front-end-angular.html">Angular (frontend API)</a></li> + </ul> + </li> + <li> + <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a> + <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;"> + <li class="title"><span><b>Notebook Storage</b><span></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li> + <li><a href="/docs/0.7.3/storage/storage.html#storage-in-zeppelinhub">ZeppelinHub Storage</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>REST API</b><span></li> + <li><a href="/docs/0.7.3/rest-api/rest-interpreter.html">Interpreter API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-notebook.html">Notebook API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-notebookRepo.html">Notebook Repository API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-configuration.html">Configuration API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-credential.html">Credential API</a></li> + <li><a href="/docs/0.7.3/rest-api/rest-helium.html">Helium API</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Security</b><span></li> + <li><a href="/docs/0.7.3/security/shiroauthentication.html">Shiro Authentication</a></li> + <li><a href="/docs/0.7.3/security/notebook_authorization.html">Notebook Authorization</a></li> + <li><a href="/docs/0.7.3/security/datasource_authorization.html">Data Source Authorization</a></li> + <li><a href="/docs/0.7.3/security/http_security_headers.html">HTTP Security Headers</a></li> + <li><a href="/docs/0.7.3/security/helium_authorization.html">Helium Authorization</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Advanced</b><span></li> + <li><a href="/docs/0.7.3/install/virtual_machine.html">Zeppelin on Vagrant VM</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-standalone-mode">Zeppelin on Spark Cluster Mode (Standalone)</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-yarn-mode">Zeppelin on Spark Cluster Mode (YARN)</a></li> + <li><a href="/docs/0.7.3/install/spark_cluster_mode.html#spark-on-mesos-mode">Zeppelin on Spark Cluster Mode (Mesos)</a></li> + <li><a href="/docs/0.7.3/install/cdh.html">Zeppelin on CDH</a></li> + <li role="separator" class="divider"></li> + <li class="title"><span><b>Contibute</b><span></li> + <li><a href="/docs/0.7.3/development/writingzeppelininterpreter.html">Writing Zeppelin Interpreter</a></li> + <li><a href="/docs/0.7.3/development/writingzeppelinvisualization.html">Writing Zeppelin Visualization (Experimental)</a></li> + <li><a href="/docs/0.7.3/development/writingzeppelinapplication.html">Writing Zeppelin Application (Experimental)</a></li> + <li><a href="/docs/0.7.3/development/howtocontribute.html">How to contribute (code)</a></li> + <li><a href="/docs/0.7.3/development/howtocontributewebsite.html">How to contribute (website)</a></li> + </ul> + </li> + <li> + <a href="/docs/0.7.3/search.html" class="nav-search-link"> + <span class="fa fa-search nav-search-icon"></span> + </a> + </li> + </ul> + </nav><!--/.navbar-collapse --> + </div> + </div> + + + + <div class="content"> + +<!--<div class="hero-unit Python 2 & 3 Interpreter for Apache Zeppelin"> + <h1></h1> +</div> +--> + +<div class="row"> + <div class="col-md-12"> + <!-- +Licensed 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. +--> + +<h1>Python 2 & 3 Interpreter for Apache Zeppelin</h1> + +<div id="toc"></div> + +<h2>Configuration</h2> + +<table class="table-configuration"> + <tr> + <th>Property</th> + <th>Default</th> + <th>Description</th> + </tr> + <tr> + <td>zeppelin.python</td> + <td>python</td> + <td>Path of the already installed Python binary (could be python2 or python3). + If python is not in your $PATH you can set the absolute directory (example : /usr/bin/python) + </td> + </tr> + <tr> + <td>zeppelin.python.maxResult</td> + <td>1000</td> + <td>Max number of dataframe rows to display.</td> + </tr> +</table> + +<h2>Enabling Python Interpreter</h2> + +<p>In a notebook, to enable the <strong>Python</strong> interpreter, click on the <strong>Gear</strong> icon and select <strong>Python</strong></p> + +<h2>Using the Python Interpreter</h2> + +<p>In a paragraph, use <strong><em>%python</em></strong> to select the <strong>Python</strong> interpreter and then input all commands.</p> + +<p>The interpreter can only work if you already have python installed (the interpreter doesn't bring it own python binaries).</p> + +<p>To access the help, type <strong>help()</strong></p> + +<h2>Python environments</h2> + +<h3>Default</h3> + +<p>By default, PythonInterpreter will use python command defined in <code>zeppelin.python</code> property to run python process. +The interpreter can use all modules already installed (with pip, easy_install...)</p> + +<h3>Conda</h3> + +<p><a href="http://conda.pydata.org/">Conda</a> is an package management system and environment management system for python. +<code>%python.conda</code> interpreter lets you change between environments.</p> + +<h4>Usage</h4> + +<p>List your environments</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%python.conda +</code></pre></div> +<p>Activate an environment</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%python.conda activate [ENVIRONMENT_NAME] +</code></pre></div> +<p>Deactivate</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%python.conda deactivate +</code></pre></div> +<h3>Docker</h3> + +<p><code>%python.docker</code> interpreter allows PythonInterpreter creates python process in a specified docker container.</p> + +<h4>Usage</h4> + +<p>Activate an environment</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%python.docker activate [Repository] +%python.docker activate [Repository:Tag] +%python.docker activate [Image Id] +</code></pre></div> +<p>Deactivate</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text">%python.docker deactivate +</code></pre></div> +<p>Example</p> +<div class="highlight"><pre><code class="text language-text" data-lang="text"># activate latest tensorflow image as a python environment +%python.docker activate gcr.io/tensorflow/tensorflow:latest +</code></pre></div> +<h2>Using Zeppelin Dynamic Forms</h2> + +<p>You can leverage <a href="/docs/0.7.3/manual/dynamicform.html">Zeppelin Dynamic Form</a> inside your Python code.</p> + +<p><strong>Zeppelin Dynamic Form can only be used if py4j Python library is installed in your system. If not, you can install it with <code>pip install py4j</code>.</strong></p> + +<p>Example : </p> +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="o">%</span><span class="n">python</span> +<span class="c">### Input form</span> +<span class="k">print</span> <span class="p">(</span><span class="n">z</span><span class="o">.</span><span class="n">input</span><span class="p">(</span><span class="s">"f1"</span><span class="p">,</span><span class="s">"defaultValue"</span><span class="p">))</span> + +<span class="c">### Select form</span> +<span class="k">print</span> <span class="p">(</span><span class="n">z</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="s">"f1"</span><span class="p">,[(</span><span class="s">"o1"</span><span class="p">,</span><span class="s">"1"</span><span class="p">),(</span><span class="s">"o2"</span><span class="p">,</span><span class="s">"2"</span><span class="p">)],</span><span class="s">"2"</span><span class="p">))</span> + +<span class="c">### Checkbox form</span> +<span class="k">print</span><span class="p">(</span><span class="s">""</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">z</span><span class="o">.</span><span class="n">checkbox</span><span class="p">(</span><span class="s">"f3"</span><span class="p">,</span> <span class="p">[(</span><span class="s">"o1"</span><span class="p">,</span><span class="s">"1"</span><span class="p">),</span> <span class="p">(</span><span class="s">"o2"</span><span class="p">,</span><span class="s">"2"</span><span class="p">)],[</span><span class="s">"1"</span><span class="p">])))</span> +</code></pre></div> +<h2>Matplotlib integration</h2> + +<p>The python interpreter can display matplotlib figures inline automatically using the <code>pyplot</code> module:</p> +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="o">%</span><span class="n">python</span> +<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="kn">as</span> <span class="nn">plt</span> +<span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">])</span> +</code></pre></div> +<p>This is the recommended method for using matplotlib from within a Zeppelin notebook. The output of this command will by default be converted to HTML by implicitly making use of the <code>%html</code> magic. Additional configuration can be achieved using the builtin <code>z.configure_mpl()</code> method. For example, </p> +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="n">z</span><span class="o">.</span><span class="n">configure_mpl</span><span class="p">(</span><span class="n">width</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span> <span class="n">height</span><span class="o">=</span><span class="mi">300</span><span class="p">,</span> <span class="n">fmt</span><span class="o">=</span><span class="s">'svg'</span><span class="p">)</span> +<span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">])</span> +</code></pre></div> +<p>Will produce a 400x300 image in SVG format, which by default are normally 600x400 and PNG respectively. In the future, another option called <code>angular</code> can be used to make it possible to update a plot produced from one paragraph directly from another (the output will be <code>%angular</code> instead of <code>%html</code>). However, this feature is already available in the <code>pyspark</code> interpreter. More details can be found in the included "Zeppelin Tutorial: Python - matplotlib basic" tutorial notebook. </p> + +<p>If Zeppelin cannot find the matplotlib backend files (which should usually be found in <code>$ZEPPELIN_HOME/interpreter/lib/python</code>) in your <code>PYTHONPATH</code>, then the backend will automatically be set to agg, and the (otherwise deprecated) instructions below can be used for more limited inline plotting.</p> + +<p>If you are unable to load the inline backend, use <code>z.show(plt)</code>: + <code>python +%python +import matplotlib.pyplot as plt +plt.figure() +(.. ..) +z.show(plt) +plt.close() +</code> +The <code>z.show()</code> function can take optional parameters to adapt graph dimensions (width and height) as well as output format (png or optionally svg).</p> +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="o">%</span><span class="n">python</span> +<span class="n">z</span><span class="o">.</span><span class="n">show</span><span class="p">(</span><span class="n">plt</span><span class="p">,</span> <span class="n">width</span><span class="o">=</span><span class="s">'50px'</span><span class="p">)</span> +<span class="n">z</span><span class="o">.</span><span class="n">show</span><span class="p">(</span><span class="n">plt</span><span class="p">,</span> <span class="n">height</span><span class="o">=</span><span class="s">'150px'</span><span class="p">,</span> <span class="n">fmt</span><span class="o">=</span><span class="s">'svg'</span><span class="p">)</span> +</code></pre></div> +<p><img class="img-responsive" src="../assets/themes/zeppelin/img/docs-img/pythonMatplotlib.png" /></p> + +<h2>Pandas integration</h2> + +<p>Apache Zeppelin <a href="../displaysystem/basicdisplaysystem.html#table">Table Display System</a> provides built-in data visualization capabilities. Python interpreter leverages it to visualize Pandas DataFrames though similar <code>z.show()</code> API, same as with <a href="#matplotlib-integration">Matplotlib integration</a>.</p> + +<p>Example:</p> +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="kn">import</span> <span class="nn">pandas</span> <span class="kn">as</span> <span class="nn">pd</span> +<span class="n">rates</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">read_csv</span><span class="p">(</span><span class="s">"bank.csv"</span><span class="p">,</span> <span class="n">sep</span><span class="o">=</span><span class="s">";"</span><span class="p">)</span> +<span class="n">z</span><span class="o">.</span><span class="n">show</span><span class="p">(</span><span class="n">rates</span><span class="p">)</span> +</code></pre></div> +<h2>SQL over Pandas DataFrames</h2> + +<p>There is a convenience <code>%python.sql</code> interpreter that matches Apache Spark experience in Zeppelin and enables usage of SQL language to query <a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.html">Pandas DataFrames</a> and visualization of results though built-in <a href="../displaysystem/basicdisplaysystem.html#table">Table Display System</a>.</p> + +<p><strong>Pre-requests</strong></p> + +<ul> +<li>Pandas <code>pip install pandas</code></li> +<li>PandaSQL <code>pip install -U pandasql</code></li> +</ul> + +<p>In case default binded interpreter is Python (first in the interpreter list, under the <em>Gear Icon</em>), you can just use it as <code>%sql</code> i.e</p> + +<ul> +<li><p>first paragraph</p> +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="kn">import</span> <span class="nn">pandas</span> <span class="kn">as</span> <span class="nn">pd</span> +<span class="n">rates</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">read_csv</span><span class="p">(</span><span class="s">"bank.csv"</span><span class="p">,</span> <span class="n">sep</span><span class="o">=</span><span class="s">";"</span><span class="p">)</span> +</code></pre></div></li> +<li><p>next paragraph</p> +<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="k">sql</span> +<span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="n">rates</span> <span class="k">WHERE</span> <span class="n">age</span> <span class="o"><</span> <span class="mi">40</span> +</code></pre></div></li> +</ul> + +<p>Otherwise it can be referred to as <code>%python.sql</code></p> + +<h2>Technical description</h2> + +<p>For in-depth technical details on current implementation please refer to <a href="https://github.com/apache/zeppelin/blob/master/python/README.md">python/README.md</a>.</p> + +<h3>Some features not yet implemented in the Python Interpreter</h3> + +<ul> +<li>Interrupt a paragraph execution (<code>cancel()</code> method) is currently only supported in Linux and MacOs. If interpreter runs in another operating system (for instance MS Windows) , interrupt a paragraph will close the whole interpreter. A JIRA ticket (<a href="https://issues.apache.org/jira/browse/ZEPPELIN-893">ZEPPELIN-893</a>) is opened to implement this feature in a next release of the interpreter.</li> +<li>Progression bar in webUI (<code>getProgress()</code> method) is currently not implemented.</li> +<li>Code-completion is currently not implemented.</li> +</ul> + + </div> +</div> + + + <hr> + <footer> + <!-- <p>© 2017 The Apache Software Foundation</p>--> + </footer> + </div> + + + + + <script type="text/javascript"> + (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-45176241-5', 'zeppelin.apache.org'); + ga('require', 'linkid', 'linkid.js'); + ga('send', 'pageview'); + +</script> + + + + </body> +</html> +