Treten Sie in Apache Beam einer sich schnell und langsam verändernden, unbegrenzten Quelle beiJava

Java-Forum
Guest
 Treten Sie in Apache Beam einer sich schnell und langsam verändernden, unbegrenzten Quelle bei

Post by Guest »

Ich habe zwei unbegrenzte Quellen (pubsub):
  • Hauptquelle: gibt häufig Werte aus
  • Sekundärquelle: sendet ein Ereignis, das uns anweist, eine große Abfragetabelle zu lesen, da eine Änderung in der Tabelle stattgefunden hat.
Ich möchte die anreichern (Linksverknüpfung). Hauptquelle mit der Tabelle, die auf der Grundlage der Sekundärquelle gelesen wird.
Ich habe bereits eine Lösung bei dem die großen Abfragetabellen am Anfang gelesen werden, also begrenzt sind. Für den Join habe ich Beam SQL verwendet, da es ziemlich komplex ist und ich es beibehalten möchte. Daher halte ich die Verwendung von Nebeneingaben für nicht machbar, da ich nicht glaube, dass ich einer PCollection mit PCollectionView mit Beam SQL.
Ich habe versucht, ein festes Fenster mit 5 Sekunden für jede Quelle zu verwenden, aber für die zweite Quelle wird der letzte Status nicht an die Fenster weitergegeben, in denen sich nichts geändert hat. Deshalb erhalte ich nach dem Zusammenführen der Quellen nur dann die richtigen Ergebnisse, wenn die BigQuery-Tabelle aktualisiert wurde, aber wenn sich (meistens) nichts geändert hat, erhalte ich auf der rechten Seite Nullwerte.
Wie Kann ich die Sekundenquelle hochskalieren, um nach der Verknüpfung die richtigen Ergebnisse zu erhalten?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post