2

vielleicht ist dies eine Anfängerfrage, aber was ist die empfohlene Methode zum Lesen von Daten in KSQL produziert?Lesen Sie Daten aus KSQL-Tabellen

Nehmen wir an, ich mache einige Stream-Verarbeitung und schreibe die Daten in eine KSQL-Tabelle. Jetzt möchte ich auf diese Daten über eine Spring-Anwendung zugreifen (z. B. Fan-Out einiger Live-Daten über einen Websocket). Meine erste Vermutung war, Spring Kafka zu verwenden und einfach das zugrunde liegende Thema zu abonnieren. Oder sollte ich Kafka Streams benutzen? Ein anderer Anwendungsfall könnte darin bestehen, die Stream-Verarbeitung durchzuführen und die Ergebnisse in einen Redis-Speicher zu schreiben (z. B. für einen Webservice, der immer aktuelle Werte zurückgibt). Was wäre der Ansatz hier?

Danke!

Antwort

3

Die Ergebnisse, wenn KSQL-Abfragen in Kafka-Themen gespeichert sind. So können Sie auf die Ergebnisse von Anwendungen von Drittanbietern zugreifen, indem Sie aus dem Ergebnisthema lesen. Wenn das Abfrageergebnis ein Table ist, ist das resultierende Kafka-Thema ein Changelog-Thema, was bedeutet, dass Sie es in einer Tabelle in Drittanbietersystemen wie Cassandra oder Redis lesen können. Diese Tabelle wird immer das neueste Ergebnis haben und Sie können sie über Webdienste abfragen. Schauen Sie sich unsere Clickstream-Demo an, wo wir die Ergebnisse zur Visualisierung in Elastic übertragen. Die visualisierten Werte sind die neuesten Werte für die entsprechenden Tabellen.

https://github.com/confluentinc/ksql/tree/master/ksql-clickstream-demo#clickstream-analysis

+0

Vielen Dank für Ihre Antwort. Kannst du den Begriff "Changelog-Thema" klären? Ich habe mir die Demo schon einmal angeschaut, aber jetzt verstehe ich es. Es benutzt ein kafka-connect Setup und für jede 'Table' erstellt es eine elastische Senke. – DerM