frostfs-node/pkg/local_object_storage
Evgenii Stratonikov adf7ebab5b [#996] metabase: Speed up bucket creation
Most of the time it exits, e.g. when it is per-container and use on each
object PUT. Bbolt implementation first tries to create bucket and then
returns it if it exists. Create operation uses cursor and thus is not
very lightweight, we can avoid it.

```
goos: linux
goarch: amd64
pkg: git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/metabase
cpu: 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz
                 │     old     │                new                 │
                 │   sec/op    │   sec/op     vs base               │
Put/parallel-8     174.4µ ± 3%   163.3µ ± 3%  -6.39% (p=0.000 n=10)
Put/sequential-8   263.3µ ± 2%   259.0µ ± 1%  -1.64% (p=0.000 n=10)
geomean            214.3µ        205.6µ       -4.05%

                 │     old      │                 new                 │
                 │     B/op     │     B/op      vs base               │
Put/parallel-8     275.3Ki ± 3%   281.1Ki ± 4%       ~ (p=0.063 n=10)
Put/sequential-8   413.0Ki ± 2%   426.6Ki ± 2%  +3.29% (p=0.003 n=10)
geomean            337.2Ki        346.3Ki       +2.70%

                 │     old     │                 new                 │
                 │  allocs/op  │  allocs/op   vs base                │
Put/parallel-8      678.0 ± 1%    524.5 ± 2%  -22.64% (p=0.000 n=10)
Put/sequential-8   1.329k ± 0%   1.183k ± 0%  -10.91% (p=0.000 n=10)
geomean             949.1         787.9       -16.98%
```

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-02-20 15:42:58 +00:00
..
blobovnicza Revert "[#972] Use min/max builtins" 2024-02-19 15:36:01 +00:00
blobstor [#948] Fix gofumpt issue 2024-02-13 09:40:46 +03:00
engine Revert "[#972] Use min/max builtins" 2024-02-19 15:36:01 +00:00
internal Revert "[#972] Drop x/exp/slices dependency" 2024-02-19 15:36:01 +00:00
metabase [#996] metabase: Speed up bucket creation 2024-02-20 15:42:58 +00:00
metrics [#661] metrcis: Add rebuild percent metric 2023-12-07 15:37:33 +03:00
pilorama Revert "[#972] pilorama: Remove removeDuplicatesInPlace()" 2024-02-19 15:36:01 +00:00
shard Revert "[#972] Use min/max builtins" 2024-02-19 15:36:01 +00:00
util [#587] Do not use math/rand.Read 2023-08-09 16:02:44 +03:00
writecache [#959] writecache: Fix panic on Get when it is not initialized 2024-02-14 16:10:33 +03:00