Tolok ukur ini mengukur kinerja kueri LindormTSDB pada empat ukuran kluster. Semua pengujian dijalankan dalam lingkungan terisolasi tanpa operasi penulisan konkuren—hasilnya merepresentasikan throughput puncak read-only. Kinerja kueri menurun ketika volume data deret waktu besar, operasi tulis dan baca dijalankan secara konkuren, atau kueri memindai banyak deret waktu dan titik waktu. Tinjau hasil ini bersama beban kerja bisnis Anda sendiri sebelum mengambil keputusan kapasitas.
Set data pengujian
| Properti | Nilai |
|---|---|
| Perangkat | 100 |
| Metrik per perangkat | 101 nilai pengukuran |
| Interval pelaporan | 10 detik |
| Durasi data | 1 hari per perangkat |
Jenis kueri
Enam pola kueri diuji. Semua kueri menargetkan metrik cpu.usage_user.
| Jenis kueri | Apa yang diukur | SQL |
|---|---|---|
1-host-1-hr-raw | Semua nilai mentah dari 1 perangkat selama 1 jam | select time, usage_user from cpu where (hostname = 'host_17') and time >=1514837782646 and time < 1514841382646 ; |
1-host-1-hr | Nilai maksimum per menit dari 1 perangkat selama 1 jam | select time, max(usage_user) as max_usage_user from cpu where (hostname = 'host_17') and time >=1514837782646 and time < 1514841382646 sample by 1m |
1-host-12-hr-raw | Semua nilai mentah dari 1 perangkat selama 12 jam | select time, usage_user from cpu where (hostname = 'host_0') and time >=1514787382646 and time < 1514830582646; |
1-host-12-hr | Nilai maksimum per menit dari 1 perangkat selama 12 jam | select time, max(usage_user) as max_usage_user from cpu where (hostname = 'host_0') and time >=1514787382646 and time < 1514830582646 sample by 1m ; |
1-host-latest | Nilai terbaru dari 1 perangkat | select time, latest(usage_user) as latest_usage_user from cpu where (hostname = 'host_50') sample by 0 |
8-host-latest | Nilai terbaru dari 8 perangkat | select time, latest(usage_user) as latest_usage_user from cpu where (hostname = 'host_64' or hostname = 'host_80' or hostname = 'host_21' or hostname = 'host_5' or hostname = 'host_79' or hostname = 'host_47' or hostname = 'host_25' or hostname = 'host_18') sample by 0 |
Metrik kinerja
| Metrik | Deskripsi |
|---|---|
queryType | Jenis kueri, seperti dijelaskan dalam tabel di atas |
worker | Jumlah kueri konkuren |
qps | Kueri SQL per detik |
max_cpu | Utilisasi CPU puncak (%) |
max_mem | Penggunaan memori puncak (%) |
Hasil pengujian
Setiap tabel hasil di bawah ini diukur hanya dengan beban kerja pengujian yang berjalan pada LindormTSDB. Tidak ada beban kerja lain yang berjalan selama pengujian.
Kluster 1 — 3 node, 4 core, memori 16 GB
QPS meningkat dengan baik dari 16 hingga 50 worker, lalu mencapai titik jenuh. Kueri jendela pendek (1-host-1-hr) mencapai hingga 1.887 QPS. Kueri nilai terbaru multi-perangkat (8-host-latest) dibatasi oleh CPU, mencapai 97% CPU pada semua tingkat konkurensi.
| queryType | worker | qps | max_cpu | max_mem |
|---|---|---|---|---|
| 1-host-1-hr | 16 | 1.420,96 | 86,95 | 48,08 |
| 1-host-1-hr | 50 | 1.865,50 | 83,45 | 49,32 |
| 1-host-1-hr | 100 | 1.887,00 | 81,71 | 48,95 |
| 1-host-1-hr | 200 | 1.846,00 | 82,99 | 48,87 |
| 1-host-1-hr-raw | 16 | 1.324,80 | 79,54 | 50,34 |
| 1-host-1-hr-raw | 50 | 1.722,00 | 86,42 | 50,96 |
| 1-host-1-hr-raw | 100 | 1.737,00 | 86,36 | 50,92 |
| 1-host-1-hr-raw | 200 | 1.752,00 | 87,09 | 50,88 |
| 1-host-12-hr | 16 | 497,44 | 86,77 | 48,81 |
| 1-host-12-hr | 50 | 555,00 | 95,05 | 48,81 |
| 1-host-12-hr | 100 | 571,00 | 94,97 | 48,90 |
| 1-host-12-hr | 200 | 584,00 | 94,77 | 49,11 |
| 1-host-12-hr-raw | 16 | 286,56 | 82,20 | 51,04 |
| 1-host-12-hr-raw | 50 | 328,00 | 95,34 | 51,14 |
| 1-host-12-hr-raw | 100 | 330,00 | 96,51 | 51,21 |
| 1-host-12-hr-raw | 200 | 334,00 | 96,70 | 51,56 |
| 1-host-latest | 16 | 1.025,12 | 81,79 | 49,34 |
| 1-host-latest | 50 | 1.146,00 | 93,36 | 49,42 |
| 1-host-latest | 100 | 1.144,00 | 92,41 | 49,36 |
| 1-host-latest | 200 | 1.164,00 | 92,89 | 49,44 |
| 8-host-latest | 16 | 175,20 | 96,65 | 49,64 |
| 8-host-latest | 50 | 180,00 | 97,01 | 49,95 |
| 8-host-latest | 100 | 181,00 | 96,59 | 50,05 |
| 8-host-latest | 200 | 182,00 | 96,73 | 50,15 |
Kluster 2 — 3 node, 8 core, memori 32 GB
Menggandakan jumlah core dan memori kira-kira menggandakan QPS untuk sebagian besar jenis kueri. Kueri 1-host-1-hr mencapai 3.584 QPS pada 200 worker; kueri 8-host-latest mencapai 472 QPS. Penggunaan memori turun signifikan dibandingkan Kluster 1, mencerminkan ruang memori yang lebih besar.
| queryType | worker | qps | max_cpu | max_mem |
|---|---|---|---|---|
| 1-host-1-hr | 16 | 2.426,56 | 79,45 | 31,83 |
| 1-host-1-hr | 50 | 3.363,50 | 71,58 | 33,50 |
| 1-host-1-hr | 100 | 3.530,00 | 73,80 | 35,44 |
| 1-host-1-hr | 200 | 3.584,00 | 70,12 | 35,43 |
| 1-host-1-hr-raw | 16 | 2.181,92 | 52,67 | 36,10 |
| 1-host-1-hr-raw | 50 | 3.231,50 | 69,77 | 36,20 |
| 1-host-1-hr-raw | 100 | 3.371,00 | 72,88 | 36,19 |
| 1-host-1-hr-raw | 200 | 3.348,00 | 69,80 | 35,08 |
| 1-host-12-hr | 16 | 877,44 | 59,57 | 35,66 |
| 1-host-12-hr | 50 | 1.132,50 | 82,37 | 35,51 |
| 1-host-12-hr | 100 | 1.145,00 | 84,10 | 35,55 |
| 1-host-12-hr | 200 | 1.152,00 | 84,69 | 35,62 |
| 1-host-12-hr-raw | 16 | 445,44 | 58,55 | 35,29 |
| 1-host-12-hr-raw | 50 | 641,00 | 84,98 | 35,31 |
| 1-host-12-hr-raw | 100 | 668,00 | 90,79 | 35,35 |
| 1-host-12-hr-raw | 200 | 670,00 | 91,98 | 35,42 |
| 1-host-latest | 16 | 1.785,44 | 51,20 | 35,80 |
| 1-host-latest | 50 | 2.273,50 | 64,86 | 35,92 |
| 1-host-latest | 100 | 2.280,00 | 64,97 | 35,82 |
| 1-host-latest | 200 | 2.284,00 | 65,01 | 35,85 |
| 8-host-latest | 16 | 439,04 | 85,04 | 35,98 |
| 8-host-latest | 50 | 471,50 | 91,71 | 36,00 |
| 8-host-latest | 100 | 472,00 | 92,42 | 36,08 |
| 8-host-latest | 200 | 470,00 | 93,10 | 36,09 |
Kluster 3 — 3 node, 16 core, memori 64 GB
QPS meningkat secara signifikan seiring bertambahnya jumlah core. Kueri 1-host-1-hr mencapai 8.902 QPS pada 200 worker. Penggunaan memori tetap di bawah 28%, menunjukkan bahwa set data muat dengan nyaman dalam memori. Konkurensi yang lebih tinggi terus meningkatkan throughput untuk sebagian besar jenis kueri.
| queryType | worker | qps | max_cpu | max_mem |
|---|---|---|---|---|
| 1-host-1-hr | 16 | 3.287,84 | 49,77 | 25,83 |
| 1-host-1-hr | 50 | 6.543,50 | 56,06 | 26,45 |
| 1-host-1-hr | 100 | 7.713,00 | 59,81 | 26,48 |
| 1-host-1-hr | 200 | 8.902,00 | 75,23 | 26,47 |
| 1-host-1-hr-raw | 16 | 2.857,60 | 32,42 | 26,89 |
| 1-host-1-hr-raw | 50 | 5.173,00 | 50,44 | 26,96 |
| 1-host-1-hr-raw | 100 | 6.177,00 | 56,88 | 26,95 |
| 1-host-1-hr-raw | 200 | 6.530,00 | 59,20 | 26,98 |
| 1-host-12-hr | 16 | 1.148,48 | 38,69 | 26,52 |
| 1-host-12-hr | 50 | 1.920,50 | 71,18 | 26,57 |
| 1-host-12-hr | 100 | 2.181,00 | 82,79 | 26,62 |
| 1-host-12-hr | 200 | 2.398,00 | 91,44 | 26,64 |
| 1-host-12-hr-raw | 16 | 539,20 | 33,78 | 27,04 |
| 1-host-12-hr-raw | 50 | 704,50 | 46,87 | 27,12 |
| 1-host-12-hr-raw | 100 | 612,00 | 41,76 | 27,17 |
| 1-host-12-hr-raw | 200 | 694,00 | 46,89 | 27,24 |
| 1-host-latest | 16 | 2.141,60 | 40,24 | 26,69 |
| 1-host-latest | 50 | 3.602,00 | 77,84 | 26,69 |
| 1-host-latest | 100 | 4.098,00 | 91,87 | 26,72 |
| 1-host-latest | 200 | 4.356,00 | 94,94 | 26,71 |
| 8-host-latest | 16 | 541,28 | 81,87 | 26,77 |
| 8-host-latest | 50 | 599,50 | 97,52 | 26,77 |
| 8-host-latest | 100 | 648,00 | 97,85 | 26,88 |
| 8-host-latest | 200 | 832,00 | 97,40 | 26,94 |
Kluster 4 — 3 node, 32 core, memori 128 GB
Kluster terbesar memberikan throughput tertinggi. Kueri 1-host-1-hr mencapai 15.072 QPS pada 200 worker—kira-kira 8 kali lipat throughput Kluster 1 pada konkurensi yang sama. Kueri 1-host-latest mencapai 9.634 QPS. Utilisasi CPU tetap rendah untuk kueri single-host, menyisakan ruang untuk beban kerja campuran.
| queryType | worker | qps | max_cpu | max_mem |
|---|---|---|---|---|
| 1-host-1-hr | 16 | 3.543,04 | 24,25 | 28,33 |
| 1-host-1-hr | 50 | 9.351,00 | 34,14 | 28,89 |
| 1-host-1-hr | 100 | 12.567,00 | 46,42 | 28,92 |
| 1-host-1-hr | 200 | 15.072,00 | 57,27 | 28,94 |
| 1-host-1-hr-raw | 16 | 2.811,20 | 15,41 | 29,11 |
| 1-host-1-hr-raw | 50 | 6.086,50 | 27,85 | 29,13 |
| 1-host-1-hr-raw | 100 | 7.881,00 | 36,44 | 29,14 |
| 1-host-1-hr-raw | 200 | 8.762,00 | 40,97 | 29,17 |
| 1-host-12-hr | 16 | 1.394,24 | 18,85 | 28,91 |
| 1-host-12-hr | 50 | 3.317,50 | 49,89 | 28,96 |
| 1-host-12-hr | 100 | 4.160,00 | 67,13 | 28,96 |
| 1-host-12-hr | 200 | 4.808,00 | 79,02 | 28,96 |
| 1-host-12-hr-raw | 16 | 542,56 | 17,31 | 29,22 |
| 1-host-12-hr-raw | 50 | 826,50 | 24,96 | 29,24 |
| 1-host-12-hr-raw | 100 | 669,00 | 23,55 | 29,28 |
| 1-host-12-hr-raw | 200 | 772,00 | 24,86 | 29,32 |
| 1-host-latest | 16 | 2.600,00 | 16,04 | 28,97 |
| 1-host-latest | 50 | 6.590,00 | 46,11 | 28,98 |
| 1-host-latest | 100 | 8.516,00 | 65,60 | 28,99 |
| 1-host-latest | 200 | 9.634,00 | 75,93 | 28,98 |
| 8-host-latest | 16 | 949,12 | 55,91 | 29,03 |
| 8-host-latest | 50 | 1.525,50 | 83,49 | 29,04 |
| 8-host-latest | 100 | 1.710,00 | 93,16 | 29,06 |
| 8-host-latest | 200 | 1.758,00 | 95,54 | 29,09 |
Rangkuman kinerja
QPS puncak (di semua tingkat konkurensi) untuk setiap kluster dan jenis kueri. Jumlah worker yang lebih tinggi tidak selalu meningkatkan QPS—hasilnya mencapai titik jenuh atau bervariasi tergantung pada saturasi CPU.
| Jenis kueri | Kluster 1 (4c/16G) | Kluster 2 (8c/32G) | Kluster 3 (16c/64G) | Kluster 4 (32c/128G) |
|---|---|---|---|---|
| 1-host-1-hr | 1.887 | 3.584 | 8.902 | 15.072 |
| 1-host-1-hr-raw | 1.752 | 3.371 | 6.530 | 8.762 |
| 1-host-12-hr | 584 | 1.152 | 2.398 | 4.808 |
| 1-host-12-hr-raw | 334 | 670 | 704,50 | 826,50 |
| 1-host-latest | 1.164 | 2.284 | 4.356 | 9.634 |
| 8-host-latest | 182 | 472 | 832 | 1.758 |