/** * <p>Sets the number of background worker threads of the flush pool * for this environment.</p> * <p>Default number: 1</p> * * @param num the number of threads * * @return current {@link RocksEnv} instance. */ public Env setBackgroundThreads(final int num) { return setBackgroundThreads(num, FLUSH_POOL); }
/** * <p>Sets the number of background worker threads of the specified thread * pool for this environment.</p> * * @param num the number of threads * @param poolID the id to specified a thread pool. Should be either * FLUSH_POOL or COMPACTION_POOL. * * <p>Default number: 1</p> * @return current {@link RocksEnv} instance. */ public Env setBackgroundThreads(final int num, final int poolID) { setBackgroundThreads(nativeHandle_, num, poolID); return this; }
public DBSharder(String dbpath, Long timestamp) throws RocksDBException { log = LoggerFactory.getLogger(DBSharder.class); RocksDB.loadLibrary(); options = new Options(); env = options.getEnv(); env.setBackgroundThreads(2); options.setEnv(env); options.setCreateIfMissing(true); options.setDbLogDir(dbpath + "/logs/"); options.setMergeOperator(new StringAppendOperator()); db = RocksDB.open(options, dbpath + "/" + timestamp); }
/** * Builds RocksDb {@link Options}. * * @param maxBackgroundThreads * @param levelZeloFileNumCompactionTrigger * @param writeBufferSize * @param targetFileSizeBase * @return */ public static Options buildOptions(int maxBackgroundThreads, int levelZeloFileNumCompactionTrigger, long writeBufferSize, long targetFileSizeBase) { Options rocksOptions = new Options(); rocksOptions.setCreateIfMissing(true).getEnv().setBackgroundThreads(1, Env.FLUSH_POOL) .setBackgroundThreads(maxBackgroundThreads, Env.COMPACTION_POOL); rocksOptions.setMaxBackgroundFlushes(1).setMaxBackgroundCompactions(maxBackgroundThreads); rocksOptions.setWriteBufferSize(writeBufferSize).setMinWriteBufferNumberToMerge(2) .setLevelZeroFileNumCompactionTrigger(levelZeloFileNumCompactionTrigger) .setTargetFileSizeBase(targetFileSizeBase); rocksOptions.setMemTableConfig(new SkipListMemTableConfig()); // rocksOptions.setMemTableConfig(new HashSkipListMemTableConfig()); // rocksOptions.setMemTableConfig(new HashLinkedListMemTableConfig()); return rocksOptions; }
env.setBackgroundThreads(8, Env.FLUSH_POOL); env.setBackgroundThreads(8, Env.COMPACTION_POOL); Options options = new Options(); options.setCreateIfMissing(true);