Go to file
Thomas Jackson b4132df5f7 Reduce allocations for queries on `HEAD` (#417)
Some benchmarks for HEAD and allocate the correct slice size in LabelValues , we already know what it'll be

This is ~15% time improvement, and ~25% allocation improvement:


```
benchmark                             old ns/op     new ns/op     delta
BenchmarkHeadPostingForMatchers-4     74452         63514         -14.69%

benchmark                             old allocs     new allocs     delta
BenchmarkHeadPostingForMatchers-4     20             13             -35.00%

benchmark                             old bytes     new bytes     delta
BenchmarkHeadPostingForMatchers-4     5425          3137          -42.18%
```

Signed-off-by: Thomas Jackson <jacksontj.89@gmail.com>
2018-10-22 13:52:01 +03:00
chunkenc fix some comments typos (#315) 2018-04-08 10:28:30 +01:00
chunks Make interval overlap comparisons more explicit 2018-07-02 10:35:08 +02:00
cmd/tsdb Refactor Makefile to use Makefile.common (#324) 2018-09-21 11:08:38 +03:00
docs/format Reword chunk references, LSB usually means 'bits'. (#364) 2018-09-27 21:38:02 +03:00
fileutil fileutil: remove dependency on prometheus/prometheus 2018-10-15 17:21:20 +02:00
index more meaningful names for serializedStringTuples and stringTuples (#377) 2018-10-02 21:03:12 +03:00
labels Fix labels bench test 2018-03-22 12:28:09 +08:00
test index: simplify checksum validation 2017-11-09 15:58:36 +00:00
testdata Add repair test 2018-02-09 13:43:42 +01:00
testutil fileutil: remove dependency on prometheus/prometheus 2018-10-15 17:21:20 +02:00
tsdbutil use test utils in buffer_test 2017-12-06 17:15:02 -08:00
wal more descriptive var names and some more logging. (#405) 2018-10-11 18:23:52 +03:00
.gitignore Add default benchmark output dir to .gitignore 2018-01-14 11:07:52 +00:00
.travis.yml Refactor Makefile to use Makefile.common (#324) 2018-09-21 11:08:38 +03:00
LICENSE Add license file 2017-04-10 21:02:42 +02:00
MAINTAINERS.md add maintainers file (#404) 2018-10-15 14:32:00 +03:00
Makefile Refactor Makefile to use Makefile.common (#324) 2018-09-21 11:08:38 +03:00
Makefile.common Refactor Makefile to use Makefile.common (#324) 2018-09-21 11:08:38 +03:00
README.md Add link to PromCon 2017 video. 2018-06-04 14:41:43 +02:00
block.go Fix updating of NumTombstones in block.Delete(..) (#385) 2018-09-27 14:43:22 +03:00
block_test.go add rwmutex to prevent concurrent map read when delete series 2018-06-08 19:52:01 +08:00
checkpoint.go more descriptive var names and some more logging. (#405) 2018-10-11 18:23:52 +03:00
checkpoint_test.go Fix review comments 2018-09-28 15:00:51 +05:30
compact.go compact: Verify for chunks outside of compacted time range. Added unit test for populateBlocs. (#349) 2018-10-12 12:45:19 +03:00
compact_test.go compact: Verify for chunks outside of compacted time range. Added unit test for populateBlocs. (#349) 2018-10-12 12:45:19 +03:00
db.go remove unused changes variable (#391) 2018-09-21 09:24:01 +03:00
db_test.go Fix TestCorrectNumTombstones (#399) 2018-09-28 13:26:29 +03:00
encoding_helpers.go Fix minor typos in comments 2018-01-15 14:27:49 +01:00
head.go Reduce allocations for queries on `HEAD` (#417) 2018-10-22 13:52:01 +03:00
head_bench_test.go Reduce allocations for queries on `HEAD` (#417) 2018-10-22 13:52:01 +03:00
head_test.go removed some unused code and moved mockSeriesSet in querier_test (#394) 2018-09-21 11:07:35 +03:00
mocks_test.go compact: Verify for chunks outside of compacted time range. Added unit test for populateBlocs. (#349) 2018-10-12 12:45:19 +03:00
querier.go removed some unused code and moved mockSeriesSet in querier_test (#394) 2018-09-21 11:07:35 +03:00
querier_test.go compact: Verify for chunks outside of compacted time range. Added unit test for populateBlocs. (#349) 2018-10-12 12:45:19 +03:00
record.go Add checkpointing of WAL segments 2018-07-19 07:24:40 -04:00
record_test.go Add checkpointing of WAL segments 2018-07-19 07:24:40 -04:00
repair.go Address Julius's comment 2018-06-20 09:19:49 +02:00
repair_test.go clean up after running repair tests (#372) 2018-09-21 20:35:33 +03:00
tombstones.go Fix updating of NumTombstones in block.Delete(..) (#385) 2018-09-27 14:43:22 +03:00
tombstones_test.go remove `put` function and use RLock in `Iter` function 2018-06-25 21:52:11 +08:00
wal.go removed some unused code and moved mockSeriesSet in querier_test (#394) 2018-09-21 11:07:35 +03:00
wal_test.go Fix assert order being backwards in a few places (#388) 2018-09-21 09:23:01 +03:00

README.md

TSDB Build Status

GoDoc Go Report Card

This repository contains the Prometheus storage layer that is used in its 2.x releases.

A writeup of its design can be found here.

Video: Storing 16 Bytes at Scale from PromCon 2017.

See also the format documentation.