weaviate
732 строки · 17.9 Кб
1{
2"annotations": {
3"list": [
4{
5"builtIn": 1,
6"datasource": {
7"type": "grafana",
8"uid": "-- Grafana --"
9},
10"enable": true,
11"hide": true,
12"iconColor": "rgba(0, 211, 255, 1)",
13"name": "Annotations & Alerts",
14"target": {
15"limit": 100,
16"matchAny": false,
17"tags": [],
18"type": "dashboard"
19},
20"type": "dashboard"
21}
22]
23},
24"editable": true,
25"fiscalYearStartMonth": 0,
26"graphTooltip": 0,
27"links": [],
28"liveNow": false,
29"panels": [
30{
31"datasource": {
32"type": "prometheus",
33"uid": "Prometheus"
34},
35"description": "Replace is used primarly for object storage.",
36"fieldConfig": {
37"defaults": {
38"color": {
39"mode": "thresholds"
40},
41"mappings": [],
42"thresholds": {
43"mode": "absolute",
44"steps": [
45{
46"color": "text",
47"value": null
48}
49]
50},
51"unit": "decbytes"
52},
53"overrides": []
54},
55"gridPos": {
56"h": 10,
57"w": 8,
58"x": 0,
59"y": 0
60},
61"id": 8,
62"options": {
63"colorMode": "value",
64"graphMode": "area",
65"justifyMode": "auto",
66"orientation": "auto",
67"reduceOptions": {
68"calcs": [
69"lastNotNull"
70],
71"fields": "",
72"values": false
73},
74"textMode": "auto"
75},
76"pluginVersion": "9.0.0-beta2",
77"targets": [
78{
79"datasource": {
80"type": "prometheus",
81"uid": "Prometheus"
82},
83"editorMode": "code",
84"expr": "sum by (level, unit) (lsm_segment_size{strategy=\"replace\"})",
85"legendFormat": "Level {{level}} / {{unit}} ",
86"range": true,
87"refId": "A"
88}
89],
90"title": "LSM Strategy Replace by Level (Object Storage)",
91"type": "stat"
92},
93{
94"datasource": {
95"type": "prometheus",
96"uid": "Prometheus"
97},
98"description": "SetCollections are used in the inverted index for anything that does not have a frequency, e.g. numbers, bools, etc.",
99"fieldConfig": {
100"defaults": {
101"color": {
102"mode": "thresholds"
103},
104"mappings": [],
105"thresholds": {
106"mode": "absolute",
107"steps": [
108{
109"color": "text",
110"value": null
111}
112]
113},
114"unit": "decbytes"
115},
116"overrides": []
117},
118"gridPos": {
119"h": 10,
120"w": 8,
121"x": 8,
122"y": 0
123},
124"id": 9,
125"options": {
126"colorMode": "value",
127"graphMode": "area",
128"justifyMode": "auto",
129"orientation": "auto",
130"reduceOptions": {
131"calcs": [
132"lastNotNull"
133],
134"fields": "",
135"values": false
136},
137"textMode": "auto"
138},
139"pluginVersion": "9.0.0-beta2",
140"targets": [
141{
142"datasource": {
143"type": "prometheus",
144"uid": "Prometheus"
145},
146"editorMode": "code",
147"expr": "sum by (level, unit) (lsm_segment_size{strategy=\"setcollection\"})",
148"legendFormat": "Level {{level}} / {{unit}} ",
149"range": true,
150"refId": "A"
151}
152],
153"title": "LSM Strategy SetCollection by Level (Inverted without frequency)",
154"type": "stat"
155},
156{
157"datasource": {
158"type": "prometheus",
159"uid": "Prometheus"
160},
161"description": "MapCollections are used in the inverted index for anything that has a frequency, which is mainly text and string props. Those need a frequency for BM25 calculations.",
162"fieldConfig": {
163"defaults": {
164"color": {
165"mode": "thresholds"
166},
167"mappings": [],
168"thresholds": {
169"mode": "absolute",
170"steps": [
171{
172"color": "text",
173"value": null
174}
175]
176},
177"unit": "decbytes"
178},
179"overrides": []
180},
181"gridPos": {
182"h": 10,
183"w": 8,
184"x": 16,
185"y": 0
186},
187"id": 10,
188"options": {
189"colorMode": "value",
190"graphMode": "area",
191"justifyMode": "auto",
192"orientation": "auto",
193"reduceOptions": {
194"calcs": [
195"lastNotNull"
196],
197"fields": "",
198"values": false
199},
200"textMode": "auto"
201},
202"pluginVersion": "9.0.0-beta2",
203"targets": [
204{
205"datasource": {
206"type": "prometheus",
207"uid": "Prometheus"
208},
209"editorMode": "code",
210"expr": "sum by (level, unit) (lsm_segment_size{strategy=\"mapcollection\"})",
211"legendFormat": "Level {{level}} / {{unit}} ",
212"range": true,
213"refId": "A"
214}
215],
216"title": "LSM Strategy MapCollection by Level (Inverted with frequency)",
217"type": "stat"
218},
219{
220"datasource": {
221"type": "prometheus",
222"uid": "Prometheus"
223},
224"fieldConfig": {
225"defaults": {
226"color": {
227"mode": "palette-classic"
228},
229"custom": {
230"axisLabel": "",
231"axisPlacement": "auto",
232"barAlignment": 0,
233"drawStyle": "line",
234"fillOpacity": 0,
235"gradientMode": "none",
236"hideFrom": {
237"legend": false,
238"tooltip": false,
239"viz": false
240},
241"lineInterpolation": "linear",
242"lineWidth": 1,
243"pointSize": 5,
244"scaleDistribution": {
245"type": "linear"
246},
247"showPoints": "auto",
248"spanNulls": false,
249"stacking": {
250"group": "A",
251"mode": "none"
252},
253"thresholdsStyle": {
254"mode": "off"
255}
256},
257"mappings": [],
258"thresholds": {
259"mode": "absolute",
260"steps": [
261{
262"color": "green",
263"value": null
264},
265{
266"color": "red",
267"value": 80
268}
269]
270},
271"unit": "decbytes"
272},
273"overrides": []
274},
275"gridPos": {
276"h": 8,
277"w": 11,
278"x": 0,
279"y": 10
280},
281"id": 14,
282"options": {
283"legend": {
284"calcs": [],
285"displayMode": "list",
286"placement": "bottom"
287},
288"tooltip": {
289"mode": "single",
290"sort": "none"
291}
292},
293"targets": [
294{
295"datasource": {
296"type": "prometheus",
297"uid": "Prometheus"
298},
299"editorMode": "code",
300"expr": "lsm_memtable_size{}",
301"legendFormat": "{{path}}",
302"range": true,
303"refId": "A"
304}
305],
306"title": "Memtable Size (Individual)",
307"type": "timeseries"
308},
309{
310"datasource": {
311"type": "prometheus",
312"uid": "Prometheus"
313},
314"fieldConfig": {
315"defaults": {
316"color": {
317"mode": "palette-classic"
318},
319"custom": {
320"axisLabel": "",
321"axisPlacement": "auto",
322"barAlignment": 0,
323"drawStyle": "line",
324"fillOpacity": 0,
325"gradientMode": "none",
326"hideFrom": {
327"legend": false,
328"tooltip": false,
329"viz": false
330},
331"lineInterpolation": "linear",
332"lineWidth": 1,
333"pointSize": 5,
334"scaleDistribution": {
335"type": "linear"
336},
337"showPoints": "auto",
338"spanNulls": false,
339"stacking": {
340"group": "A",
341"mode": "none"
342},
343"thresholdsStyle": {
344"mode": "off"
345}
346},
347"mappings": [],
348"thresholds": {
349"mode": "absolute",
350"steps": [
351{
352"color": "green",
353"value": null
354},
355{
356"color": "red",
357"value": 80
358}
359]
360}
361},
362"overrides": []
363},
364"gridPos": {
365"h": 8,
366"w": 12,
367"x": 11,
368"y": 10
369},
370"id": 16,
371"options": {
372"legend": {
373"calcs": [],
374"displayMode": "list",
375"placement": "bottom"
376},
377"tooltip": {
378"mode": "single",
379"sort": "none"
380}
381},
382"targets": [
383{
384"datasource": {
385"type": "prometheus",
386"uid": "Prometheus"
387},
388"editorMode": "code",
389"expr": "rate(lsm_memtable_durations_ms_sum{}[$__interval])/rate(lsm_memtable_durations_ms_count{}[$__interval])",
390"legendFormat": "{{operation}} ({{path}})",
391"range": true,
392"refId": "A"
393}
394],
395"title": "Memtable Operations (individual)",
396"type": "timeseries"
397},
398{
399"datasource": {
400"type": "prometheus",
401"uid": "Prometheus"
402},
403"description": "The bloom filters are designed to quickly produce true negatives, but sometimes they have false positive which require an actual disk lookup.",
404"fieldConfig": {
405"defaults": {
406"color": {
407"mode": "palette-classic"
408},
409"custom": {
410"axisLabel": "",
411"axisPlacement": "auto",
412"barAlignment": 0,
413"drawStyle": "line",
414"fillOpacity": 0,
415"gradientMode": "none",
416"hideFrom": {
417"legend": false,
418"tooltip": false,
419"viz": false
420},
421"lineInterpolation": "linear",
422"lineWidth": 1,
423"pointSize": 5,
424"scaleDistribution": {
425"type": "linear"
426},
427"showPoints": "auto",
428"spanNulls": false,
429"stacking": {
430"group": "A",
431"mode": "none"
432},
433"thresholdsStyle": {
434"mode": "off"
435}
436},
437"mappings": [],
438"thresholds": {
439"mode": "absolute",
440"steps": [
441{
442"color": "green",
443"value": null
444},
445{
446"color": "red",
447"value": 80
448}
449]
450}
451},
452"overrides": []
453},
454"gridPos": {
455"h": 8,
456"w": 8,
457"x": 0,
458"y": 18
459},
460"id": 2,
461"options": {
462"legend": {
463"calcs": [],
464"displayMode": "list",
465"placement": "bottom"
466},
467"tooltip": {
468"mode": "single",
469"sort": "none"
470}
471},
472"targets": [
473{
474"datasource": {
475"type": "prometheus",
476"uid": "Prometheus"
477},
478"editorMode": "code",
479"expr": "rate(lsm_bloom_filters_duration_ms_sum{strategy=\"replace\"}[$__interval])/rate(lsm_bloom_filters_duration_ms_count{strategy=\"replace\"}[$__interval])",
480"legendFormat": "{{operation}} ({{class_name}}/{{shard_name}})",
481"range": true,
482"refId": "A"
483}
484],
485"title": "Bloom Filter Hits and Misses Duration",
486"type": "timeseries"
487},
488{
489"datasource": {
490"type": "prometheus",
491"uid": "Prometheus"
492},
493"description": "Ratio of false-positive to all requests to the bloom filter, i.e. those that required an unnecessary disk lookup.",
494"fieldConfig": {
495"defaults": {
496"color": {
497"mode": "thresholds"
498},
499"mappings": [],
500"thresholds": {
501"mode": "absolute",
502"steps": [
503{
504"color": "green",
505"value": null
506},
507{
508"color": "red",
509"value": 80
510}
511]
512},
513"unit": "percentunit"
514},
515"overrides": []
516},
517"gridPos": {
518"h": 8,
519"w": 3,
520"x": 8,
521"y": 18
522},
523"id": 4,
524"options": {
525"orientation": "auto",
526"reduceOptions": {
527"calcs": [
528"lastNotNull"
529],
530"fields": "",
531"values": false
532},
533"showThresholdLabels": false,
534"showThresholdMarkers": true
535},
536"pluginVersion": "9.0.0-beta2",
537"targets": [
538{
539"datasource": {
540"type": "prometheus",
541"uid": "Prometheus"
542},
543"expr": "sum(lsm_bloom_filters_duration_ms_count{operation=\"get_false_positive\"})/(sum(lsm_bloom_filters_duration_ms_count{operation=\"get_true_negative\"})+sum(lsm_bloom_filters_duration_ms_count{operation=\"get_true_positive\"})+sum(lsm_bloom_filters_duration_ms_count{operation=\"get_false_positive\"}))",
544"refId": "A"
545}
546],
547"title": "Bloom Filter False Positive Ratio",
548"type": "gauge"
549},
550{
551"datasource": {
552"type": "prometheus",
553"uid": "Prometheus"
554},
555"fieldConfig": {
556"defaults": {
557"color": {
558"mode": "thresholds"
559},
560"decimals": 0,
561"mappings": [],
562"thresholds": {
563"mode": "absolute",
564"steps": [
565{
566"color": "text",
567"value": null
568}
569]
570},
571"unit": "none"
572},
573"overrides": []
574},
575"gridPos": {
576"h": 8,
577"w": 7,
578"x": 11,
579"y": 18
580},
581"id": 6,
582"options": {
583"colorMode": "value",
584"graphMode": "area",
585"justifyMode": "auto",
586"orientation": "auto",
587"reduceOptions": {
588"calcs": [
589"lastNotNull"
590],
591"fields": "",
592"values": false
593},
594"text": {},
595"textMode": "auto"
596},
597"pluginVersion": "9.0.0-beta2",
598"targets": [
599{
600"datasource": {
601"type": "prometheus",
602"uid": "Prometheus"
603},
604"editorMode": "code",
605"expr": "sum(lsm_bloom_filters_duration_ms_count{operation=\"get_true_positive\"})",
606"legendFormat": "True Positives",
607"range": true,
608"refId": "A"
609},
610{
611"datasource": {
612"type": "prometheus",
613"uid": "Prometheus"
614},
615"editorMode": "code",
616"expr": "sum(lsm_bloom_filters_duration_ms_count{operation=\"get_true_negative\"})",
617"hide": false,
618"legendFormat": "True Negatives",
619"range": true,
620"refId": "B"
621},
622{
623"datasource": {
624"type": "prometheus",
625"uid": "Prometheus"
626},
627"editorMode": "code",
628"expr": "sum(lsm_bloom_filters_duration_ms_count{operation=\"get_false_positive\"})",
629"hide": false,
630"legendFormat": "False Positives",
631"range": true,
632"refId": "C"
633}
634],
635"title": "Bloom Filter Access",
636"type": "stat"
637},
638{
639"datasource": {
640"type": "prometheus",
641"uid": "Prometheus"
642},
643"description": "The grouping is done by strategy which means the reported Object storage value may be slightly too high, due to other buckets using replace strategy.",
644"fieldConfig": {
645"defaults": {
646"color": {
647"mode": "thresholds"
648},
649"mappings": [],
650"min": 0,
651"thresholds": {
652"mode": "absolute",
653"steps": [
654{
655"color": "text",
656"value": null
657}
658]
659},
660"unit": "decbytes"
661},
662"overrides": []
663},
664"gridPos": {
665"h": 8,
666"w": 6,
667"x": 18,
668"y": 18
669},
670"id": 12,
671"options": {
672"displayMode": "gradient",
673"minVizHeight": 10,
674"minVizWidth": 0,
675"orientation": "auto",
676"reduceOptions": {
677"calcs": [
678"lastNotNull"
679],
680"fields": "",
681"values": false
682},
683"showUnfilled": true
684},
685"pluginVersion": "9.0.0-beta2",
686"targets": [
687{
688"datasource": {
689"type": "prometheus",
690"uid": "Prometheus"
691},
692"editorMode": "code",
693"expr": "sum(lsm_segment_size{strategy=\"replace\"})",
694"legendFormat": "Object Storage",
695"range": true,
696"refId": "A"
697},
698{
699"datasource": {
700"type": "prometheus",
701"uid": "Prometheus"
702},
703"editorMode": "code",
704"expr": "sum(lsm_segment_size{strategy=\"mapcollection\"}) + ignoring(strategy) sum(lsm_segment_size{strategy=\"setcollection\"})",
705"hide": false,
706"legendFormat": "Inverted Index",
707"range": true,
708"refId": "B"
709}
710],
711"title": "Estimated Sizes LSM stores",
712"type": "bargauge"
713}
714],
715"refresh": false,
716"schemaVersion": 36,
717"style": "dark",
718"tags": [],
719"templating": {
720"list": []
721},
722"time": {
723"from": "now-15m",
724"to": "now"
725},
726"timepicker": {},
727"timezone": "",
728"title": "LSM Store",
729"uid": "hPd0sernz",
730"version": 1,
731"weekStart": ""
732}
733