Samza 配置

2018-08-22 17:59 更新

所有 Samza 作業(yè)都有一個(gè)定義作業(yè)的配置文件。一個(gè)非?;镜呐渲梦募缦滤荆?br>

# Job
job.factory.class=org.apache.samza.job.local.ThreadJobFactory
job.name=hello-world

# Task
task.class=samza.task.example.MyJavaStreamerTask
task.inputs=example-system.example-stream

# Serializers
serializers.registry.json.class=org.apache.samza.serializers.JsonSerdeFactory
serializers.registry.string.class=org.apache.samza.serializers.StringSerdeFactory

# Systems
systems.example-system.samza.factory=samza.stream.example.ExampleConsumerFactory
systems.example-system.samza.key.serde=string
systems.example-system.samza.msg.serde=json

配置文件有四個(gè)主要部分:

  1. 作業(yè)部分定義了作業(yè)的名稱,以及是否使用 YarnJobFactory 或 ProcessJobFactory / ThreadJobFactory(請(qǐng)參閱配置表中的 job.factory.class 屬性)。
  2. 任務(wù)部分是您為 StreamTask 指定類名的 位置。它也是您定義 輸入流為您的任務(wù)的位置。
  3. 序列化器部分定義用于串行化和反序列化特定對(duì)象的 serdes 的類,這些對(duì)象是沿著不同的流接收和發(fā)送的。
  4. 系統(tǒng)部分定義您的 StreamTask 可以讀取的系統(tǒng)以及用于從該系統(tǒng)發(fā)送密鑰和消息的 serdes 的類型。通常,如果您正在閱讀 Kafka ,您將定義一個(gè) Kafka 系統(tǒng),盡管您還可以指定自己的自主實(shí)現(xiàn)的 Samza 兼容系統(tǒng)。請(qǐng)參閱 hello-samza示例項(xiàng)目 的維基百科系統(tǒng),以獲得自我實(shí)施的系統(tǒng)的良好示例。

Samza 工作必需的配置鍵

為 Samza 工作絕對(duì)必須定義的配置鍵是:

  • job.factory.class
  • job.name
  • task.class
  • task.inputs

配置鍵

配置表 頁(yè)面上可以找到完整的配置列表。請(qǐng)注意,以“敏感”為前綴的配置鍵被特別處理,因?yàn)榕c這些鍵相關(guān)聯(lián)的值將在日志和 Samza 的 YARN ApplicationMaster UI 中被屏蔽。這是為了防止意外披露; 沒(méi)有加密。

打包  >>

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)