Often, in IoT, there are external data sources that must be included. This could be weather data that affects the performance of the device or data from other nearby devices. An easy way of doing this is to use Kafka KSQL Server. Like we did in the previous recipe, we are going to use Confluent Cloud's KSQL Server, which you can get if you have a Confluent Cloud subscription.
In this recipe, we are going to get data from a weather service topic and put it into a KTable. A KTable is similar to a database table. All data coming into Kafka comes in key-value pairs. With KTable, when data comes in with a new key, we insert it into our KTable. If it contains a key that already exists in our KTable, we update it. We are also going to convert our topic into a KStream. This allows us to run standard SQL-like queries over our table and stream. By doing this, we can, for example, query the current weather and join it to the engine data...