排查“不支持的程序类型”错误

本页面介绍了如何解决 Cloud Data Fusion 6.8.0 和 6.8.1 中的已知问题,即数据流水线因 Cloud Data Fusion 中的程序类型不受支持而失败。此问题已在版本 6.8.2 中得到解决。

为了缩短流水线的启动时间,Cloud Data Fusion 6.8.0 版和 6.8.1 版实例会将在 Cloud Storage 存储桶区内的 Dataproc 集群中启动流水线所需的工件缓存。其中一个缓存的工件是 application.jar。某些流水线可能会失败,并显示以下错误,具体取决于流水线的运行顺序:

Unsupported program type: Spark

例如,创建新的 6.8.1 实例(或升级到 6.8.1)后,首次运行仅包含操作的流水线时,该实例会成功。但是,下一次的流水线运行(包括来源或接收器)可能会失败并显示此错误。

建议

如需解决此问题,请执行以下任一操作:

您可针对以下任一项停用缓存:

  • 适用于实例中的所有流水线。
  • 针对给定的命名空间。
  • 针对包含故障流水线的特定 Dataproc 配置文件。
  • 仅适用于失败的流水线。

为实例中的所有流水线停用 Cloud Storage 缓存

如需为实例中的所有流水线停用 Cloud Storage 缓存,请按以下步骤操作:

控制台

  1. 转到您的实例:
    1. 在 Google Cloud 控制台中,转到 Cloud Data Fusion 页面。

    2. 如需在 Cloud Data Fusion Studio 中打开该实例,请执行以下操作: 点击实例,然后点击查看实例

      转到实例

  2. 点击 System Admin > System Preferences,然后将 system.profile.properties.gcsCacheEnabled 的值设置为 false.

    “偏好设置”对话框

REST API

如需将 system.profile.properties.gcsCacheEnabled 设置为 false,请参阅设定偏好设置

为给定命名空间停用 Cloud Storage 缓存

如需为指定命名空间停用 Cloud Storage 缓存,请按以下步骤操作:

控制台

  1. 转到您的实例:
    1. 在 Google Cloud 控制台中,转到 Cloud Data Fusion 页面。

    2. 如需在 Cloud Data Fusion Studio 中打开该实例,请执行以下操作: 点击实例,然后点击查看实例

      转到实例

  2. 点击系统管理员 > 命名空间,然后选择您的命名空间。
  3. 依次点击偏好设置 > 修改,然后将 system.profile.properties.gcsCacheEnabled 的值设置为 false

    命名空间偏好设置对话框

REST API

如需通过 REST API 进行设置,请参阅设定偏好设置

为 Dataproc 配置文件停用 Cloud Storage 缓存

如需为包含失败流水线的特定 Dataproc 配置文件停用 Cloud Storage 缓存,请按以下步骤操作:

控制台

  • 在 Dataproc 配置文件中将 gcsCacheEnabled 设置为 false

仅为失败的流水线停用 Cloud Storage 缓存

如需仅为失败的流水线停用 Cloud Storage 缓存,请按以下步骤操作:

控制台

  1. 转到您的实例:
    1. 在 Google Cloud 控制台中,转到 Cloud Data Fusion 页面。

    2. 如需在 Cloud Data Fusion Studio 中打开该实例,请执行以下操作: 点击实例,然后点击查看实例

      转到实例

  2. 点击 List(列表),然后选择出现故障的流水线。
  3. 点击 Run 旁边的 展开,然后将运行时参数 system.profile.properties.gcsCacheEnabled 设置为 false
  4. 对任何其他失败的流水线重复此操作。

运行时对话框

REST API

通过 REST API 启动流水线时,可以停用 Cloud Storage 缓存,也可以选择在请求正文中以 JSON 映射形式指定运行时参数。如需了解详情,请参阅启动程序