VictoriaMetrics/lib/mergeset
Nikolay e9f86af7f5
lib/storage: add a hint for merge about type of parts in merge (#7998)
Hint allows to choose type of cache to be used for index search:
- in-memory parts are storing recently ingested samples and should use
main cache. This improves ingestion speed and cache hit ration for
queries accessing recently ingested samples.
- merges of file parts is performed in background, using a separate
cache allows avoiding pollution of the main cache with irrelevant
entries.

Related issue:
https://github.com/VictoriaMetrics/VictoriaMetrics/issues/7182

---------

Signed-off-by: f41gh7 <nik@victoriametrics.com>
2025-01-10 16:01:39 +04:00
..
block_header.go lib/encoding: optimize UnmarshalVarUint64, UnmarshalVarInt64 and UnmarshalBytes a bit 2024-05-14 01:23:54 +02:00
block_stream_reader.go lib/{storage,mergeset}: convert InitFromFilePart to MustInitFromFilePart 2023-04-14 15:46:12 -07:00
block_stream_reader_test.go lib/mergeset: use deterministic random generator in tests 2023-01-23 19:43:49 -08:00
block_stream_writer.go lib/mergeset: properly record the firstItem in metaindexRow at blockStreamWriter.WriteBlock 2024-02-12 18:06:50 +02:00
encoding.go lib/slicesutil: add helper functions for setting slice length and extending its capacity 2024-05-12 11:32:17 +02:00
encoding_test.go lib/mergeset: use deterministic random generator in tests 2023-01-23 19:43:49 -08:00
encoding_timing_test.go lib/mergeset: fix data race in BenchmarkInmemoryBlockMarshal 2023-01-23 19:43:18 -08:00
filenames.go lib/mergeset: consistently use OS-independent separator in file paths 2023-03-25 13:39:41 -07:00
inmemory_part.go lib/mergeset: verify that the index block for in-memory part doesnt exceed the 3*maxIndexBlockSize 2024-02-08 13:50:14 +02:00
merge.go all: consistently use 'any' instead of 'interface{}' 2024-07-10 00:20:37 +02:00
merge_test.go lib/mergeset: consistently use atomic.* types instead of atomic.* function calls on ordinary types 2024-02-23 23:29:35 +02:00
metaindex_row.go lib/encoding: optimize UnmarshalVarUint64, UnmarshalVarInt64 and UnmarshalBytes a bit 2024-05-14 01:23:54 +02:00
part.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00
part_header.go lib/mergeset: fix typos in comments 2024-08-07 15:54:15 +02:00
part_search.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00
part_search_test.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00
table.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00
table_search.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00
table_search_test.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00
table_search_timing_test.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00
table_test.go lib/storage: add a hint for merge about type of parts in merge (#7998) 2025-01-10 16:01:39 +04:00