Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 为什么kafka streams state dir位于/tmp/kafka streams中?_Apache Kafka_Apache Kafka Streams_Rocksdb - Fatal编程技术网

Apache kafka 为什么kafka streams state dir位于/tmp/kafka streams中?

Apache kafka 为什么kafka streams state dir位于/tmp/kafka streams中?,apache-kafka,apache-kafka-streams,rocksdb,Apache Kafka,Apache Kafka Streams,Rocksdb,我不确定它是否已经被回答了。因为我没有得到正确的解释,所以把我的问题贴在这里 为什么kafka streamsstate.dir存储在/tmp/kafka streams下 我知道我可以通过在下面的流代码中提供state dir config来更改路径 StreamsConfig.STATE\u DIR\u CONFIG,“/var/abc Streams” 但是更改目录会有什么影响吗 或 我可以在应用程序目录而不是/tmp中配置状态数据库吗 根据合流文件,对于: Stateful操作: 在调用

我不确定它是否已经被回答了。因为我没有得到正确的解释,所以把我的问题贴在这里

为什么kafka streams
state.dir
存储在
/tmp/kafka streams

我知道我可以通过在下面的流代码中提供state dir config来更改路径

StreamsConfig.STATE\u DIR\u CONFIG,“/var/abc Streams”

但是更改目录会有什么影响吗

我可以在应用程序目录而不是
/tmp
中配置状态数据库吗

根据合流文件,对于:
Stateful
操作:

在调用count()或aggregate()等有状态运算符时,或在打开流窗口时,自动创建和管理此类状态存储

但没有具体说明它的存储位置

有什么想法吗

为什么kafka streams state.dir存储在/tmp/kafka streams下

有几个原因

  • 通常
    /tmp
    目录具有默认的写入权限。因此,作为初学者,您不必为写权限而烦恼
  • /tmp
    目录是短期目录。每次系统重新启动时,它都会被清理,因此,如果忘记删除
    state.dir
    ,您不会遇到磁盘存储过量的情况。缺点是,您会丢失上一次运行的状态,因此需要从头开始重建状态 如果要重用存储在
    state.dir
    中的状态,应将其存储在
    /tmp
    之外的其他位置


    所有状态存储都存储在
    state.dir
    中指定的位置。如果未指定,则为
    /tmp/kafka streams/
    目录。

    @cricket\u 007:对更改状态存储目录的后果有何看法?就我而言,就在今天,我改变了它,奇怪的是,所有的消息都顺流而下!例如,从主题A->aggregate(..)->到主题B,所有事件都会再次生成到主题B,但不会从主题A重新消费。