Samza 配置

2018-08-22 17:59 更新

所有 Samza 作業(yè)都有一個定義作業(yè)的配置文件。一個非?;镜呐渲梦募缦滤荆?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

配置文件有四個主要部分:

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

Samza 工作必需的配置鍵

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

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

配置鍵

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

打包  >>

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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號