导读为晋升 OpenMLDB 的易用性、便捷性,升高开发者的应用门槛,打造更顺滑高效的MLOps工作流,OpenMLDB 始终以来都在踊跃增进社区间单干,盲目生态上下游买通。明天的这篇文章要和大家介绍的就是 OpenMLDB 又一新生态组件——OpenMLDB Airflow Connector!这个工具是 OpenMLDB 和风行的生产级调度编排零碎 Apache Airflow 踊跃整合的产物,也将是不便开发者打造端到端 MLOps 工作流的另一利器。接下来 OpenMLDB PMC 黄威会为大家简要介绍 OpenMLDB Airflow Connector 并演示其部署应用流程。OpenMLDB Airflow Connector 劣势OpenMLDB Airflow Connector 链接了 OpenMLDB 和 Airflow,使开发者能够在 Airflow 中间接应用 OpenMLDB,不仅在操作上便捷易用,更重要的是汇合了两大产品的劣势,碰撞出了更亮眼的火花:应用简略易于治理:Airflow 简洁慷慨的 UI 界面和丰盛的命令工具帮你辞别部署测试的繁琐,而 OpenMLDB 以 SQL 为外围的开发管理体系助力开发者进一步升高学习老本和应用门槛,更加易用易管。AI流程自动化解决:OpenMLDB+Airflow打造端到端的MLOps工作流,让数据和特色的解决和流动更加自动化,帮忙开发者远离调试异样、专一外围业务,更加靠近开发即上线的指标。灵活性强自由度高:OpenMLDB 反对用户自定义函数,而 Airflow 也欢送开发者用代码构建任何须要的感应器和解决工具,将 OpenMLDB 疾速接入 Airflow 后整个机器学习流程的自由度被进一步开发。开发者利用更加灵便自在,可操作性极大加强。流程展现关键步骤咱们应用 Airflow dag 实现 talking data demo 中的特色计算与上线,并应用 talking data demo 的 predict server 来进行上线后的实时推理测试。下载 demo 用文件启动 OpenMLDB,predict server,airflow standaloneairflow web 页面中创立 connection,运行 dagpredict 测试具体展现下载 demo 用的文件wget https://openmldb.ai/download/... zxf airflow_demo_files.tar.gzls airflow_demo_files运行容器,并裸露 Airflow web 端口,以及将文件映射到 docker 容器内。docker run -p 8080:8080 -v pwd
/airflow_demo_files:/work/airflow/dags -it 4pdosc/openmldb:0.6.0 bashOpenMLDB 镜像中还未包含 Airflow 与 provider,所以须要下载 Airflow 与 OpenMLDB provider,再启动 Airflow。pip3 install airflow-provider-openmldb源数据筹备,example dag 中的源数据放在 /tmp 目录,咱们间接将数据拷贝到 /tmp 应用,防止批改 dag 文件。cp /work/talkingdata/train_sample.csv /tmp/启动 OpenMLDB。/work/init.sh启动 predict server,应用 /work/talkingdata/ 中的 predict server。python3 /work/talkingdata/predict_server.py --no-init > predict.log 2>&1 &启动 Airflow,演示能够应用 standalone 模式。export AIRFLOW_HOME=/work/airflowcd /work/airflowairflow standalone Airflow standalone 运行输入将提醒登录用户名和明码,例如
登录 Airflow Web 界面 http://localhost:8080 ,并输出用户名和明码。dag 将被主动加载,点击 example_openmldb_complex,能够点击 Code 查看 dag 的详情。
能够看到 OpenMLDB operator 所需 connection 的 id 为 openmldb_conn_id。创立 connection openmldb_conn_id。在治理界面中点击 connections,并增加 connection。
Airflow OpenMLDB Provider 是连贯 OpenMLDB Api Server 的,所以此处配置中填入OpenMLDB Api Server 的地址,而不是 zookeeper 地址。具体配置如下所示:
创立实现后的 connection 如下图所示:
运行dag,即实现一次训练模型、sql部署与模型部署。胜利运行的后果,相似下图:
测试:导入在线数据Airflow DAG 中实现了 SQL 和模型的上线。但在线存储中还没有数据,所以咱们须要做一次在线数据导入。curl -X POST http://127.0.0.1:9080/dbs/exa... -d'{"mode":"online", "sql":"load data infile \"file:///tmp/train_sample.csv\" into table example_table options(mode=\"append\");"}'这是一个异步操作,但因为数据量小,也会很快实现。通过SHOW JOBS也能够查看导入操作的状态。curl -X POST http://127.0.0.1:9080/dbs/exa... -d'{"mode":"online", "sql":"show jobs"}'执行 python3 /work/talkingdata/predict.py 进行一次预测,预测将应用新部署好的 SQL 与模型。
装置部署pip install airflow-provider-openmldb总结本文为大家介绍了 OpenMLDB Airflow Connector,并展现了它的部署装置和操作运行流程,心愿可能帮忙大家理解 OpenMLDB Airflow Connector 性能作用和劣势特点。期待各位继续关注 OpenMLDB,OpenMLDB 社区将继续打造面向上下游技术组件的生态圈,为开发者升高应用门槛,提供更多简略易用的连贯工具。
面向线上数据生态,如 Pulsar(已实现),Kafka(已实现),RocketMQ(已实现),Flink,RabbitMQ 等面向离线数据生态,如 HDFS,HBase,Cassandra,S3 等面向模型构建的算法、框架,如 XGBoost,LightGBM,TensorFlow,PyTorch,Scikit Learn 等面向机器学习建模全流程的调度框架、部署工具,如 DolphinScheduler(已实现),Airflow(已实现),Byzer(已实现),Kubeflow,Prometheus,Grafana 等相干链接✦OpenMLDB 官网https://openmldb.ai/OpenMLDB github 主页https://github.com/4paradigm/... 官网https://airflow.apache.org/Ai... github 主页https://github.com/apache/air... 微信交换群