找回密码
 立即注册
首页 业界区 科技 AI 替代传统 GUI:基于 MCP 的 OBCloud 工作流 ...

AI 替代传统 GUI:基于 MCP 的 OBCloud 工作流

劳欣笑 昨天 16:48
作者:乔磊,OceanBase 前端工程师
传统交互下的数据库运维

作为一名与数据库密切相关且经验丰富的开发人员,在定位问题时,通常需要查看 OceanBase 实例。
在 OB Cloud 控制台中,用户可以查看 OceanBase 实例、租户、节点以及代理等信息。此外,控制台提供了多达几十甚至上百项的监控指标,用于观察是否存在异常情况。然而,用户往往需要通过逐级点击和逐步排查的方式进行定位。在某些情况下,用户还需要深入 OB Cloud 的诊断模块,排查 top sql、slow sql、可疑 sql 或高危 sql 等,以确定问题的可能位置。在经过上述两步操作后,通常还需继续深入数据库内部执行相关操作,进一步定位问题。此时,用户可能需要结合 OceanBase 官网文档查阅相关资料,以辅助思考并确定可能的搜索方向,从而定位问题。
回顾上述交互流程,可以看到一些问题(局限性)。

  • OB Cloud 管控台的 UI 界面,是面向所有用户的一个“通用性”的交互方案,为了满足信息架构的逻辑性,难免会牺牲操作的便捷性,举例来说,你的操作路径总是:

    • 选择 obcloud 实例 -> 选择租户 -> 查看监控 -> 切换监控指标 -> 查看租户诊断 -> 筛选诊断信息
    • 选择 obcloud 实例 -> 选择租户 -> 选择 unit -> 查看 unit 监控 -> 切换监控指标

  • 在官网查文档则可以视为另一个重复的交互过程,直接查阅不可能命中你想要的答案,总是需要多次浏览、阅读文档,才能找到可能有效的方案。
从交互和查阅两个方面来看,用户实际上花费了大量时间在这些重复的操作上,而日常运维工作往往也遵循类似的流程。尽管在实际工作中,遇到问题的概率相对较小,很多时候用户只是想检查当前运行的实例和数据库是否存在异常,但完成这样一套重复的操作仍会耗费大量时间。
前端视角下 AI 为运维带来的变化和挑战

随着人工智能技术的兴起,尤其是近一年来 AI 的广泛应用,人们在遇到问题时的反应发生了显著变化。以往,人们可能会首先通过搜索引擎查找答案,而现在,他们更倾向于直接向 AI 助手(如DeepSeek)提问。
这是因为 AI 能够更高效地理解用户意图,并基于该意图整合出更符合用户需求的答案,从而在大多数场景下消除许多无效的交互过程。例如,当用户询问“牛肉怎么做才好吃”时,AI 能够准确地提供答案,而如果通过搜索引擎查找,用户可能需要浏览多个标题,甚至将多个来源的信息拼凑在一起才能找到满意的答案。
那么,AI可以为传统运维带来哪些改变?
AI替代传统GUI:OB Cloud MCP

在 AI 时代的人机交互中,数据才是核心要素。图形用户界面(GUI)的存在主要是为了帮助人们更好地理解数据。结合AI技术,我们可以利用大模型替代传统的图形界面,帮助用户理解数据。与上述 OB Cloud 的交互和查阅官网文档的过程相比,大模型可以取代中间的交互环节。
1.png

图中的MCP 是 Function call 的一种标准协议形式,主要用处是把用户的意图(action),转化为可被执行的 Function。
OB Cloud MCP 提供了两类可被大模型执行的 Function:

  • 获取 OB 实例信息:如:list_tenants(获取某实例租户列表信息)、diagnostics(获取某个租户的相关指标信息已诊断)。
  • 连接数据库并执行 sql(被大模型转为 sql 的自然语言)
整个流程可以概括为:在对话过程中,系统会尝试匹配是否命中 MCP。如果命中 MCP,系统会判断是否仅涉及资源状态信息查询。如果是,则查询相关信息并返回给大模型进行处理;如果不是,则基于 OB 文档和用户语义生成搜索词并查询。如果没有命中 MCP,则基于 OB 知识库文档给出回答,或者由底层大模型自行处理。以下是一些演示案例。
OB Cloud MCP 执行案例:实例信息获取、诊断

首先,用户尝试询问当前实例的状态。系统匹配到对应的 MCP 后,执行相关操作并列出实例信息和诊断结果。通过调用 OB Cloud 的 API,系统将数据传递给大模型进行处理。用户可以看到实例的诊断结果,包括SQL语句的执行情况、性能表现、慢查询情况以及资源使用情况等。从结果来看,资源使用情况较为健康,活跃用户和主要操作的数据库也一目了然。
2.png

3.png

OB Cloud MCP 执行案例:修改系统配置
另一个案例是修改系统配置。用户尝试开启数据库的日志监控,系统执行多次操作并启用circle审计。在启用 SQL 审计后,系统发现审计的百分比较低,于是尝试提高该值。在日常操作中,用户可能需要查阅OB文档才能执行此类操作。然而,日志监控和 SQL 审计并非强相关的名词对应关系,用户可能需要经过多轮查询才能掌握相关知识。
4.png

OB Cloud MCP 执行案例:SQL 可视化

最后一个案例是尝试对某张表的数据进行可视化。系统查询出相关数据并进行了可视化处理。这种数据可视化能力取决于MCP客户端的支持情况。虽然这不是由用户直接实现的,而是通过调用OB Cloud的功能完成的,但它展示了通过大模型处理数据并将其转换为可被图表识别的格式的可能性。用户甚至可以自行实现一个客户端,将数据进行可视化展示。
5.png

总结

回顾前面提到的繁琐交互过程,基于大模型和MCP协议,我们可以构建一套全新的数据库运维工作流。这种工作流能够实现个性化的效果,即根据用户不同的数据库工程师水平、能力以及问题需求,大模型可以提供相应的反馈并帮助解决问题。
未来,用户的日常运维工作可能只需与大模型进行交流即可,甚至可以借助大模型完成一些商业智能(BI)操作。相关代码已提交至 GitHub:https://github.com/oceanbase/mcp-oceanbase/tree/main/src/obcloud_mcp_server,并附有详细的MCP使用教程,欢迎感兴趣的用户及开发者参考。
最后为大家推荐这个 OceanBase 开源负责人老纪的公众号「老纪的技术唠嗑局」,会持续更新和 #数据库、#AI、#技术架构 相关的各种技术内容。欢迎感兴趣的朋友们关注!
「老纪的技术唠嗑局」不仅希望能持续给大家带来有价值的技术分享,也希望能和大家一起为开源社区贡献一份力量。如果你对 OceanBase 开源社区认可,点亮一颗小星星✨吧!你的每一个Star,都是我们努力的动力。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册