Kafka Streams - RocksDB - 最大打开文件数
Kafka Streams - RocksDB - max open files
如果我们将最大打开文件数定义为300,并且如果.sst文件的数量超过,我假设缓存中的文件将被逐出,但是如果要访问被逐出的文件中的数据,它会重新加载它还是该文件永远丢失?
https://github.com/facebook/rocksdb/wiki/RocksDB-Tuning-Guide
来自您发布的link:
max_open_files -- RocksDB keeps all file descriptors in a table cache. If number of file descriptors exceeds max_open_files, some files are evicted from table cache and their file descriptors closed. This means that every read must go through the table cache to lookup the file needed. Set max_open_files to -1 to always keep all files open, which avoids expensive table cache calls.
这仅表示如果超过打开文件的数量,一些文件将被关闭。如果你想访问一个关闭的文件,相应的文件将被重新打开(也许之前,另一个文件会被关闭)。
因此,配置不是关于 creating/deleting 个文件,而是关于并行打开多少个文件。
如果我们将最大打开文件数定义为300,并且如果.sst文件的数量超过,我假设缓存中的文件将被逐出,但是如果要访问被逐出的文件中的数据,它会重新加载它还是该文件永远丢失?
https://github.com/facebook/rocksdb/wiki/RocksDB-Tuning-Guide
来自您发布的link:
max_open_files -- RocksDB keeps all file descriptors in a table cache. If number of file descriptors exceeds max_open_files, some files are evicted from table cache and their file descriptors closed. This means that every read must go through the table cache to lookup the file needed. Set max_open_files to -1 to always keep all files open, which avoids expensive table cache calls.
这仅表示如果超过打开文件的数量,一些文件将被关闭。如果你想访问一个关闭的文件,相应的文件将被重新打开(也许之前,另一个文件会被关闭)。
因此,配置不是关于 creating/deleting 个文件,而是关于并行打开多少个文件。