We have a system that is sending JSON data from many devices to a single Kafka topic and the messages have many different schemas. Is there a good way to ingest this into multiple data sources efficiently? I looked at the filter function but that comes fairly late in the process, after transformations and flattening. Each of these different schemas will need very different flattening and/or transformations configured so filtering doesn't seem to be the way to go. Unfortunately, there is no Kafka header value to look at, just a single entry in the JSON payload which denotes the different message format.
I thought about just pulling everything into a single data source, pulling the value in the JSON message up to its own dimension then having batch ingestions separate the data out to their own data sources by that dimension but the data is meant to be consumed in near real-time to look for issues that need to be alerted on; I do not know if batch ingestions can be set up to constantly pull data in from another data source (I have only worked with streaming ingestion to date)
Any suggestions will be welcomed 🙂
Thanks,
Sean