Byzer-lang 支持插件安装,删除,获取列表等。安装和删除插件的语法如下

 

!plugin <pluginType> <operation> [-] "<pluginName>";

  • pluginType 表示插件类型,目前有 app ds et 三种。
  • operation 表示操作类型,add remove
  • pluginName 表示插件名称。
  • 安装插件时,请在插件名称前加横杠,并以空格分割。删除时,无需空格。

安装插件前,请配置 Byzer-lang 数据湖目录 streaming.datalake.path,支持本地文件系统,HDFS,对象存储。 Byzer-lang 下载插件至数据湖目录,并热加载之。获取列表语法如下:

!plugin list [pluginType];

若不指定插件类型,Byzer-lang 返回所有插件。

网络安装插件

如果你内网(也可以通过自己设置代理)可以访问 http://store.mlsql.tech,那么你可以直接使用命令行方式在 Byzer Notebook 里安装。

比如如果需要安装 excel 支持,一行命令在 Byzer Notebook 里即可搞定:

!plugin ds add - "mlsql-excel-3.0";

接着就可以用读取和保存 excel 格式数据了:

load excel.`/tmp/upload/example_en.xlsx` 
where useHeader="true" and 
maxRowsInMemory="100" 
and dataAddress="A1:C8"
as data;

select * from data as output;

更多可用插件到这里来看byzer-extension

离线安装插件

2.0.1-SNAPSHOT、2.0.1 及以上版本支持。

考虑到很多场景,我们需要引擎启动的时候就具备某个插件的功能,亦或是我们没办法访问外部网络,这个时候就可以通过离线方式安装插件。

下载Jar包并且上传到你的服务器

wget http://store.mlsql.tech/run?action=downloadPlugin&pluginType=MLSQL_PLUGIN&pluginName=byzer-objectstore-oss-3.3&version=0.1.0-SNAPSHOT

值得注意的是,在上面的参数中,唯一需要根据场景修改的是 pluginName和 version . 可以关注我们的插件项目: Byzer Extension

下载的插件包,放到我们发行版的 plugin 目录即可。

启动时配置jar包以及启动类

除了对象存储类的插件,为了能够让插件生效,我们需要在启动脚本里, 配置插件主类(这里以Excel插件安装为例):

-streaming.plugin.clzznames tech.mlsql.plugins.ds.MLSQLExcelApp

如果你直接使用 spark-submit 进行提交,你需要使用 --jar 将我们上一个步骤的jar包带上:

--jar <your file path>/mlsql-excel-2.4_2.11.jar

注意,jar应该放到程序执行目录下,否则jvm启动会找不到该类

获取列表

Byzer-lang 返回已安装插件,展示插件名称,安装目录,插件类型,版本。语法参考插件日常操作。 例如,执行下面语句后,返回所有已安装插件。

!plugin list;

img.png

 

删除插件

执行 !plugin <pluginType> remove <pluginName> 删除已安装插件。若插件未安装,系统返回 " is not found" 错误信息。一个例子如下:

!plugin app remove "mlsql-shell-3.3";

执行成功,系统返回删除后插件列表。

 

 

Logo

更多推荐