當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python pyflink PulsarSourceBuilder用法及代碼示例

本文簡要介紹 python 語言中 pyflink.datastream.connectors.PulsarSourceBuilder 的用法。

用法:

class pyflink.datastream.connectors.PulsarSourceBuilder

PulsarSource 的構建器類,使用戶更容易構建 PulsarSource。

以下示例顯示了創建 PulsarSource 的最低設置,該 PulsarSource 從 Pulsar 主題中讀取字符串值。

例子:

>>> source = PulsarSource() \
...     .builder() \
...     .set_service_url(PULSAR_BROKER_URL) \
...     .set_admin_url(PULSAR_BROKER_HTTP_URL) \
...     .set_subscription_name("flink-source-1") \
...     .set_topics([TOPIC1, TOPIC2]) \
...     .set_deserialization_schema(
...         PulsarDeserializationSchema.flink_schema(SimpleStringSchema())) \
...     .build()

服務 url、管理員 url、訂閱名稱、要使用的主題和記錄反序列化器是必須設置的必填字段。

要指定 PulsarSource 的起始位置,可以調用set_start_cursor(StartCursor)。

默認情況下,PulsarSource 以 Boundedness.CONTINUOUS_UNBOUNDED 模式運行,並且在 Flink 作業被取消或失敗之前永遠不會停止。要讓PulsarSource 在Boundedness.CONTINUOUS_UNBOUNDED 中運行但在某些給定的偏移處停止,可以調用set_unbounded_stop_cursor(StopCursor)。

例如下麵的 PulsarSource 在消耗到 Flink 啟動的事件時間後停止。

例子:

>>> source = PulsarSource() \
...     .builder() \
...     .set_service_url(PULSAR_BROKER_URL) \
...     .set_admin_url(PULSAR_BROKER_HTTP_URL) \
...     .set_subscription_name("flink-source-1") \
...     .set_topics([TOPIC1, TOPIC2]) \
...     .set_deserialization_schema(
...         PulsarDeserializationSchema.flink_schema(SimpleStringSchema())) \
...     .set_bounded_stop_cursor(StopCursor.at_event_time(int(time.time() * 1000)))
...     .build()

相關用法


注:本文由純淨天空篩選整理自apache.org大神的英文原創作品 pyflink.datastream.connectors.PulsarSourceBuilder。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。