zeppelin-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From m...@apache.org
Subject incubator-zeppelin git commit: updates to make your own interpreter
Date Fri, 17 Jul 2015 16:34:48 GMT
Repository: incubator-zeppelin
Updated Branches:
  refs/heads/gh-pages b375526ea -> f8a119da9


updates to make your own interpreter

I have updated the language in the "What is Zeppelin Interpreter" as the separate JVM process
is the default.
Also updated the "Make your own Interpreter" and "Configure your interpreter" to better explain
the process.

Author: cto <goi.cto@gmail.com>

Closes #155 from goi/gh-pages and squashes the following commits:

4338310 [cto] update wording about separete jvm process and add note about name of the interpreter
5614606 [cto] change wording about default configuration for zeppelin interpreters
a121857 [cto] updates to make your own interpreter


Project: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/commit/f8a119da
Tree: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/tree/f8a119da
Diff: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/diff/f8a119da

Branch: refs/heads/gh-pages
Commit: f8a119da9343458068c8bc9ce8ea26fa02ed785f
Parents: b375526
Author: cto <goi.cto@gmail.com>
Authored: Thu Jul 16 10:25:16 2015 +0300
Committer: Lee moon soo <moon@apache.org>
Committed: Fri Jul 17 09:34:42 2015 -0700

----------------------------------------------------------------------
 docs/development/writingzeppelininterpreter.md | 44 ++++++++++++++++-----
 1 file changed, 35 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/f8a119da/docs/development/writingzeppelininterpreter.md
----------------------------------------------------------------------
diff --git a/docs/development/writingzeppelininterpreter.md b/docs/development/writingzeppelininterpreter.md
index 4e185ee..95ca5ab 100644
--- a/docs/development/writingzeppelininterpreter.md
+++ b/docs/development/writingzeppelininterpreter.md
@@ -14,7 +14,7 @@ Interpreters in the same InterpreterGroup can reference each other. For
example,
 
 <img class="img-responsive" style="width:50%; border: 1px solid #ecf0f1;" height="auto"
src="../../assets/themes/zeppelin/img/interpreter.png" />
 
-Interpreter can be launched either using separate classloader or separate JVM process. Sometimes
separate classloader causes problem especially when your interpreter uses reflections or trying
to grab standard out/err. In this case, separate JVM process is the option you can select.
(by checking 'fork' in Interpreter menu, which is default value) When Interpreter is running
in separate JVM process, it's communicating with Zeppelin via thrift.
+All Interpreters in the same interpreter group are launched in a single, separate JVM process.
The Interpreter communicates with Zeppelin engine via thrift.
 
 ### Make your own Interpreter
 
@@ -22,6 +22,22 @@ Creating a new interpreter is quite simple. Just extend [org.apache.zeppelin.int
 
 You can include org.apache.zeppelin:zeppelin-interpreter:[VERSION] artifact in your build
system.
 
+Your interpreter name is derived from the static register method
+
+```
+static {
+    Interpreter.register("MyInterpreterName", MyClassName.class.getName());
+  }
+```
+
+The name will appear later in the interpreter name option box during the interpreter configuration
process.
+
+The name of the interpreter is what you later write to identify a paragraph which should
be interpreted using this interpreter.
+
+```
+%MyInterpreterName
+some interpreter spesific code...
+```
 ### Install your interpreter binary
 
 Once you have build your interpreter, you can place your interpreter under directory with
all the dependencies.
@@ -32,17 +48,27 @@ Once you have build your interpreter, you can place your interpreter under
direc
 
 ### Configure your interpreter
 
-You can configure zeppelin.interpreters property in conf/zeppelin-site.xml
-Property value is comma separated [INTERPRETER_CLASS_NAME]
+To configure your interpreter you need to follow these steps:
 
-for example, 
+1. create conf/zeppelin-site.xml by copying conf/zeppelin-site.xml.template to conf/zeppelin-site.xml

 
-```
+2. Add your interpreter class name to the zeppelin.interpreters property in conf/zeppelin-site.xml
+
+  Property value is comma separated [INTERPRETER_CLASS_NAME]
+for example,
+  
+  ```
 <property>
   <name>zeppelin.interpreters</name>
   <value>org.apache.zeppelin.spark.SparkInterpreter,org.apache.zeppelin.spark.PySparkInterpreter,org.apache.zeppelin.spark.SparkSqlInterpreter,org.apache.zeppelin.spark.DepInterpreter,org.apache.zeppelin.markdown.Markdown,org.apache.zeppelin.shell.ShellInterpreter,org.apache.zeppelin.hive.HiveInterpreter,com.me.MyNewInterpreter</value>
 </property>
 ```
+3. start zeppelin by running ```./bin/zeppelin-deamon start```
+
+4. in the interpreter page, click the +Create button and configure your interpreter properties.
+Now you are done and ready to use your interpreter.
+
+Note that the interpreters shipped with zeppelin have a [default configuration](https://github.com/apache/incubator-zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java#L397)
which is used when there is no zeppelin-site.xml.
 
 ### Use your interpreter
 
@@ -61,11 +87,11 @@ println(a)
 
 <br />
 #### 0.6.0 and later
-Inside of a noteobok, %[INTERPRETER\_GROUP].[INTERPRETER\_NAME] directive will call your
interpreter.
+Inside of a notebook, %[INTERPRETER\_GROUP].[INTERPRETER\_NAME] directive will call your
interpreter.
 Note that the first interpreter configuration in zeppelin.interpreters will be the default
one.
 
 You can omit either [INTERPRETER\_GROUP] or [INTERPRETER\_NAME]. Omit [INTERPRETER\_NAME]
selects first available interpreter in the [INTERPRETER\_GROUP].
-Omit '[INTERPRETER\_GROUP]' will selects [INTERPRETER\_NAME] from defualt interpreter group.
+Omit '[INTERPRETER\_GROUP]' will selects [INTERPRETER\_NAME] from default interpreter group.
 
 
 For example, if you have two interpreter myintp1 and myintp2 in group mygrp,
@@ -86,7 +112,7 @@ and you can call myintp2 like
 codes for myintp2
 ```
 
-If you ommit your interpreter name, it'll selects first available interpreter in the group
(myintp1)
+If you omit your interpreter name, it'll selects first available interpreter in the group
(myintp1)
 
 ```
 %mygrp
@@ -95,7 +121,7 @@ codes for myintp1
 
 ```
 
-You can only ommit your interpreter group when your interpreter group is selected as a default
group.
+You can only omit your interpreter group when your interpreter group is selected as a default
group.
 
 ```
 %myintp2


Mime
View raw message