簡體   English   中英

在 apache-beam 中使用 python ReadFromKafka 不支持的信號:2

[英]ReadFromKafka with python in apache-beam Unsupported signal: 2

我一直在努力完成這項工作,我知道這是一個跨語言轉換以及所有這些,我在我的電腦上安裝了 Java jdk(當我在 cmd 上編寫 java -version 時,我得到了正確的信息和所有這些)但是當我試圖使一個簡單的管道工作時:

import apache_beam as beam
from apache_beam.io.external.kafka import ReadFromKafka
from apache_beam.options.pipeline_options import PipelineOptions
import os

os.environ['GOOGLE_APPLICATION_CREDENTIALS']='credentialsOld.json'

  
def main():
print('======================================================')
beam_options = PipelineOptions(runner='DataflowRunner',temp_location=temp_location,staging_location=staging_location,project=project,experiments=['use_runner_v2'],streaming=True)

with beam.Pipeline(options=beam_options) as p:
    msgs = p | 'ReadKafka' >> ReadFromKafka(consumer_config={'bootstrap.servers':'xxxxx-xxxxx...','group_id':'testAB'},topics=['users'])
    msgs | beam.FlatMap(print)
    
if __name__ == '__main__':
    
  main()

我收到此錯誤:ValueError:不支持的信號:2

我嘗試將參數 expansion_service= 'beam:external:java:kafka:read:v1' 添加到 ReadFromKafka 但后來我得到:

狀態 = StatusCode.UNAVAILABLE

details = "DNS 解析失敗 beam:external:java:kafka:read:v1: UNKNOWN: OS Error"

我在 venv python 環境中工作,如果此信息有用並且我的 kafka 集群位於匯合雲上。

我也收到了這個運行時錯誤:RuntimeError: java.lang.RuntimeException: Failed to get dependencies of beam:transform:org.apache.beam:kafka_read_without_metadata:v1 from spec urn: "beam:transform:org.apache.beam:kafka_read_without_metadata: v1"

編輯:我從這里獲取引導服務器選項在此處輸入圖像描述

我的錯誤是我跳過了必須啟動 expansion_service 的步驟,我是用這個命令java -jar beam-sdks-java-io-expansion-service-2.37.0.jar 8088 --javaClassLookupAllowlistFile='*'完成的從https://mvnrepository.com/artifact/org.apache.beam/beam-sdks-java-io-expansion-service/2.36.0 下載 beam-sdks-java-io-expansion-service-2.37.0.jar和然后在 expansion_service='localhost:8088' 中指定端口

然后我犯了兩個小錯誤,一個是我使用的是 JDK 18,我認為它不兼容https://beam.apache.org/get-started/quickstart-java/所以我切換到 JDK 17 並改用 python 3.8 python 3.10

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM