在研究Apache Kafka 0.9和0.10的新功能时,我们用到了KStreams和KTables。有一个有趣的事实是Kafka内部使用了RocksDB。详情请参见Introducing Kafka Streams: Stream Processing Made Simple。 由于RocksDB不是用JVM兼容语言编写的,因此需要仔细处理部署,因为它需要额外的共享库(依赖操作系统)。
下面是一些简单的问题:
- 为什么Apache Kafka Streams使用RocksDB?
- 如何更改它?
我已经尝试搜索答案,但只看到了隐含的理由,即RocksDB在每秒约数百万个操作范围内非常快速。
另一方面,我看到一些用Java编码的数据库,也许它们可以像RocksDB那样高效运行,因为它们没有通过JNI。