# 解释器 API
原文链接 : [http://zeppelin.apache.org/docs/0.7.2/rest-api/rest-interpreter.html](http://zeppelin.apache.org/docs/0.7.2/rest-api/rest-interpreter.html)
译文链接 : [http://www.apache.wiki/pages/viewpage.action?pageId=10030697](http://www.apache.wiki/pages/viewpage.action?pageId=10030697)
贡献者 : [小瑶](/display/~chenyao) [ApacheCN](/display/~apachecn) [Apache中文网](/display/~apachechina)
## Overview ( 概述 )
**Apache Zeppelin** 提供了几个 **REST API** ,用于交互和远程激活 **zeppelin** 功能。所有 **REST API** 都可以从以下端点。请注意,**Apache Zeppelin REST API** 接收或返回 **JSON** 对象,建议您安装 **JSON** 查看器如 **[JSONView](https://chrome.google.com/webstore/detail/jsonview/chklaanhfefbnpoihckbnefhakgolnmc) **。
如果您使用 **Apache Zeppelin** 并发现需要一个额外的 **REST API** ,请 [提出问题或向我们发送电子邮件](http://zeppelin.apache.org/community.html) 。
## 解释器REST API列表
这里介绍了 **registered interpreters** , **settings** ( 设置 ) 和 **interpreters group** 的作用。
### 注册解释器人员名单
| 描述 | 该 GET 方法返回服务器上可用的 all the registered interpreters ( 所有已注册的解释器 ) 。 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter |
| 成功代码 | 200 |
| 失败代码 | 500 |
| JSON 响应示例 |
```
{
"status": "OK",
"message": "",
"body": {
"md.md": {
"name": "md",
"group": "md",
"className": "org.apache.zeppelin.markdown.Markdown",
"properties": {},
"path": "/zeppelin/interpreter/md"
},
"spark.spark": {
"name": "spark",
"group": "spark",
"className": "org.apache.zeppelin.spark.SparkInterpreter",
"properties": {
"spark.executor.memory": {
"defaultValue": "1g",
"description": "Executor memory per worker instance. ex) 512m, 32g"
},
"spark.cores.max": {
"defaultValue": "",
"description": "Total number of cores to use. Empty value uses all available core."
},
},
"path": "/zeppelin/interpreter/spark"
},
"spark.sql": {
"name": "sql",
"group": "spark",
"className": "org.apache.zeppelin.spark.SparkSqlInterpreter",
"properties": {
"zeppelin.spark.maxResult": {
"defaultValue": "1000",
"description": "Max number of Spark SQL result to display."
}
},
"path": "/zeppelin/interpreter/spark"
}
}
}
```
|
### 注册解释器设定清单
| 描述 | 该 GET 方法返回服务器上注册的所有解释器设置。 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/setting |
| 成功代码 | 200 |
| 失败代码 | 500 |
| JSON 响应示例 |
```
{
"status": "OK",
"message": "",
"body": [
{
"id": "2AYUGP2D5",
"name": "md",
"group": "md",
"properties": {
"empty": ""
},
"interpreterGroup": [
{
"class": "org.apache.zeppelin.markdown.Markdown",
"name": "md"
}
],
"dependencies": []
},
{
"id": "2AY6GV7Q3",
"name": "spark",
"group": "spark",
"properties": {
"spark.cores.max": "",
"spark.executor.memory": "1g",
},
"interpreterGroup": [
{
"class": "org.apache.zeppelin.spark.SparkInterpreter",
"name": "spark"
},
{
"class": "org.apache.zeppelin.spark.SparkSqlInterpreter",
"name": "sql"
}
],
"dependencies": [
{
"groupArtifactVersion": "com.databricks:spark-csv_2.10:1.3.0"
}
]
}
]
}
```
|
### 通过设置 ID 获取注册的解释器设置
| 描述 | 该 GET 方法在服务器上返回已注册的解释器设置 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/setting/[setting ID] |
| 成功代码 | 200 |
| 失败代码 | 400 如果这样的解释器设置 id 不存在500 任何其他错误 |
| JSON 响应示例 |
```
{
"status": "OK",
"message": "",
"body": {
"id": "2AYW25ANY",
"name": "Markdown setting name",
"group": "md",
"properties": {
"propname": "propvalue"
},
"interpreterGroup": [
{
"class": "org.apache.zeppelin.markdown.Markdown",
"name": "md"
}
],
"dependencies": [
{
"groupArtifactVersion": "groupId:artifactId:version",
"exclusions": [
"groupId:artifactId"
]
}
]
}
}
```
|
### 创建一个新的解释器设置
| 描述 | 此 POST 方法使用注册的解释器将新的解释器设置添加到服务器。 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/setting |
| 成功代码 | 201 |
| 失败代码 | 400 如果输入 JSON 为空500 则为其他任何错误 |
| 示例 JSON 输入 |
```
{
"name": "Markdown setting name",
"group": "md",
"properties": {
"propname": "propvalue"
},
"interpreterGroup": [
{
"class": "org.apache.zeppelin.markdown.Markdown",
"name": "md"
}
],
"dependencies": [
{
"groupArtifactVersion": "groupId:artifactId:version",
"exclusions": [
"groupId:artifactId"
]
}
]
}
```
|
| 示例 JSON 响应 |
```
{
"status": "CREATED",
"message": "",
"body": {
"id": "2AYW25ANY",
"name": "Markdown setting name",
"group": "md",
"properties": {
"propname": "propvalue"
},
"interpreterGroup": [
{
"class": "org.apache.zeppelin.markdown.Markdown",
"name": "md"
}
],
"dependencies": [
{
"groupArtifactVersion": "groupId:artifactId:version",
"exclusions": [
"groupId:artifactId"
]
}
]
}
}
```
|
### 更新解释器设置
| 描述 | 此 PUT 方法使用新属性更新解释器设置 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/setting/[interpreter ID] |
| 成功代码 | 200 |
| 失败代码 | 500 |
| 示例 JSON 输入 |
```
{
"name": "Markdown setting name",
"group": "md",
"properties": {
"propname": "Otherpropvalue"
},
"interpreterGroup": [
{
"class": "org.apache.zeppelin.markdown.Markdown",
"name": "md"
}
],
"dependencies": [
{
"groupArtifactVersion": "groupId:artifactId:version",
"exclusions": [
"groupId:artifactId"
]
}
]
}
```
|
| 示例 JSON 响应 |
```
{
"status": "OK",
"message": "",
"body": {
"id": "2AYW25ANY",
"name": "Markdown setting name",
"group": "md",
"properties": {
"propname": "Otherpropvalue"
},
"interpreterGroup": [
{
"class": "org.apache.zeppelin.markdown.Markdown",
"name": "md"
}
],
"dependencies": [
{
"groupArtifactVersion": "groupId:artifactId:version",
"exclusions": [
"groupId:artifactId"
]
}
]
}
}
```
|
### 删除解释器设置
| 描述 | 此 DELETE 方法删除给定的解释器设置 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/setting/[interpreter ID] |
| 成功代码 | 200 |
| 失败代码 | 500 |
| 示例 JSON 响应 | {"status":"OK"} |
### 重新启动解释器
| 描述 | 此 PUT 方法重新启动给定的解释器标识。 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/setting/restart/[interpreter ID] |
| 成功代码 | 200 |
| 失败代码 | 500 |
| JSON 输入示例(可选) |
```
{
“noteId”:“2AVQJVC8N”
}
```
|
| 示例 JSON 响应 | {"status":"OK"} |
### 添加用于依赖关系解析的新存储库
| 描述 | 此 POST 方法添加新的存储库。 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/repository |
| 成功代码 | 201 |
| 失败代码 | 500 |
| 示例 JSON 输入 |
```
{
"id": "securecentral",
"url": "https://repo1.maven.org/maven2",
"snapshot": false
}
```
|
| 示例 JSON 响应 | {"status":"OK"} |
### 删除依赖关系解析的存储库
| 描述 | 此 DELETE 方法删除具有给定 ID 的存储库。 |
| URL | http://[zeppelin-server]:[zeppelin-port]/api/interpreter/repository/[repository ID] |
| 成功代码 | 200 |
| 失败代码 | 500 |
- 快速入门
- 什么是Apache Zeppelin?
- 安装
- 配置
- 探索Apache Zeppelin UI
- 教程
- 动态表单
- 发表你的段落
- 自定义Zeppelin主页
- 升级Zeppelin版本
- 从源码编译
- 使用Flink和Spark Clusters安装Zeppelin教程
- 解释器
- 概述
- 解释器安装
- 解释器依赖管理
- 解释器的模拟用户
- 解释员执行Hook(实验)
- Alluxio 解释器
- Beam 解释器
- BigQuery 解释器
- Cassandra CQL 解释器
- Elasticsearch 解释器
- Flink 解释器
- Geode/Gemfire OQL 解释器
- HBase Shell 解释器
- HDFS文件系统 解释器
- Hive 解释器
- Ignite 解释器
- JDBC通用 解释器
- Kylin 解释器
- Lens 解释器
- Livy 解释器
- Markdown 解释器
- Pig 解释器
- PostgreSQL, HAWQ 解释器
- Python 2&3解释器
- R 解释器
- Scalding 解释器
- Scio 解释器
- Shell 解释器
- Spark 解释器
- 系统显示
- 系统基本显示
- 后端Angular API
- 前端Angular API
- 更多
- 笔记本存储
- REST API
- 解释器 API
- 笔记本 API
- 笔记本资源 API
- 配置 API
- 凭据 API
- Helium API
- Security ( 安全 )
- Shiro 授权
- 笔记本 授权
- 数据源 授权
- Helium 授权
- Advanced ( 高级 )
- Zeppelin on Vagrant VM ( Zeppelin 在 Vagrant 虚拟机上 )
- Zeppelin on Spark Cluster Mode( Spark 集群模式下的 Zeppelin )
- Zeppelin on CDH ( Zeppelin 在 CDH 上 )
- Contibute ( 贡献 )
- Writing a New Interpreter ( 写一个新的解释器 )
- Writing a new Visualization (Experimental) ( 编写新的可视化(实验) )
- Writing a new Application (Experimental) ( 写一个新的应用程序( 实验 ) )
- Contributing to Apache Zeppelin ( Code ) ( 向 Apache Zeppelin 贡献( 代码 ) )
- Contributing to Apache Zeppelin ( Website ) ( 向 Apache Zeppelin 贡献(website) )