Multitenant
The Cep service has a multi tenant mode, on this mode it prefix the application.id
automatically on all the Kafka topics, except the bootstrapper and the metrics topic.
On this mode when you define a processing model, for example:
{
"streams": [
{
"streamName": "streaminput",
"attributes": [
{
"name": "timestamp",
"type": "long"
}
]
}
],
"rules": [
{
"id": 1,
"version": "v1",
"streams": {
"in": [
{
"streamName": "streaminput",
"kafkaTopic": "kafkainput"
}
],
"out": [
{
"streamName": "streamoutput",
"kafkaTopic": "kafkaoutput"
}
]
},
"executionPlan": "from streaminput select * insert into streamoutput"
}
]
}
You define the topic kafkainput
but really you read from Kafka topic ${APP_ID}_kafkainput
and when you produce to the output
topic, you really send data to the topic ${APP_ID}_kafkaoutput
. On this mode we define the APP_ID == TENANT_ID
. To enable this mode you can configure the property multi.id
to true
.