Technologieaustausch

Erfahrungsaustausch in der FlinkSQL-Entwicklung

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Erfahrungsaustausch in der FlinkSQL-Entwicklung

Autor:Suppenknödel

Kürzlich habe ich mehrere Echtzeit-Datenentwicklungsanforderungen erfüllt und bin bei der Verwendung von Flink unweigerlich auf einige Probleme gestoßen, z. B. durch Datenversatz verursachten Gegendruck, Intervallverknüpfung, Wasserstandsversagen durch Fensteröffnung usw., durch Denken und das Lösen dieser Fragen hat mein Verständnis der Prinzipien und Mechanismen von Flink vertieft, daher teile ich diese Entwicklungserfahrungen in der Hoffnung, dass sie Schülern in Not helfen können.

Im Folgenden werden drei Fälle vorgestellt. Jeder Fall wird in drei Teile unterteilt: Hintergrund, Ursachenanalyse und Lösung.

1. Fall 1: Datenverzerrung

Datenversatz tritt sowohl offline als auch in Echtzeit auf und seine Definition ist:Bei der parallelen Datenverarbeitung übersteigen die nach bestimmten Schlüsseln aufgeteilten Daten die anderen Teile erheblich und sind ungleichmäßig verteilt, was dazu führt, dass eine große Datenmenge auf einen oder mehrere Rechenknoten konzentriert wird, wodurch die Verarbeitungsgeschwindigkeit dieses Teils weitaus geringer ist als die Die durchschnittliche Rechengeschwindigkeit wird zum Engpass der gesamten Datensatzverarbeitung und wirkt sich somit auf die gesamte Rechenleistung aus. . Es gibt viele Gründe für einen Datenversatz, z. B. eine ungleichmäßige Schlüsselverteilung während der Gruppierung nach, zu viele Nullwerte, eindeutige Anzahl usw. In diesem Artikel wird nur die Situation der eindeutigen Gruppierung nach Anzahl vorgestellt.

1.1