4 天肝出一个数据应用,可能吗?| StartDT Hackathon
以「基于 SimbaOS Kernel 的应用创新」为主题,2023 年秋季 StartDT Hackathon 近日圆满收官。
本季黑客马拉松不仅有多次蝉联冠军的算法团队参战,有过去惜败的队伍卷土重来,还吸引到了制造、政企、泛零售等行业线开发者“攻擂”,携丰富的行业理解和实践经验,基于 SimbaOS Kernel 开发应用。
索引
· 赛题背景及规则介绍
· 参赛成果 1-2:DataSimba 的移动端长啥样?
· 参赛成果 3:据说文档很简单,不如让大模型帮我对接 SimbaOS Kernel。
· 参赛成果 4:向数据驱动的自运维,迈出一小步。
· 参赛成果 5-6:制造 &政企行业线,站在商业与技术交叉点的创新应用这样造。
赛题背景:SimbaOS Kernel 是个什么“核”?
SimbaOS Kernel(数据云操作系统内核),为数据云平台 DataSimba*等数据产品提供封装好的标准能力。
与计算机操作系统相似的是,作为“中间层”,它提供对接数据应用的北向接口和对接底层资源的南向接口,并有一套抽象的对象体系,来提升数据系统的可维护性、可复用性、可扩展性。
略有不同的是,这套对象体系是从数据业务视角设计的——将大数据领域的存储、计算、服务、调度、安全、租户等常用功能,抽象为一组标准对象模块。举个例子,“资产检索”功能直接调用了元数据域的“搜索”对象,“分级多域”则得益于空间域的“工作空间”“项目”等对象。
*DataSimba 自 R4 系列以来,均更新为 OS 的分层架构。除了 DataSimba,DataBlack、SimbaMetric 等数据产品同样以 SimbaOS Kernel 为内核。
面向开发者,SimbaOS Kernel 提供丰富的对接方式,以便通过 SimbaOS OpenAPI 快速调用能力构建数据应用程序。
· 提供多种编程语言(Java、Python、Node.js 等)和开发框架的 SimbaOS SDK(封装好的程序依赖包),可通过 SDK 调用 OpenAPI;
· 支持通过 Http 的方式直接调用对应的 OpenAPI 接口,效果与 SDK 相同。
基于 SimbaOS Kernel 快速开始项目的示例
本季黑客松向参赛团队开放了 3 个域(存储域、任务域、空间域)12 个对象共 72 个接口,供参赛选手们“搞事情”。
下文选取部分小组成果介绍。
没带电脑看不了 DataSimba?
打开手机,一目了然
“光宗耀组 2.0”和“没想好小组”不约而同选择从移动端切入,前者聚焦数据运维,后者关注资产检索,让没带电脑的工程师们“无处可逃”。
# 光宗耀组 2.0:运维指标小程序
在去年春季的黑客马拉松,有一支参赛队伍开发了 DataSimba 的运维指标小程序,各项目任务执行情况、任务告警信息等均一目了然。
这一次,他们重组后卷土重来,把成果升级为 DataSimba 任务运维小程序:
· 展现完整的任务运行情况,包含今日实例运行情况、任务运行 Top10 等看板;
· 支持展示任务实例详情,包括名称、责任人、开始和结束时间、调度类型等;
· 支持按照运行状态、调度周期等条件,检索对应实例;
· 支持对任务实例进行重跑、终止运行等基础操作。
(demo 展示图 2 张 gif)
“光宗耀组 2.0”介绍,2.0 最大的变化在小程序不仅能“看”,还能“用”(交互、操作),具备了支持用户在手机端完成简单任务运维的能力。同时,相较去年成果,今年进一步提升了小程序的交互体验,降低了用户的上手难度。
接下来,“光宗耀组 2.0”还将从数据安全权限控制、用户体验优化、增设通知告警能力、拓展实时类型任务等维度优化成果,产出客户真正用得上的“3.0”移动端 DataSimba:
· 在 DataSimba 权限体系中增设微信账号控制,保障移动端使用安全;
· 目前仅支持查看周期调度任务,将进一步接入实时任务,提供实时数据刷新,支持实时查看任务指标信息的变化;
· 提供更丰富的指标看板和操作交互,进一步满足用户运维需求;
· 结合 SimbaOS Kernel 现有的消息告警等能力及小程序的服务通知,增加向用户告警的通路。
# 没想好小组:资产检索平台
与“光宗耀组 2.0”的小程序不同,“没想好”小组选择用 H5 打造移动端。
谈及为什么采用了 H5 而不是微信小程序或基于鸿蒙 OS 的相关展现,“没想好”小组表示,H5 对并发的限制更小,对各型号设备和环境适配更好。
基于 SimbaOS Kernel 的元数据域*接口,“没想好”小组开发了 DataSimba 在移动端的资产检索平台,用户可以随时随地使用手机操作:
· 概览资产:提供任务实例、作业实例等构成的环状图;
· 按需检索:支持按项目、资产类型或资产名称检索;
· 查看详情:支持查看库、表、字段,点击字段还可查看详情,并支持查看数据血缘。
(demo 动图 2 张)
“没想好”小组介绍,基于 SimbaOS Kernel 的空间域获取项目信息,通过元数据域完成资产检索功能,并强调:基于 H5 开发不仅是兼容性强、维护简单,它打通了 DataSimba 的账号权限体系,借助 SimbaOS Kernel 账户域完成统一管控。相较对接到微信小程序,有更强的安全机制保障。
虽然“没想好”小组从项目完整度到成果展示都表现不错,评委、资深战略咨询专家何夕依旧给出锐评:“对用户实际使用场景和需求调研不够充分,例如,哪一类用户需要在手机端进行资产检索甚至查看血缘关系?如果在移动端建设数据资产看板,需要为哪些用户提供哪些交互?未来,希望‘没想好’小组能充分‘想好’,如何利用本次的实践成果及元数据域的可扩展性,设计出实用性更强的数据资产工具。”
*元数据域并未对本次赛事正式开放接口,“没想好”、“基础服务部”两组均为“偷跑”。
大模型能读懂的事儿,不劳我出马
SimbaOS Kernel 提供了丰富的对接方式和简明易懂的使用文档,以便开发者调用能力。
“小露一手”组却大手一挥:谢邀,让大模型来做就行。
该组探索了自然语言通过自研大模型自动调用 SimbaOS OpenAPI(Intelligent dialogue system based on text-to-API technology with SimbaOS Kernel),选择了“对 DataSimba 上各指标进行交互探查”这一场景,对大模型能力进行验证。具体来说,包括大模型通过接口文档完成自动化编程,写出调用 API 的详细参数,以及基于接口返回内容,分析错误类型。
进一步,“小露一手”还增加了大模型对语音输入的相关支持,可进行噪音处理,自动校正用户语音中的表达误差,识别真正意图,并根据接口返回的结果给出准确回答。例如,用户语音输入“我呃阿巴阿巴想看看由寄个实力”,大模型可自动识别为“我想看看有几个实例”,调用 SimbaOS OpenAPI 查询实例数量,以文字和语音形式回复给用户。
Demo 截图
“大模型能理解并生成自然语言文本,用户无需钻研 SimbaOS OpenAPI 和 Kernel 各个域的能力详解,就能满足用户的初阶需求。”
组长步方介绍,项目的技术难点在于让大模型理解 SimbaOS Kernel 的接口文档。因需要执行 Text to code 任务,参数书写一旦有丝毫错误,都可能导致整条链路不可用。因此“小露一手”组利用自研的提示工程技术,有效减少了这类错误的发生——在限定接口范围的前提下,表现几乎 0 失误。
“小露一手”组坦言,目前对于 SimbaOS OpenAPI 的调用仍然较为初阶,只能满足部分简单场景的查询,接下来将继续拓展针对指标探查的能力范围,例如支持模糊查询、DDL 编写等;此外,除了现在支持的“查”,未来将继续探索基于自然语言的“增删改”能力,让用户的日常数据工作更简单。
为运维工程师推出了
数据驱动的“减负+提效”工具
今年奇点云的运维服务体系升级,推出了数据运维、系统运维等一系列“企业级”服务*。
*该项服务属增购服务,且需经过客户官方授权许可,方可提供代运维支持。
据不完全统计,目前服务团队需要对接 50 多个数据运维的项目,部分项目每天都会出现问题,例如:
· 实例一直在运行,到底运行完没有?
· 明明条件都满足,为什么实例没有开始执行?
· 实例运行失败,重跑了吗?重跑成功了吗?
过去的常见做法是:出现任务异常后反馈工单,收集工单信息后人工介入,复现工单问题,进行排查处理。
如何为数据运维服务提质提效,减少对前期手动反馈的依赖,更及时地发现并定位问题,甚至在客户业务感知前“无痛”处理问题?
本次黑客松,“基础服务部”小组聚焦运维自动化,基于 SimbaOS Kernel 研发了针对数据运维的“自运维监控插件”,由系统自动诊断问题,根据预设的异常告警规则 24 小时自动告警。
数据运维服务流程图·简化版
“自运维监控插件”架构设计如下:
针对数据运维场景,我们需要自动获取实例的生成、运行、基线数据及历史数据,使用相关运维模型进行自动化分析,并将实时监控发现的异常通过钉钉、邮件、电话等方式告警。
映射到 SimbaOS Kernel 的对象体系中即为:元数据域提供平台元数据和“基线预测模型”、“作业异常检测模型”等分析模型;任务域提供任务、作业、实例生成的实时信息;依托空间域的“消息”对象来实现告警。
“自运维监控插件”采用了 SimbaOS Kernel 提供的自有模型,包括元仓基线预测模型、作业时间异常检测模型等等。这些模型沉淀自奇点云资深工程师们的实践和业内成熟经验,能为数据运维工程师提供更准确的分析结论,甚至“防患于未然”(例如实例正常完成,但判断接下来可能会破基,预警以便提前处置)。
告警示意图
“基础服务部”小组介绍,本轮比赛时间所限,插件 demo 仅对作业运维进行了设计与测试,但平台运维场景的可行性也已得到验证。
评委、资深技术专家牧然评价:“基础服务部”小组展现了我们产品的一个关键方向——数据驱动的自运维。插件可用于所有的客户项目,运维监控的效率、时长和覆盖面都大大提升,有效规避了人工难免出现的疏漏。插件值得进一步打磨优化,助数据云的“企业级”更上一层楼。
行业线出手,就知有没有
与往季不同的是,本次黑客松还吸引到了政企、制造、泛零售等行业线工程师加入,基于 SimbaOS Kernel 的能力大展身手,共创“站在商业和技术交叉点”的数据应用。
# 政企特战队:数据共享交换平台,新增文件资源管控能力
数据共享交换平台是政企行业线基于数据云平台 DataSimba 研发的工具,在政企客户中尤为常用。用户不需要掌握复杂的数据技术,就可以基于数据目录,按权限下载经过治理和脱敏处理的数据,满足日常工作需求。
在本次黑客松,“政企特战队”对接了数据共享交换平台与 SimbaOS Kernel 的空间域、存储域,增加了平台可用的数据源,提升了平台的文件资源管控能力。
图:用户创建文件类资源流程
组长水滴介绍,SimbaOS Kernel 已支持文件类资源,因此数据共享交换平台无需做更多对接和配置,能直接增加对文件的操作支持。接下来,共享交换平台还将全面对接 Kernel 的其他域,例如,结合元数据域,把文件作为客户的数据资产之一进行管理,以及在共享交换平台增加对元数据的资源管理能力。
# 流批时刻:品质监控中心的流批时序一体能力建设
奇点云制造行业线产品 RPI(Real-time Production Index,实时生产监控平台),是为制造型企业生产管理领域打造的数据分析产品,把原本分散在各系统设备的数据清洗、治理、建模,帮助管理人员掌握生产过程情况,以数据分析辅助决策。此前,RPI 已完成事业部、基地、车间、部门等四类场景的建设——角色不同,视角不同,所采用的数据和分析模型也不完全相同。
本次黑客松,“流批时刻”小组选择进一步聚焦设备数据,勇闯最小粒度的“无人区”,基于 SimbaOS Kernel 建设了 RPI 下设的“品质监控中心”。
“流批时刻”小组介绍,品质监控中心在技术方案设计上有几个要点:
1. 接入时序数据库
分析制造业设备数据需要接入时序数据库。小组利用 SimbaOS Kernel 提供的接口,简化了数据源集成的过程——采用 Flink Jar 接入时序数据库数据到 Kafka,解决目前暂无法直接对接时序数据库的问题。
2. 用实时架构实现复杂数学公式
制造型企业的分析和预警条件较为复杂,例如:
·检测值的分布需符合正态分布。在正态分布 X~N(μ, σ²) 中(其中μ为平均值,σ为标准差),99.73%的检测值都落在±3σ区间内,超出该范围的检测值则视为异常检测值。
· 有 8 大预警规则,对标 Minitab 计算公式,包括“连续 15 个距离中心限(任一侧)1 个标准差以内”,“5 个点中有 4 个点,距离中心限(同侧)大于 1 个标准差”等等。
“流批时刻”小组采用 FlinkSQL 实现了复杂数学公式的实时计算,通过预警规则判断设备检验是否正常,将数据实时同步到关系型数据库,以实时监控产线工艺的稳定性。
3. 可视化大屏实时展示
基于对制造行业需求的理解,“流批时刻”通过奇点云的数据可视化工具 DataMaleon 建设了数据大屏,监控粒度细化到了设备、工序、检验项,能实时展现 Xbarx 波动图、CPK 指标等,当预警被触发时则立即亮灯提示,帮助生产人员快速发现问题。
受黑客松时间所限,本次仅完成通过大屏告警,接下来,“流批时刻”小组还将继续深化分析应用层能力,实现“预警—处理—返回处理结果”的闭环。
可视化大屏 demo 局部截图
组员雷隐谈到,本次黑客松利用 SimbaOS Kernel 的空间域来创建项目,利用存储域接口上传 Jar 包并进行管理,由任务域完成任务、作业的生成、提交、运行及调度,简化了底层对接及数据项目和任务管理的复杂性,减少了从部署大数据平台到任务运行的全链路耗时,方才让“4 天肝出 1 个数据产品”成为可能。此外,制造业数字化分析场景多,但在底层技术建设上存在一些共性,SimbaOS Kernel“保存”了这些共性,供未来的制造业数据产品建设复用。
本次黑客松共决出 3 支优胜队伍,喜提奖金:“流批时刻”高票夺冠,“基础服务部”第二,“没想好”小组第三。
评委、奇点云 CTO(也是 SimbaOS Kernel 的一号责任人)地雷谈到,“流批时刻”从需求洞察、架构设计、产品实现以及最终成果,具备极高的完整度,为我们带来了真正“站在商业和技术交叉点”的创新数据应用。所有参赛团队的真实体验反馈也激励和要求 SimbaOS Kernel 提升能力,为数据应用开发者们提供更多支持。
*本次黑客松还有创新成果尚未发布,留待今年 12 月的 StartDT Day 发布会上揭晓。敬请期待。
获奖感言
“流批时刻”小组:
感谢主办方提供了这次平台和机会,我们深知,这次获奖不仅仅是一份荣誉,更是一份责任。今后需要更加努力发挥创造、刻苦精神。在这次项目中,我们突破了传统,将生产数据实时分析,提供质量的实时监控,解决了线下处理分析滞后的问题。未来我们还会继续优化,提升产品企业级能力,实现告警闭环等更多功能模块,尽快为客户提供更多易用的产品。
“基础服务部”小组:
在这次比赛中,SimbaOS Kernel 为我们注入了自运维监控的魔力,让我们能够提前发现问题、高效解决问题,真正实现了成本的削减和效率的提升。未来,我们将继续加强跨部门的协作,不断探索创新的解决方案,助客户实现降本增效。
“没想好”小组:
小组内更强调的是创新和灵活性,点子和创意不断,所以我们还“没想好”做什么。组名不重要,重要的是我们组内同学适应能力强,能够快速拥抱变化,并且适应新的情况。
本次黑马松本着交出一个完整的作品的初衷(没想拿奖),没想到对手失误了,侥幸获得了第三名。我们同时也是 SimbaOS Kernel 的开发者,在比赛中发现了在使用场景上需要优化的内容,已经排期优化中…
“小露一手”组:
惜败。
“光宗耀组 2.0”:
惜败,时隔一年再次品尝到失败的滋味,陌生又熟悉 doge。(如果我们现场开放扫码试用能支持的并发量大一点,应该就能获奖了。)
版权声明: 本文为 InfoQ 作者【奇点云】的原创文章。
原文链接:【http://xie.infoq.cn/article/bcfc0f8d114d22dd1bfc54d8a】。未经作者许可,禁止转载。
评论