mvn 종속성 google-cloud-dataflow-java-sdk-all 버전 2.1.0을 사용 중이고 파이프 라인에 사용자 정의 싱크를 추가하려고합니다.Dataflow v2.1 용 사용자 정의 무한 싱크 작성
파이프 라인에서 나는 Pubsub 개의 메시지를 검색하고 있으며, 결국 이들을 PCollection of Strings로 변환합니다.
이
은 파이프 라인의 단순화 된 버전은 내가 설정 한된다Pipeline pipeline = Pipeline.create(options);
pipeline.apply(PubsubIO.readMessages())
.apply(Window.into(FixedWindows.of(Duration.standardSeconds(1))))
//transformations
.apply(//Write to custom sink)
내가 팀에 다른 사람이 이미이 데이터를 작성하는 코드를 작성했기 때문에 사용자 지정 싱크가 필요한 이유 BigQuery를 사용하고 이에 대한 REST API를 제공했습니다. 따라서 내 싱크는 관련 데이터가있는이 REST API를 호출합니다. 이미 작성된 코드의 일부를 복제해야하기 때문에 BigQueryIO 사용에 열중하지 않습니다.
Apache Beam website에서 Java SDK를 사용하여 사용자 지정 싱크를 작성하는 것에 관한 설명서를 찾을 수 없으므로 누군가 올바른 방향으로 끄덕 거리면 많은 도움이됩니다.
또한 ParDo를 사용하여 REST API에 데이터를 전송하는 것으로 간주했지만 기술적으로 더 이상 싱크가 없으므로 "데이터 흐름 방식"으로 사용하지 않을 것입니다.