Skip to content

danphanley/ScaledSignals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Simple Scaler

This project is intended to show how Signal data may be scaled by using a table of scale factors.

The DualProducer class writes messages to a Signals stream and a Metadata stream. The ScaleStream builds a table from Metadata and uses the metadata to scale the Signal values before writing them out to a new ScaledSignals stream. The ScaleStreamScala does the same but in Scala using Ligthbend's Scala wrappers

In order to keep things simple, the same scale factor is used for all signals, and all records are hardcoded to the same key.


To build:

mvn clean compile

To run:

confluent start
mvn exec:java

To monitor:

bin/kafka-avro-console-consumer --topic metadata \
    --bootstrap-server localhost:9092 \
    --property print.key=true \
    --property key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
 

bin/kafka-avro-console-consumer --topic signals \
    --bootstrap-server localhost:9092 \
    --property print.key=true \
    --property key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
          

bin/kafka-avro-console-consumer --topic scaled_signals \
    --bootstrap-server localhost:9092 \
    --property print.key=true \
    --property key.deserializer=org.apache.kafka.common.serialization.StringDeserializer   

bin/kafka-avro-console-consumer --topic scaled_signals_scala \
    --bootstrap-server localhost:9092 \
    --property print.key=true \
    --property key.deserializer=org.apache.kafka.common.serialization.StringDes <....

About

Simple Avro/Kafka Streams join example

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published