mirror of
https://github.com/prometheus/prometheus.git
synced 2026-05-05 04:16:15 +02:00
docs: add chunk file format
This commit is contained in:
parent
cdfb604d89
commit
d8b91b969c
29
Documentation/format/chunks.md
Normal file
29
Documentation/format/chunks.md
Normal file
@ -0,0 +1,29 @@
|
||||
# Chunks Disk Format
|
||||
|
||||
The following describes the format of a single chunks file, which is created in the `chunks/` directory of a block.
|
||||
|
||||
```
|
||||
┌────────────────────────────┬──────────────────┐
|
||||
│ magic(0x85BD40DD) <4 byte> | version <1 byte> │
|
||||
├────────────────────────────┴──────────────────┤
|
||||
│ Body ... │
|
||||
└───────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
Available versions:
|
||||
* v1 (`1`)
|
||||
|
||||
## Body (v1)
|
||||
|
||||
The body contains a sequence of chunks, each of which has the following format.
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ ┌──────────────┬───────────────────┬────────────┐ │
|
||||
│ │ len <varint> | encoding <1 byte> │ data │ ... │
|
||||
│ └──────────────┴───────────────────┴────────────┘ │
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
The length marks the length of the encoding byte and data combined.
|
||||
The CRC checksum is calculated over the encoding byte and data.
|
||||
Loading…
x
Reference in New Issue
Block a user