人工智能工程化落地的关键点之一,在于解决实在业务场景的实时批量预估和实时模型更新问题。更好更快的将线上实时数据转化为 AI 可用的特色,将减速 AI 利用落地的效率及成果。为此,OpenMLDB 和 Apache Pulsar 单干推出 OpenMLDB Pulsar Connector,实现稳固的流式集成,为高效买通实时数据到特色工程提供一条值得期待的清晰门路。
对于 OpenMLDB
OpenMLDB 是一个开源机器学习数据库,致力于闭环解决 AI 工程化落地的数据治理难题。自 2021 年 6 月开源以来,OpenMLDB 优先开源了特色数据治理能力,依靠 SQL 的开发能力,为企业提供全栈性能的、低门槛特色数据计算和治理平台。
OpenMLDB 蕴含 Feature Store 的全副性能,并且提供更为残缺的 FeatureOps 全栈计划。除了提供特色存储性能,还具备基于 SQL 的低门槛数据库开发体验、面向特色计算优化的 OpenMLDB Spark 发行版,针对实时特色计算优化的索引构造,特色上线服务、企业级运维和治理等性能,让特色工程开发回归于实质——专一于高质量的特色计算脚本开发,不再被工程化效率落地所羁绊。
对于 Apache Pulsar
Apache Pulsar 是下一代云原生音讯流平台,在 2018 年 9 月毕业成为 Apache 软件基金会顶级我的项目。从 2012 年诞生时,Apache Pulsar 就前瞻性地采纳了存储计算拆散、分层分片的云原生架构,极大加重用户在音讯零碎中遇到的扩大和运维艰难。
Pulsar 通过特地的设计和形象,对立地反对 Stream 和 Queue 两种音讯生产模式,放弃了 Stream 模式的高性能和 Queue 模式的灵活性。Pulsar 在保障大数据音讯零碎的性能和吞吐量的同时,提供了更多企业级的 Feature,包含不便的运维和扩大、灵便的音讯模型、多语言 API、多租户、异地多备、数据的强持久性一致性等等,解决了现有开源音讯零碎的很多不足之处。同时,这种设计对容器十分敌对,使得 Pulsar 成为流原生平台的现实抉择。
OpenMLDB-Pulsar Connector
【Connector 概述】
- 定位
OpenMLDB Pulsar Connector,高效买通实时数据到特色工程,大幅晋升数据应用效率、助力开发者构建实时数据管道、使企业更专一和更高效的摸索数据的商业价值。
在 Pulsar in OpenMLDB 的工作流中,Connector(地位如下图所示)帮忙开发者轻松地将音讯零碎 Pulsar 与开源机器学习数据库 OpenMLDB 联合应用,面向机器学习施展出 Pulsar 最弱小的实时价值。
2、性能
- Pulsar 能够应用 connector 来连贯其余零碎。Source connector 能够使其余零碎的数据流入 Pulsar,sink connector 能够将音讯流出至其余零碎。
- 能够通过 Connector Admin CLI 并联合 sources 和 sinks 子命令来治理 Pulsar connector(例如,创立、更新、启动、进行、重启、重载、删除以及其余操作)。
- JDBC OpenMLDB Connector 反对了 sink 性能,使 Pulsar 音讯能够写入到 OpenMLDB 在线存储中。
3、劣势
为了使 OpenMLDB 与 Pulsar 领有稳固的流式集成,OpenMLDB connector 具备诸多劣势,包含但不限于:
- 易上手。无需编写任何代码,只需进行简略配置,便可通过 OpenMLDB Pulsar Connector 将 Pulsar 的音讯流入 OpenMLDB。简化的数据导入过程能大幅晋升企业的数据应用效率。
- 易扩大。依据不同的业务需要,能够抉择在单机或集群上运行 OpenMLDB Pulsar Connector,助力企业构建实时数据管道。
- 可继续。OpenMLDB Pulsar Connector 简略的装置和部署过程,使企业能更专一和更高效地摸索数据的商业价值。
4、Connector 下载地址
OpenMLDB Pulsar:
Connectorhttps://github.com/4paradigm/OpenMLDB/releases/download/v0.4.4/pulsar-io-jdbc-openmldb-2.11.0-SNAPSHOT.nar
【Connector 演示】
1、流程介绍
- 创立 connector 前须要启动 OpenMLDB 集群,并创立表。
- 创立 Pulsar standalone,创立 sink,sink 配置中应用 OpenMLDB 集群的 JDBC 地址。并且,创立用于解析音讯的 schema。
- 向 Pulsar 发送音讯,来测试音讯是否能主动写入到 OpenMLDB。
2、关键步骤
以下仅列出应用此 connector 的关键步骤,具体阐明文档请参考 Pulsar OpenMLDB Connector 应用
步骤 1 | 启动 OpenMLDB 并创立表
应用 docker 或本地启动 OpenMLDB 集群,并创立表,作为 connector 导入的地址。如图所示,在 pulsar_test 数据库中,创立了 schema 和 taxi trip demo 统一的表 connector_test。
步骤 2 | 启动 Pulsar,创立 sink 和 schema
启动 Pulsar Standalone 胜利后,即可应用 connector 创立一个 sink,connector 如果事后装载进入 Pulsar,能够应用 ”jdbc-openmldb” 的 sink type,或是应用 ”archive” 指定 connector nar 文件门路。演示中应用后者来创立。创立 sink 的配置中还需指定 OpenMLDB 的表地址,所以配置状况如下:
因为 OpenMLDB 表数据是有 schema 的,所以还须要在 pulsar 中为 ”test_openmldb” 配置好 schema,才能够顺利将音讯解析为合乎 O penMLDB schema 的数据并插入。
咱们为 ”test_openmldb” 配置 JSON Schema,各列和 OpenMLDB 的列属性统一。配置文件如下:
sink 和 schema 均创立实现后,只有向 topic “test_openmldb”(sink 配置图的 ”inputs” 配置项)发送音讯,就会主动写入到 OpenMLDB 集群。
步骤 3 | 测试
前两步实现后,就能够进行测试了。测试用 Producer 要害代码如下:
咱们用 Producer 程序向 Pulsar 写入两条 JSON Messages。而后,咱们能够在 OpenMLDB 在线存储中查问到这两条数据。这阐明了,connector 运行失常,能够将流入 Pulsar 的音讯主动 sink 到 OpenMLDB 在线存储中。
写在最初
OpenMLDB 上下游生态体系
为更好升高开发者应用 OpenMLDB 的门槛,OpenMLDB 社区将继续打造面向上下游技术组件的生态圈,为开发者提供更多简略易用的生态 Connector(如下图所示):
- 面向线上数据生态,如 Kafka,Flink,RabbitMQ,RocketMQ 等
- 面向离线数据生态,如 HDFS,HBase,Cassandra,S3 等
- 面向模型构建的算法、框架,如 XGBoost,LightGBM,TensorFlow,PyTorch,Scikit Learn 等
- 面向机器学习建模全流程的调度框架、部署工具,如 Airflow,Kubeflow,DolphinScheduler,Prometheus,Grafana 等
OpenMLDB Roadmap
v0.5.0
OpenMLDB 社区将于 4 月底公布 v0.5.0 版本([[DEV] OpenMLDB v0.5 Roadmap · Issue #1506 · 4paradigm/OpenMLDB · GitHub](https://link.zhihu.com/?targe…)),届时 OpenMLDB 将具备新个性如下:
- 窗口预聚合技术,指数级晋升长窗口聚合性能
- 欠缺的监控, trace, 和 profiling 能力,在企业级应用环境中大幅晋升稳定性、可观测性、和可剖析性
- 线上存储引擎可插拔以适配不同业务需要,既能够反对基于内存的高性能存储引擎,也能够反对基于外存的大容量低成本存储引擎,还能够反对基于长久内存的存储引擎以在性能和老本间保持平衡
- 用户自定义函数(UDF)反对,大幅晋升易用性和适用性
- 上下游数据源生态整合,提供线上数据源的 Kafka, Pulsar connectors
AI 的提高须要付出多方面的致力,而开放式合作是其中的关键环节,咱们期待来自开发者的奉献。欢送大家退出 OpenMLDB 社区,扫描下方二维码可退出社区技术交换微信群。
或可官网社区板块最下方找到入群通道 https://openmldb.ai/community/
相干浏览
https://github.com/4paradigm/OpenMLDB/issues/1506
(OpenMLDB Pulsar Connector)
https://openmldb.ai/docs/zh/v0.4/about/index.html
(OpenMLDB 文档)
Built-in connector · Apache Pulsar
(Apache Pulsar connector 文档,OpenMLDB Pulsar Connector 地位如图所示)