Alink-流批一体机器学习算法平台
是什么
Alink是基于Flink流批一体的机器学习平台,提供一系列算法,可以帮助处理各种机器学习任务
Alink和FLink有什么关系?
借助Flink在批流一体化方面的优势,Alink能够为批流任务提供一致性的操作。
FlinkML 是 Flink 社区现存的一套机器学习算法库,这一套算法库已经存在很久而且更新比较缓慢。Alink 是基于新一代的 Flink,完全重新写了一套,跟 FlinkML 没有代码上的关系。
参考:
https://blog.csdn.net/qq_43001627/article/details/105121971
https://gitee.com/mirrors/Alink#https://gitee.com/link?target=https%3A%2F%2Fwww.yuque.com%2Fpinshu%2Falink_tutorial
如何使用
Alink除了提供Java API也提供了PyAlink;
Alink提供Java API和Python API两种方式进行调用,
Java API方便工程人员快速将Alink接入到现有系统中,
Python API也叫PyAlink是方便提供机器学习同学完成快速的实验。
参考资料:
https://z.itpub.net/article/detail/E422074D2FA4A2A884BD173D6D02D4E0
https://www.bilibili.com/video/BV17E411p7BX?spm_id_from=333.337.search-card.all.click
https://baijiahao.baidu.com/s?id=1667003643400852693&wfr=spider&for=pc
maven创建Alink
参考链接:
http://t.csdn.cn/W5Kh7
在java编辑器中创建maven项目。要使用alink只需修改pom。xml文件,此依赖针对flink1.10版本
<dependencies>
<dependency>
<groupId>com.alibaba.alink</groupId>
<artifactId>alink_core_flink-1.10_2.11</artifactId>
<version>1.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-scala_2.11</artifactId>
<version>1.10.0</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-table-planner_2.11</artifactId>
<version>1.10.0</version>
</dependency>
</dependencies>
//即可使用alink相关类库,例如:
https://github.com/alibaba/Alink/blob/master/examples/src/main/java/com/alibaba/alink/KMeansExample.java
基于PyFlink的Alink
参考链接:
https://github.com/alibaba/Alink#%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B--pyalink-%E4%BD%BF%E7%94%A8%E4%BB%8B%E7%BB%8D。
在安装pyAlink时:
确保使用环境中有Python3,版本限于 3.6,3.7 和 3.8。
确保使用环境中安装有 Java 8。
方法1:Jupyter notebook
安装jupyter
在windows环境下:
https://www.cnblogs.com/shaosks/p/10118068.html
在linux环境下:(此处用的是云服务器)
你可以自己下载python,然后下载jupyter:
https://www.cnblogs.com/scaven-01/p/11973721.html
也可以直接下载Anaconda 发行版来安装 Python 和 Jupyter
https://zhuanlan.zhihu.com/p/97715788
https://docs.jupyter.org/en/latest/install/notebook-classic.html
设置密码的步骤:
生成密码:
#ipython
in【1】 from notebook.auth import
in[2] passwd()
enter password:
verify password:
先要输入这两句话:from notebook.auth import 和 passwd()
然后自己输入密码(随意设置)
然后会生成加密的密码密文
初始化jupyter,生成配置文件,然后修改文件:(文件位置)
# python -m jupyter notebook --generate-config
#vi .jupyter/jupyter_notebook_config.py
然后加入这几条:
指定所有ip可以访问:
c.NotebookAPP.ip='*'
将使用自己的浏览器关掉,因为此处用的云服务器的公网ip,所以linux命令行版本没有浏览器
c.NotebookAPP.open_brower=Flase
这里将刚才生成的密码的密文加入到里面
c.NotebookAPP.password='sha1:xxxxxxx'
c.NotebookAPP.port=8888 设置访问端口
安装并使用Pyalink
linux下执行命令:
easy_install https://alink-release.oss-cn-beijing.aliyuncs.com/v1.0.1/pyalink-1.0.1_flink_1.9.0_scala_2.11-py3.7.egg
使用步骤:
在命令行中启动Jupyter:jupyter notebook,并新建 Python 3 的 Notebook 。
导入 pyalink 包:
from pyalink.alink import *。
使用方法创建本地运行环境:
useLocalEnv(parallism, flinkHome=None, config=None)
其中,参数 parallism 表示执行所使用的并行度;flinkHome 为 flink 的完整路径,一般情况不需要设置;config为Flink所接受的配置参数。运行后出现如下所示的输出,表示初始化运行环境成功:
JVM listening on ***