DataWorks的开放消息是DataWorks开放平台中的核心功能之一,旨在将项目中的核心变更消息及时发布并触达到用户,便于用户及时监控变更并作出响应,您可以通过开放消息功能订阅DataWorks项目中表变更、任务变更等消息。本文为您介绍开放消息的实现原理与配置要点。

实现原理与配置要点

DataWorks的开放消息本质上是利用Kafka消息订阅功能,实现变更消息发布和触达,阿里云DataWorks为您提供公共Kafka用于订阅DataWorks的消息,您无需再自购Kafka。开放消息如上图所示:
  • DataWorks的事件变更消息首先发布至Kafka的Topic中,订阅此类消息的Consumer再通过Kafka的Topic订阅消费DataWorks的变更消息。阿里云DataWorks已提供公共Kafka,因此仅需创建一个用于订阅消息的Topic即可,无需进行其他Kafka的配置。
  • 您需要规划明确需要订阅DataWorks哪些项目空间中的哪些事件,在DataWorks控制台开启消息订阅时,根据规划选择配置相应的空间与事件,后续相应空间内的事件发生变更时,变更消息即会发布至Kafka的Topic中,供Consumer订阅消费,您无需进行其他DataWorks消息发布的配置。
    说明
    • 一个Topic最多可以订阅5个工作空间。
    • 目前,订阅事件类型仅支持任务变更事件、文件发布检查事件和表变更事件,不同地域支持的消息类型有所不同,具体请以产品界面为准(更多事件类型逐步丰富中,敬请期待)。
  • Producer(即DataWorks)和Consumer可通过Kafka的SSL接入点接入并收发消息,DataWorks提供的公共Kafka的SSL接入点信息可在DataWorks控制台页面查看。
  • 使用SSL接入点订阅消息时,使用了PLAIN机制(用户名密码机制)进行校验,因此您需要在开启消息订阅时指定一个用于鉴权的用户,设置其用户名及密码,用于后续Consumer订阅消息时进行校验。
了解上述原理后,您可根据实际情况规划并开启消息订阅,操作详情可参见开启消息订阅,完成后可根据开发消息订阅中提供的代码样例,配置Consumer订阅消息的任务,其中附录:消息格式为您介绍了DataWorks的不同事件变更消息的消息格式。

应用优势

DataWorks开放消息具备以下优势:
  • 节省运维成本:

    通过开启DataWorks开放平台的消息订阅功能,您可以很方便的订阅事件消息,无需再申请和购买消息队列Kafka版即可享受消息队列Kafka版的数据持久化、高吞吐及企业级数据安全防护能力。

  • 提升开发效能:

    通过在DataWorks界面上创建Topic及Consumer相关配置,您无需再进行发送消息相关配置,仅需做好相关SDK开发的准备配置工作及订阅消息配置,节省繁杂的手工操作。

  • 实现个性化需求:

    DataWorks提供丰富的事件类型,您可以通过订阅不同事件类型的消息,快速感知业务状态变化信息,及时做好个性化响应和决策。