借助 Gemini 的协助转换 Oracle 代码和架构

Database Migration Service 将适用于 Google Cloud 的 Gemini 集成到转换工作区中,可帮助您在以下两个方面加快和改进转换流程:

  • 通过转换助理提供代码可解释性功能:一组专用提示,可帮助您更好地了解转换逻辑、为转换问题提出修复方案,或优化转换后的代码。

  • 借助 Gemini 代码转换建议,加快应用转换问题修复措施的速度:该机制可让 Gemini 模型在您修复转换问题时进行学习,并建议对工作区中的其他有缺陷的对象进行更改。

您还可以将这两种方法结合使用,获得完整的端到端 Gemini 辅助代码对象转换体验。如需了解详情,请参阅用于修复存在转换问题的代码对象的工作流程示例

您的 SQL 代码和架构存储在您创建转换工作区所在的区域中。如果您将辅助代码和架构转换功能与 Gemini 模型搭配使用,您的代码和架构可能会在其他区域处理。

了解 Google Cloud 专用 Gemini 如何以及何时使用您的数据

费用

如需在 Database Migration Service 转换工作区中使用 Gemini 协助功能,您需要为 Google Cloud API 启用 Gemini。需支付 Gemini 的费用。如需了解详情,请参阅 适用于 Google Cloud 的 Gemini 价格

准备工作

如需在 Database Migration Service 转换工作区中使用 Gemini 协助功能,您需要在项目中为 Google Cloud 启用 Gemini。

启用 API

在项目中为 Google Cloud 启用 Gemini 后,系统会为您的所有转化工作区启用 Gemini 功能。您稍后可以在特定工作区中停用建议

使用 Gemini 转化助理

转换助理是一组专用提示,可帮助您更好地了解对象转换逻辑,获取有关如何优化代码和解决转换问题的建议,甚至向架构添加注释以实现数据库对象的自文档化。

一张屏幕截图,显示了如何访问 Gemini 提示,以便了解代码和架构转换的可解释性。
图 1. Gemini 转化助理提示。(点击可放大)
一张屏幕截图,显示了如何访问 Gemini 提示,以便了解代码和架构转换的可解释性。

帮我解决对象转换问题

基于规则的代码和架构转换引擎在将对象从 Oracle 转换为 PostgreSQL 时有时可能会遇到问题。例如,某些 Oracle 函数在 PostgreSQL 中可能没有直接等效项。您可以使用帮我解决对象转换问题提示,获取可解决转换问题的代码更改建议。

此提示仅适用于存在转换问题的可修改的代码对象。您无法在转化工作区中针对其他类型的对象查看此提示。

如需使用此提示,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往转化工作区

    前往“转换工作区”

  2. 从可用转换工作区列表中,选择要使用的转换工作区。

    系统随即会打开转换工作区编辑器。

  3. Oracle 面板中,选择一个 Oracle 对象。

  4. 在对象详情视图中,依次选择转化助理 > 帮我解决对象转换问题

    系统随即会打开一个包含提示结果的窗格。

  5. 验证显示建议的改进的差异屏幕。如果您喜欢结果,可以使用插入建议按钮更新转换后的对象。

  6. 针对每个有缺陷的代码对象重复上述步骤。在您应用代码建议时,Gemini 模型会学习相应模式,并提供有关如何将修复程序传播到工作区中所有有缺陷的对象的建议

说明此对象的转换逻辑

通过说明此对象的转换逻辑提示,您可以分步了解转换后的代码的用途,包括新代码中应用的最佳实践摘要。

如需请求说明对象转换逻辑,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往转化工作区

    前往“转换工作区”

  2. 从可用转换工作区列表中,选择要使用的转换工作区。

    系统随即会打开转换工作区编辑器。

  3. Oracle 面板中,选择一个 Oracle 对象。

  4. 在对象详情视图中,依次选择转化助理 > 说明此对象的转化逻辑

    系统随即会打开一个包含提示结果的窗格。

帮我优化此代码

有时,基于规则的代码和架构转换的结果在技术上可能是正确的,但未针对 PostgreSQL 环境进行全面优化。您可以使用帮我优化此代码提示,获取针对数据库对象的代码优化建议。

如需使用此提示,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往转化工作区

    前往“转换工作区”

  2. 从可用转换工作区列表中,选择要使用的转换工作区。

    系统随即会打开转换工作区编辑器。

  3. Oracle 面板中,选择一个 Oracle 对象。

  4. 在“对象详情”视图中,依次选择转化助理 > 帮助我优化此代码

    系统随即会打开一个包含提示结果的窗格。

  5. 在结果面板中,阅读说明、查看代码,并确保建议符合您的需求。如果您喜欢结果,可以使用插入建议按钮更新转换后的对象。

添加注释,说明此对象的用途

添加注释,说明此对象的用途提示会生成代码注释的建议,您可以将其添加到数据库对象中以实现自文档化架构。

如需使用此提示,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往转化工作区

    前往“转换工作区”

  2. 从可用转换工作区列表中,选择要使用的转换工作区。

    系统随即会打开转换工作区编辑器。

  3. Oracle 面板中,选择一个 Oracle 对象。

  4. 在对象详情视图中,依次选择转化助理 > 添加注释,说明此对象的用途

    系统随即会打开一个包含提示结果的窗格。

  5. 在结果面板中,阅读说明、查看代码,并确保建议符合您的需求。如果您喜欢结果,可以使用插入建议按钮更新转换后的对象。

使用 Gemini 代码转换传播转换问题修复

当您在工作区中修正转换问题时,Gemini 模型可以从您的修正中学习,并建议对工作区中的其他有缺陷的对象进行更改。这样,您就可以将修复程序传播到多个对象,而无需手动进行所有修改。

在 Database Migration Service 中查看 Gemini 转换建议

当您修复对象问题(通过修改 SQL 对象的代码或应用帮我解决对象转换问题提示中建议的代码)时,Gemini 模型会分析您所做的更改。进行足够的更改后,Gemini 集成会显示提示并建议进一步修改。

如需使用 Gemini 辅助建议,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往转化工作区

    前往“转换工作区”

  2. 从可用转换工作区列表中,选择要使用的转换工作区。

    系统随即会打开转换工作区编辑器。

  3. Oracle 面板中,选择要调整其生成的 SQL 的对象。

  4. 解决您在使用该对象时遇到的转化问题,并保存代码更改。 您可以手动修改代码,也可以使用帮我解决对象转换问题提示。

    Gemini 模型会分析您最近的修复,直到能够针对存在转化问题的其他对象建议类似的更新。当 Gemini 模型分析了足够多的修复后,系统会显示查看 Gemini 提供的建议对话框。

    Gemini 建议修复问题对话框。
    图 2. Gemini 建议修复问题对话框。 (点击可放大)
    Gemini 建议修复问题对话框。
  5. 如需查看 AI 根据您所做的更改生成的建议,请点击查看建议

查看 Gemini 转化建议

使用 Gemini 修复问题页面会显示 Gemini 模型根据您所做的代码更改生成的建议。这些建议包含可应用于其他对象的类似更改。对于每条建议,您都可以查看、更改、接受或忽略。

使用 Gemini 解决问题页面会显示对象源代码的三个变体,您可以在修改视图菜单中选择这些变体:

  • 原始源代码(只读)
  • 草稿目标位置源代码(只读)
  • 在 Gemini 的协助下生成的目标源代码(可修改)

对象窗格包含存在问题的对象的列表,以及 Gemini 模型建议的修复方法。

如需查看 Gemini 建议,请按以下步骤操作:

  1. 点击某个对象即可显示 AI 建议的相关修复方法。
  2. 查看并修改 Gemini 模型建议的代码。
  3. 执行下列其中一项操作:

    • 如要接受建议(包括您所做的修改),请点击接受代码。 系统会将更改应用于转换工作区的对象,并且对象列表中的对象状态会从待处理更改为已接受

    • 如需保留建议(包括您的修改)而不应用更改,请切换到其他对象。该对象会保持待处理状态。您可以修改代码,稍后再接受或忽略建议。

    • 如需忽略待处理或已接受的建议(并还原所做修改),请点击忽略代码。对象列表中的对象状态会从待处理更改为已忽略。您的更改已还原。 您可以稍后修改代码并应用。

如需关闭 Gemini 建议并舍弃您尚未应用的所有更改,请按以下步骤操作:

  1. 解决 Gemini 问题页面上,点击返回箭头。
  2. Close Gemini 对话框中,点击 Close

    当前的 Gemini 会话已关闭。如需返回建议页面,请再次访问 Gemini 建议

停用 Gemini 转化建议

默认情况下,在您为项目启用 Gemini 后,系统会为您的转化工作区启用 Gemini 转化建议。您可以在特定转化工作区中停用 Gemini 建议。如需停用 Gemini 代码修复建议,请执行以下步骤:

  1. 在 Google Cloud 控制台中,前往转化工作区

    前往“转换工作区”

  2. 从可用转换工作区列表中,选择要使用的转换工作区。

    系统随即会打开转换工作区编辑器。

  3. 在任务栏中,点击 pen_spark Gemini,然后选择代码建议

此转换工作区现已停用 Gemini 代码转换建议。

后续步骤