private void doSstSnapshotSave(final String snapshotPath) throws Exception {
        FileUtils.forceMkdir(new File(snapshotPath));
        final List<Region> regions = Lists.newArrayList();
        for (int i = 0; i < 10; i++) {
            final Region r = new Region();
            r.setId(i);
            r.setStartKey(BytesUtil.writeUtf8("benchmark_" + i));
            if (i < 9) {
                r.setEndKey(BytesUtil.writeUtf8("benchmark_" + (i + 1)));
            }
            regions.add(r);
        }
        final ExecutorService executor = Executors.newFixedThreadPool(10);
        final List<Future<?>> futures = Lists.newArrayList();
        for (final Region r : regions) {
            final Future<?> f = executor.submit(() -> {
                try {
                    KVStoreAccessHelper.saveSnapshot(this.kvStore, Paths.get(snapshotPath, String.valueOf(r.getId())).toString(), r);
                } catch (final Exception e) {
                    e.printStackTrace();
                }
            });
            futures.add(f);
        }
        for (final Future<?> f : futures) {
            try {
                f.get();
            } catch (final InterruptedException | ExecutionException e) {
                e.printStackTrace();
            }
        }
        executor.shutdownNow();
    }
-----------------------------------------------
        db size = 10000000
        slow save snapshot time cost: 2552
        slow compressed file size: 41915298
        slow compress time cost: 9173
        slow load snapshot time cost: 5119
        -----------------------------------------------
        db size = 10000000
        fast save snapshot time cost: 524
        fast compressed file size: 41920248
        fast compress time cost: 8807
        fast load snapshot time cost: 3090
        -----------------------------------------------
        db size = 10000000
        sst save snapshot time cost: 4296
        sst compressed file size: 10741032
        sst compress time cost: 2005
        sst load snapshot time cost: 593
        -----------------------------------------------
        db size = 10000000
        slow save snapshot time cost: 2248
        slow compressed file size: 41918551
        slow compress time cost: 8705
        slow load snapshot time cost: 4485
        -----------------------------------------------
        db size = 10000000
        fast save snapshot time cost: 508
        fast compressed file size: 41914702
        fast compress time cost: 8736
        fast load snapshot time cost: 3047
        -----------------------------------------------
        db size = 10000000
        sst save snapshot time cost: 4206
        sst compressed file size: 10741032
        sst compress time cost: 1950
        sst load snapshot time cost: 599
        -----------------------------------------------
        db size = 10000000
        slow save snapshot time cost: 2327
        slow compressed file size: 41916640
        slow compress time cost: 8643
        slow load snapshot time cost: 4590
        -----------------------------------------------
        db size = 10000000
        fast save snapshot time cost: 511
        fast compressed file size: 41914533
        fast compress time cost: 8704
        fast load snapshot time cost: 3013
        -----------------------------------------------
        db size = 10000000
        sst save snapshot time cost: 4253
        sst compressed file size: 10741032
        sst compress time cost: 1947
        sst load snapshot time cost: 590
        -----------------------------------------------
jraft-rheakv/rheakv-core/src/test/java/com/alipay/sofa/jraft/rhea/benchmark/raw/SnapshotBenchmark.java