尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
OpenMetadata AutoPilot 应用配置指南:`AutoPilotAppConfig` 字段说明与底层实现
OpenMetadata AutoPilot 应用配置指南AutoPilotAppConfig字段说明与底层实现【免费下载链接】OpenMetadataThe Open Context Layer for Data and AI , OpenMetadata is the open platform for building trusted data context and business semantics for humans, AI assistants, and agents.项目地址: https://gitcode.com/GitHub_Trending/op/OpenMetadata导读AutoPilot 是 OpenMetadata 提供的一款内置应用internal app它的核心价值在于当你只需要定义一个数据服务Service的连接信息时AutoPilot 会自动完成该服务相关管线Ingestion Pipeline的配置、部署与触发运行以合理的默认值将元数据、血缘、用量等信息自动接入 OpenMetadata之后你可以再按需调整任何配置。本指南以openmetadata-ui/src/main/resources/ui/public/locales/en-US/Applications/AutoPilotApplication.md为骨架完整讲解 AutoPilot 应用的AutoPilotAppConfig配置模型尤其是active与entityLink两个字段并结合仓库源码深入说明这些配置在安装、初始化、按需触发与工作流执行中的实际作用帮助你掌握 AutoPilot 的开启、调度、定向触发与停用机制。一、配置文档原文AutoPilotAppConfigAutoPilot 应用的配置说明文档位于 AutoPilotApplication.md其正文核心内容如下AutoPilotAppConfigAutoPilot 应用的配置模型。active布尔值决定 AutoPilot Workflow 是否处于激活状态。$$sectionActive $(idactive)Whether the AutoPilot Workflow should be active or not.$$可以看到官方文档非常精炼仅围绕active一个字段展开。但在实际代码中AutoPilotAppConfig还包含第二个重要字段entityLink服务实体链接用于按需定向触发。接下来我们以该文档为线索深入仓库源码完整还原 AutoPilot 的配置全貌与运行机制。二、AutoPilotAppConfig配置模型全解AutoPilotAppConfig的 JSON Schema 定义位于 autoPilotAppConfig.json编译后对应的 Java 类型为org.openmetadata.schema.entity.app.internal.AutoPilotAppConfig。该模型共包含三个字段字段类型默认值必填说明typestring枚举AutoPilotApplication否应用类型标识枚举值固定为AutoPilotApplicationactivebooleantrue是是否激活 AutoPilot Workflow即文档中重点讲解的字段entityLinkentityLink引用../../../../type/basic.json中的entityLink定义无否服务实体链接用于指定按需触发 AutoPilot 工作流的目标服务其中type字段在 Schema 的definitions.autoPilotAppType中声明为字符串枚举唯一合法值为AutoPilotApplication默认值即AutoPilotApplicationadditionalProperties被设为false意味着传入未声明的额外字段会被拒绝配置必须严格遵循该模型。在仓库的默认应用定义 AutoPilotApplication.json 中默认的appConfiguration如下{ type: AutoPilotApplication, active: true, entityLink: null }而市场定义文件 appMarketPlaceDefinition/AutoPilotApplication.json 同样内置了这一份默认配置并声明了应用元信息appType为internal、scheduleType为NoSchedule、className指向org.openmetadata.service.apps.bundles.autoPilot.AutoPilotApp。这意味着 AutoPilot 不是靠定时调度运行的而是依赖其内部治理工作流Governance Workflow的事件驱动机制。三、active字段的作用挂起与恢复工作流active是配置文档中唯一正式讲解的字段它在 AutoPilotApp.java 中承担了最关键的控制职责。AutoPilot 继承自AbstractNativeApplication其生命周期方法对active的处理如下1.configure()—— 配置即开关Override public void configure() { if (this.config.getActive()) { resumeWorkflow(); } else { suspendWorkflow(); } }当active true时调用WorkflowHandler.getInstance().resumeWorkflow(AutoPilotWorkflow)恢复 AutoPilot 工作流当active false时调用suspendWorkflow(AutoPilotWorkflow)挂起该工作流。也就是说active字段本质上是对名为AutoPilotWorkflow的治理工作流Workflow Definition的“挂起 / 恢复”开关。无论你是通过 UI 修改应用配置还是调用 REST API 更新应用configure()都会重新评估active并同步工作流状态。2.init(App app)—— 配置反序列化Override public void init(App app) { super.init(app); this.config JsonUtils.convertValue(this.getApp().getAppConfiguration(), AutoPilotAppConfig.class); }应用初始化时appConfiguration会被反序列化为AutoPilotAppConfig对象。由于 Schema 中required仅声明了active因此即便不提供entityLink也能正常初始化。3.install()/uninstall()—— 安装与卸载Override public void install(String installedBy) { createWorkflow(installedBy); configure(); } Override public void uninstall() { super.uninstall(); deleteWorkflow(); }安装 AutoPilot 时会先创建名为AutoPilotWorkflow的工作流定义再执行configure()按active决定是否恢复运行卸载时则删除该工作流定义。loadWorkflow()会优先从类路径/applications/AutoPilotApplication/collate/AutoPilotWorkflow.json加载工作流定义若不存在则回退到openmetadata目录即仓库中的 AutoPilotWorkflow.json并将工作流的 owner 设置为应用的 Bot 用户。四、entityLink字段的作用按需定向触发active控制的是工作流的全局开关而entityLink则用于“按需定向触发”。在 AutoPilotApp.java 的triggerOnDemand(MapString, Object config)方法中Override public void triggerOnDemand(MapString, Object config) { MapString, Object appConfig JsonUtils.getMap(getApp().getAppConfiguration()); if (config ! null) { appConfig.putAll(config); } validateConfig(appConfig); AutoPilotAppConfig runtimeConfig JsonUtils.readOrConvertValue(appConfig, AutoPilotAppConfig.class); if (runtimeConfig.getActive()) { MapString, Object variables new HashMap(); variables.put( getNamespacedVariableName(GLOBAL_NAMESPACE, RELATED_ENTITY_VARIABLE), runtimeConfig.getEntityLink()); WorkflowHandler.getInstance() .triggerByKey( getTriggerWorkflowId(WORKFLOW_NAME), UUID.randomUUID().toString(), variables); } else { LOG.info({} is not active. Wont be triggered for {}, WORKFLOW_NAME, runtimeConfig.getEntityLink()); } }这段代码揭示了entityLink的完整语义按需触发时调用方传入的config会与现有appConfiguration合并putAll随后统一校验并反序列化为AutoPilotAppConfig若active true则把entityLink写入工作流的全局命名空间变量relatedEntity并通过triggerByKey以随机 UUID 作为执行实例 ID 触发AutoPilotWorkflow若active false仅记录日志“应用未激活不会为 {entityLink} 触发”不执行任何工作流。因此entityLink是 AutoPilot 面向“服务实体”的入口当你需要为一个新服务或指定服务立即触发 AutoPilot 的自动化管线编排时传入该服务的实体链接即可。由于默认应用配置中entityLink为null日常的自动流程主要依赖工作流的触发器trigger机制而非显式传参。五、AutoPilot 工作流默认值下的自动化编排AutoPilot 的核心引擎是治理工作流AutoPilotWorkflow其完整定义位于 AutoPilotWorkflow.json。该工作流的描述为“每当创建新服务时相关管线将自动被创建、部署并运行。”其结构如下触发器noOp类型输出变量relatedEntity即上文注入的实体链接流程编排节点 边ServiceCreatedstartEvent→RunMetadataIngestionautomatedTaskcreateAndRunIngestionPipelineTaskpipelineType metadatawaitForCompletion truetimeoutSeconds 3600元数据管线失败则走向WorkflowFailureendEvent成功则进入FirstGatewayparallelGateway并行分流到三个分支RunDataInsightsApplicationrunAppTask运行DataInsightsApplicationRunLineageIngestionpipelineType lineageRunUsageIngestionpipelineType usage用量管线成功后进入SecondGateway再次并行分流到RunAutoClassificationIngestionpipelineType autoClassificationshouldRun false与RunProfilerIngestionpipelineType profilershouldRun false——注意这两个任务默认不执行shouldRun: false即默认不自动开启数据画像与自动分类各分支汇入SyncGateway后执行RunFinalDataInsightsApplication最终到达WorkflowEnded。这一编排说明AutoPilot 默认帮你完成元数据、血缘、用量三条管线的自动创建、部署与运行并运行数据洞察应用而画像Profiler与自动分类AutoClassification默认处于关闭状态需要你后续按需开启——这与市场描述“以良好的默认值摄取服务元数据之后你可以按需编辑任何配置”完全吻合。六、如何在 OpenMetadata 中使用 AutoPilot基于以上源码事实AutoPilot 的完整使用路径如下安装 AutoPilot从应用市场Marketplace找到 “AutoPilot” 应用并安装。安装过程会触发install()自动完成工作流创建与按active恢复的初始化。开启 / 关闭自动化进入应用配置页修改Active开关勾选active true恢复AutoPilotWorkflow此后新创建的服务会自动触发元数据 / 血缘 / 用量管线编排取消勾选active false挂起AutoPilotWorkflow不再响应新服务创建事件该字段是配置模型中的必填项UI 文案即来自 AutoPilotApplication.md。按需触发通过 API 以entityLink指定目标服务并调用应用的按需触发接口即可绕过事件驱动、对单个服务立即执行 AutoPilot 编排需active true。调整默认管线AutoPilot 生成的管线配置均可事后编辑默认未启用的 Profiler 与 AutoClassification 任务如需开启可修改对应工作流或管线配置。卸载 AutoPilot卸载时将删除AutoPilotWorkflow工作流定义停止其全部自动化行为。七、小结AutoPilot 的配置模型虽然精简核心即active布尔开关配合按需触发的entityLink但背后由 AutoPilotApp.java 与AutoPilotWorkflow工作流共同驱动形成了“事件触发 并行编排 默认值关闭画像/分类”的自动化服务接入机制。理解active的挂起/恢复语义与entityLink的定向触发语义你就能精确控制 AutoPilot 的行为边界让新服务接入元数据的过程真正做到“只定义连接其余交给 AutoPilot”。【免费下载链接】OpenMetadataThe Open Context Layer for Data and AI , OpenMetadata is the open platform for building trusted data context and business semantics for humans, AI assistants, and agents.项目地址: https://gitcode.com/GitHub_Trending/op/OpenMetadata创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

LLM Wiki:构建可溯源、可审计的企业级智能知识系统

LLM Wiki:构建可溯源、可审计的企业级智能知识系统

1. 这不是普通Wiki,是用大语言模型重新定义知识管理的底层实践“llm_wiki”这四个字母组合乍看像一个项目代号,但背后藏着一场静默却深刻的范式迁移——它不是把Wiki做成网页版文档库,而是让Wiki本身具备理解、推理、生成与主动服务的能力。我…

📅 2026/9/15 2:14:02
恶意压缩包分析实战:从apple-pay.rar看安全处置流程

恶意压缩包分析实战:从apple-pay.rar看安全处置流程

简介:面向Spring Boot开发者的Apple Pay服务端验证示例工程,完整演示iOS端支付令牌在服务器侧的处理链路。内容覆盖商户信息配置、JWT格式支付令牌解码、基于商户私钥的签名校验、与Apple支付验证API通信、验证通过后的订单落库与异常处理,适…

📅 2026/9/15 2:14:02
dirsearch目录扫描实战:字典爆破与敏感目录挖掘

dirsearch目录扫描实战:字典爆破与敏感目录挖掘

做Web安全测试的人,几乎没有不用目录扫描的。拿到一个授权测试目标,我第一步往往不是急着验证某个具体漏洞,而是先摸清站点的目录结构——dirsearch就是我从入行用到现在的主力工具。标题里提到的“目录扫描、字典爆破、敏感目录泄露挖掘”这…

📅 2026/9/15 2:14:02
MORE NEWS

更多资讯

📰

CANoe与CAPL:汽车电子HiL测试的核心能力双引擎

1. 为什么汽车测试岗JD里总写着“熟悉CANoe/CAPL”——这不是凑数,而是岗位能力的硬分水岭你刷过多少次汽车电子测试工程师的招聘启事?几乎每一条都带着这么一句:“熟练使用CANoe及CAPL脚本开发”。不是“了解”,不是“接触过”&a…

📰

全端小程序商城解决方案:跨平台开发与多商户系统实践

1. 项目概述:全端小程序商城解决方案这套源码最吸引人的地方在于"全端覆盖"和"多商户入驻"两大核心能力。作为从业十年的老码农,我见过太多团队为了适配不同小程序平台而疲于奔命——微信一套代码、抖音另起炉灶、支付宝再搞特殊处理…

📰

外泌体体内追踪怎么做?放射性同位素标记全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

基于Hadoop+Spark+Hive的Steam游戏推荐系统实战

1. 为什么我坚持用 HadoopSparkHive 这套组合做 Steam 游戏推荐先说结论:如果你只是想交一份"看起来不错"的课设,Python 读取 CSV 再用 sklearn 算个相似度,一天就能交差。但如果你想搞懂一个真实的推荐系统在离线链路里到底是怎么…

📰

基于 TASKS.md 的轻量任务管理:knowledge-work-plugins 任务管理技能实战指南

基于 TASKS.md 的轻量任务管理:knowledge-work-plugins 任务管理技能实战指南 【免费下载链接】knowledge-work-plugins Open source repository of plugins primarily intended for knowledge workers to use in Claude Cowork 项目地址: https://gitcode.com/Gi…

📰

小智桌面整理工具使用指南:从下载安装到高效配置全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬