1. 02 1月, 2020 1 次提交
  2. 01 1月, 2020 2 次提交
  3. 27 12月, 2019 1 次提交
    • J
      Fix: exclude metric name in labels.MatchLabels() (#6523) · ae93bae8
      Julius Volz 提交于
      This function is only used in one place to format an error message when
      encountering multiple matches on the "one" side of a
      one-to-many/many-to-one vector match, which is probably why nobodoy has
      noticed this before. The hashing is already done correctly and excludes
      the metric name label when using the "ignoring" matching modifier.
      Signed-off-by: NJulius Volz <julius.volz@gmail.com>
      ae93bae8
  4. 25 12月, 2019 3 次提交
  5. 24 12月, 2019 1 次提交
  6. 23 12月, 2019 1 次提交
  7. 21 12月, 2019 2 次提交
  8. 20 12月, 2019 5 次提交
  9. 19 12月, 2019 6 次提交
  10. 18 12月, 2019 14 次提交
    • T
      PromQL: Parse grouping opts with the generated parser (#6472) · 9e34f08a
      Tobias Guggenmos 提交于
      * PromQL: Parse grouping opts with the generated parser
      Signed-off-by: NTobias Guggenmos <tguggenm@redhat.com>
      9e34f08a
    • S
      Revert "Added s390x support for docker image (#6307)" (#6478) · f174ae1f
      Simon Pasquier 提交于
      This reverts commit f9bf8e4e.
      Signed-off-by: NSimon Pasquier <spasquie@redhat.com>
      f174ae1f
    • B
      Merge pull request #6475 from prometheus/constant-compaction · 92f31c3e
      Brian Brazil 提交于
      Constant memory compaction
      92f31c3e
    • J
      2d7c8069
    • B
      Write label indices based on the posting offset table. · 2b653ee2
      Brian Brazil 提交于
      This avoids having to build it up in RAM, and means that all variable
      memory usage for compactions is now 0.25 bytes per symbol plus a few
      O(labelnames) structures. So in practice, pretty close to constant
      memory for compactions.
      
      benchmark                                                                                   old ns/op       new ns/op       delta
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4        662974828       667162981       +0.63%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4       2459590377      2131168138      -13.35%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4       3808280548      3919290378      +2.91%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4       8513884311      8738099339      +2.63%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4      1898843003      1944131966      +2.39%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4     5601478437      6031391658      +7.67%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4     11225096097     11359624463     +1.20%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4     23994637282     23919583343     -0.31%
      BenchmarkCompactionFromHead/labelnames=1,labelvalues=100000-4                               891042098       826898358       -7.20%
      BenchmarkCompactionFromHead/labelnames=10,labelvalues=10000-4                               915949138       902555676       -1.46%
      BenchmarkCompactionFromHead/labelnames=100,labelvalues=1000-4                               955138431       879067946       -7.96%
      BenchmarkCompactionFromHead/labelnames=1000,labelvalues=100-4                               991447640       958785968       -3.29%
      BenchmarkCompactionFromHead/labelnames=10000,labelvalues=10-4                               1068729356      980249080       -8.28%
      
      benchmark                                                                                   old allocs     new allocs     delta
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4        470778         470556         -0.05%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4       791429         791225         -0.03%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4       1111514        1111257        -0.02%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4       2111498        2111369        -0.01%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4      841433         841220         -0.03%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4     1911469        1911202        -0.01%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4     3041558        3041328        -0.01%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4     6741534        6741382        -0.00%
      BenchmarkCompactionFromHead/labelnames=1,labelvalues=100000-4                               824856         820873         -0.48%
      BenchmarkCompactionFromHead/labelnames=10,labelvalues=10000-4                               887220         885180         -0.23%
      BenchmarkCompactionFromHead/labelnames=100,labelvalues=1000-4                               905253         901539         -0.41%
      BenchmarkCompactionFromHead/labelnames=1000,labelvalues=100-4                               925148         913632         -1.24%
      BenchmarkCompactionFromHead/labelnames=10000,labelvalues=10-4                               1019141        978727         -3.97%
      
      benchmark                                                                                   old bytes      new bytes      delta
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4        35694744       41523836       +16.33%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4       53405264       59499056       +11.41%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4       74160320       78151568       +5.38%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4       120878480      135364672      +11.98%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4      203832448      209925504      +2.99%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4     341029208      346551064      +1.62%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4     580217176      582345224      +0.37%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4     1356872288     1363495368     +0.49%
      BenchmarkCompactionFromHead/labelnames=1,labelvalues=100000-4                               119535672      94815920       -20.68%
      BenchmarkCompactionFromHead/labelnames=10,labelvalues=10000-4                               115352280      95980776       -16.79%
      BenchmarkCompactionFromHead/labelnames=100,labelvalues=1000-4                               119472320      98724460       -17.37%
      BenchmarkCompactionFromHead/labelnames=1000,labelvalues=100-4                               111979312      94325456       -15.77%
      BenchmarkCompactionFromHead/labelnames=10000,labelvalues=10-4                               116628584      98566344       -15.49%
      Signed-off-by: NBrian Brazil <brian.brazil@robustperception.io>
      2b653ee2
    • V
      Added s390x support for docker image (#6307) · f9bf8e4e
      vitt-bagal 提交于
      Signed-off-by: NVitthal Bagal <vitthalb@us.ibm.com>
      f9bf8e4e
    • B
    • B
      Move writing of index label indices into IndexWriter. · dee6981a
      Brian Brazil 提交于
      Now you only need to provide symbols and series to IndexWriter.
      Signed-off-by: NBrian Brazil <brian.brazil@robustperception.io>
      dee6981a
    • B
      Factor out index file writing code. · 1733724e
      Brian Brazil 提交于
      Now that we have more than one file open at a time, deduplicate a bit.
      Signed-off-by: NBrian Brazil <brian.brazil@robustperception.io>
      1733724e
    • B
      During compaction spool postings offset table on the side. · 85964ce5
      Brian Brazil 提交于
      This avoids building it up in memory.
      Signed-off-by: NBrian Brazil <brian.brazil@robustperception.io>
      85964ce5
    • J
      Improve testutil.ErrorEqual (#6471) · 31700a05
      Julien Pivotto 提交于
      Also improves TestPopulateLabels: testutil.ErrorEqual just returned a
      bool without failing the test.
      Signed-off-by: NJulien Pivotto <roidelapluie@inuits.eu>
      31700a05
    • B
      Stream symbols during compaction. (#6468) · d782387f
      Brian Brazil 提交于
      Rather than buffer up symbols in RAM, do it one by one
      during compaction. Then use the reader's symbol handling
      for symbol lookups during the rest of the index write.
      
      There is some slowdown in compaction, due to having to look through a file
      rather than a hash lookup. This is noise to the overall cost of compacting
      series with thousands of samples though.
      
      benchmark                                                                                   old ns/op       new ns/op       delta
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4        539917175       675341565       +25.08%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4       2441815993      2477453524      +1.46%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4       3978543559      3922909687      -1.40%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4       8430219716      8586610007      +1.86%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4      1786424591      1909552782      +6.89%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4     5328998202      6020839950      +12.98%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4     10085059958     11085278690     +9.92%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4     25497010155     27018079806     +5.97%
      BenchmarkCompactionFromHead/labelnames=1,labelvalues=100000-4                               2427391406      2817217987      +16.06%
      BenchmarkCompactionFromHead/labelnames=10,labelvalues=10000-4                               2592965497      2538805050      -2.09%
      BenchmarkCompactionFromHead/labelnames=100,labelvalues=1000-4                               2437388343      2668012858      +9.46%
      BenchmarkCompactionFromHead/labelnames=1000,labelvalues=100-4                               2317095324      2787423966      +20.30%
      BenchmarkCompactionFromHead/labelnames=10000,labelvalues=10-4                               2600239857      2096973860      -19.35%
      
      benchmark                                                                                   old allocs     new allocs     delta
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4        500851         470794         -6.00%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4       821527         791451         -3.66%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4       1141562        1111508        -2.63%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4       2141576        2111504        -1.40%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4      871466         841424         -3.45%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4     1941428        1911415        -1.55%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4     3071573        3041510        -0.98%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4     6771648        6741509        -0.45%
      BenchmarkCompactionFromHead/labelnames=1,labelvalues=100000-4                               731493         824888         +12.77%
      BenchmarkCompactionFromHead/labelnames=10,labelvalues=10000-4                               793918         887311         +11.76%
      BenchmarkCompactionFromHead/labelnames=100,labelvalues=1000-4                               811842         905204         +11.50%
      BenchmarkCompactionFromHead/labelnames=1000,labelvalues=100-4                               832244         925081         +11.16%
      BenchmarkCompactionFromHead/labelnames=10000,labelvalues=10-4                               921553         1019162        +10.59%
      
      benchmark                                                                                   old bytes      new bytes      delta
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4        40532648       35698276       -11.93%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4       60340216       53409568       -11.49%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4       81087336       72065552       -11.13%
      BenchmarkCompaction/type=normal,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4       142485576      120878544      -15.16%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=101-4      208661368      203831136      -2.31%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=1001-4     347345904      340484696      -1.98%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=2001-4     585185856      576244648      -1.53%
      BenchmarkCompaction/type=vertical,blocks=4,series=10000,samplesPerSeriesPerBlock=5001-4     1357641792     1358966528     +0.10%
      BenchmarkCompactionFromHead/labelnames=1,labelvalues=100000-4                               126486664      119666744      -5.39%
      BenchmarkCompactionFromHead/labelnames=10,labelvalues=10000-4                               122323192      115117224      -5.89%
      BenchmarkCompactionFromHead/labelnames=100,labelvalues=1000-4                               126404504      119469864      -5.49%
      BenchmarkCompactionFromHead/labelnames=1000,labelvalues=100-4                               119047832      112230408      -5.73%
      BenchmarkCompactionFromHead/labelnames=10000,labelvalues=10-4                               136576016      116634800      -14.60%
      Signed-off-by: NBrian Brazil <brian.brazil@robustperception.io>
      d782387f
    • B
      Load only some offsets into the symbol table into memory. · 767fa704
      Brian Brazil 提交于
      Rather than keeping the entire symbol table in memory, keep every nth
      offset and walk from there to the entry we need. This ends up slightly
      slower, ~360ms per 1M series returned from PostingsForMatchers which is
      not much considering the rest of the CPU such a query would go on to
      use.
      
      Make LabelValues use the postings tables, rather than having
      to do symbol lookups. Use yoloString, as PostingsForMatchers
      doesn't need the strings to stick around and adjust the API
      call to keep the Querier open until it's all marshalled.
      
      Remove allocatedSymbols memory optimisation, we no longer keep all the
      symbol strings in heap memory. Remove LabelValuesFor and LabelIndices,
      they're dead code. Ensure we've still tests for label indices,
      and add missing test that we can work with old V1 Format index files.
      
      PostingForMatchers performance is slightly better, with a big drop in
      allocation counts due to using yoloString for LabelValues:
      
      benchmark                                                               old ns/op     new ns/op     delta
      BenchmarkPostingsForMatchers/Block/n="1"-4                              36698         36681         -0.05%
      BenchmarkPostingsForMatchers/Block/n="1",j="foo"-4                      522786        560887        +7.29%
      BenchmarkPostingsForMatchers/Block/j="foo",n="1"-4                      511652        537680        +5.09%
      BenchmarkPostingsForMatchers/Block/n="1",j!="foo"-4                     522102        564239        +8.07%
      BenchmarkPostingsForMatchers/Block/i=~".*"-4                            113689911     111795919     -1.67%
      BenchmarkPostingsForMatchers/Block/i=~".+"-4                            135825572     132871085     -2.18%
      BenchmarkPostingsForMatchers/Block/i=~""-4                              40782628      38038181      -6.73%
      BenchmarkPostingsForMatchers/Block/i!=""-4                              31267869      29194327      -6.63%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".*",j="foo"-4              112733329     111568823     -1.03%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".*",i!="2",j="foo"-4       112868153     111232029     -1.45%
      BenchmarkPostingsForMatchers/Block/n="1",i!=""-4                        31338257      29349446      -6.35%
      BenchmarkPostingsForMatchers/Block/n="1",i!="",j="foo"-4                32054482      29972436      -6.50%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",j="foo"-4              136504654     133968442     -1.86%
      BenchmarkPostingsForMatchers/Block/n="1",i=~"1.+",j="foo"-4             27960350      27264997      -2.49%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",i!="2",j="foo"-4       136765564     133860724     -2.12%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",i!~"2.*",j="foo"-4     163714583     159453668     -2.60%
      
      benchmark                                                               old allocs     new allocs     delta
      BenchmarkPostingsForMatchers/Block/n="1"-4                              6              6              +0.00%
      BenchmarkPostingsForMatchers/Block/n="1",j="foo"-4                      11             11             +0.00%
      BenchmarkPostingsForMatchers/Block/j="foo",n="1"-4                      11             11             +0.00%
      BenchmarkPostingsForMatchers/Block/n="1",j!="foo"-4                     17             15             -11.76%
      BenchmarkPostingsForMatchers/Block/i=~".*"-4                            100012         12             -99.99%
      BenchmarkPostingsForMatchers/Block/i=~".+"-4                            200040         100040         -49.99%
      BenchmarkPostingsForMatchers/Block/i=~""-4                              200045         100045         -49.99%
      BenchmarkPostingsForMatchers/Block/i!=""-4                              200041         100041         -49.99%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".*",j="foo"-4              100017         17             -99.98%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".*",i!="2",j="foo"-4       100023         23             -99.98%
      BenchmarkPostingsForMatchers/Block/n="1",i!=""-4                        200046         100046         -49.99%
      BenchmarkPostingsForMatchers/Block/n="1",i!="",j="foo"-4                200050         100050         -49.99%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",j="foo"-4              200049         100049         -49.99%
      BenchmarkPostingsForMatchers/Block/n="1",i=~"1.+",j="foo"-4             111150         11150          -89.97%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",i!="2",j="foo"-4       200055         100055         -49.99%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",i!~"2.*",j="foo"-4     311238         111238         -64.26%
      
      benchmark                                                               old bytes     new bytes     delta
      BenchmarkPostingsForMatchers/Block/n="1"-4                              296           296           +0.00%
      BenchmarkPostingsForMatchers/Block/n="1",j="foo"-4                      424           424           +0.00%
      BenchmarkPostingsForMatchers/Block/j="foo",n="1"-4                      424           424           +0.00%
      BenchmarkPostingsForMatchers/Block/n="1",j!="foo"-4                     552           1544          +179.71%
      BenchmarkPostingsForMatchers/Block/i=~".*"-4                            1600482       1606125       +0.35%
      BenchmarkPostingsForMatchers/Block/i=~".+"-4                            17259065      17264709      +0.03%
      BenchmarkPostingsForMatchers/Block/i=~""-4                              17259150      17264780      +0.03%
      BenchmarkPostingsForMatchers/Block/i!=""-4                              17259048      17264680      +0.03%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".*",j="foo"-4              1600610       1606242       +0.35%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".*",i!="2",j="foo"-4       1600813       1606434       +0.35%
      BenchmarkPostingsForMatchers/Block/n="1",i!=""-4                        17259176      17264808      +0.03%
      BenchmarkPostingsForMatchers/Block/n="1",i!="",j="foo"-4                17259304      17264936      +0.03%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",j="foo"-4              17259333      17264965      +0.03%
      BenchmarkPostingsForMatchers/Block/n="1",i=~"1.+",j="foo"-4             3142628       3148262       +0.18%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",i!="2",j="foo"-4       17259509      17265141      +0.03%
      BenchmarkPostingsForMatchers/Block/n="1",i=~".+",i!~"2.*",j="foo"-4     20405680      20416944      +0.06%
      
      However overall Select performance is down and involves more allocs, due to
      having to do more than a simple map lookup to resolve a symbol and that all the strings
      returned are allocated:
      
      benchmark                                           old ns/op     new ns/op      delta
      BenchmarkQuerierSelect/Block/1of1000000-4           506092636     862678244      +70.46%
      BenchmarkQuerierSelect/Block/10of1000000-4          505638968     860917636      +70.26%
      BenchmarkQuerierSelect/Block/100of1000000-4         505229450     882150048      +74.60%
      BenchmarkQuerierSelect/Block/1000of1000000-4        515905414     862241115      +67.13%
      BenchmarkQuerierSelect/Block/10000of1000000-4       516785354     874841110      +69.29%
      BenchmarkQuerierSelect/Block/100000of1000000-4      540742808     907030187      +67.74%
      BenchmarkQuerierSelect/Block/1000000of1000000-4     815224288     1181236903     +44.90%
      
      benchmark                                           old allocs     new allocs     delta
      BenchmarkQuerierSelect/Block/1of1000000-4           4000020        6000020        +50.00%
      BenchmarkQuerierSelect/Block/10of1000000-4          4000038        6000038        +50.00%
      BenchmarkQuerierSelect/Block/100of1000000-4         4000218        6000218        +50.00%
      BenchmarkQuerierSelect/Block/1000of1000000-4        4002018        6002018        +49.97%
      BenchmarkQuerierSelect/Block/10000of1000000-4       4020018        6020018        +49.75%
      BenchmarkQuerierSelect/Block/100000of1000000-4      4200018        6200018        +47.62%
      BenchmarkQuerierSelect/Block/1000000of1000000-4     6000018        8000019        +33.33%
      
      benchmark                                           old bytes     new bytes     delta
      BenchmarkQuerierSelect/Block/1of1000000-4           176001468     227201476     +29.09%
      BenchmarkQuerierSelect/Block/10of1000000-4          176002620     227202628     +29.09%
      BenchmarkQuerierSelect/Block/100of1000000-4         176014140     227214148     +29.09%
      BenchmarkQuerierSelect/Block/1000of1000000-4        176129340     227329348     +29.07%
      BenchmarkQuerierSelect/Block/10000of1000000-4       177281340     228481348     +28.88%
      BenchmarkQuerierSelect/Block/100000of1000000-4      188801340     240001348     +27.12%
      BenchmarkQuerierSelect/Block/1000000of1000000-4     304001340     355201616     +16.84%
      Signed-off-by: NBrian Brazil <brian.brazil@robustperception.io>
      767fa704
    • B
  11. 17 12月, 2019 4 次提交