We use Kafka a lot within the company I work for. I think it's great.
The only thing I miss is fast lookups based on some key and/or the ability for subscribers to only receive messages for certain keys.
The prefixes can be somewhat done with a custom partitioner, the lookup requires another technology. The only way to know the final value under the key is to look at the complete log.
you might look at ksql for filtering purposes or just tried to work such things into your topics/partitions?