Tichatarisa kuti Zabbix inoshanda sei neTimescaleDB dhatabhesi seyokumashure. Tichakuratidza kuti ungatanga sei kubva pakatanga uye kuti ungatama sei kubva kuPostgreSQL. Isu tichapawo kuenzanisa kwekuita bvunzo dzemagadzirirwo maviri.
HighLoad ++ Siberia 2019. Tomsk Hall. Chikumi 24, 16:00. Izvi uye
Andrey Gushchin (pano - AG): -Ini ndiri ZABBIX tekinoroji yekutsigira mainjiniya (inozonzi "Zabbix"), mudzidzisi. Ndanga ndichishanda mukutsigira kwehunyanzvi kweanopfuura makore 6 uye ndave neruzivo rwakananga nekuita. Nhasi ndichataura pamusoro pekuita izvo TimescaleDB inogona kupa kana ichienzaniswa nePostgreSQL yenguva dzose 10. Uyewo, chimwe chikamu chekutanga pamusoro pekuti inoshanda sei muhuwandu.
Zvinetso zvekugadzirwa kwepamusoro: kubva pakuunganidzwa kwedata kusvika pakucheneswa kwedata
Kutanga, kune mamwe matambudziko ekuita ayo ese ekutarisa system anotarisana nawo. Dambudziko rekutanga rekugadzira kuunganidza uye kugadzirisa data nekukurumidza.
Iyo yakanaka yekutarisa sisitimu inofanirwa kukurumidza, panguva yakakodzera kugamuchira data rese, kuigadzirisa zvinoenderana neinokonzeresa mataurirwo, ndiko kuti, igadzirise zvinoenderana nemamwe maitiro (izvi zvakasiyana mumasisitimu akasiyana) uye woichengeta mudhatabhesi kuti ushandise iyi data mune ramangwana.
Chechipiri chekuita dambudziko ndeyekuchengetedza nhoroondo. Chengetedza mudhatabhesi kazhinji uye uwane nekukurumidza uye nyore kuwana kune aya metrics akaunganidzwa nekufamba kwenguva. Chinonyanya kukosha ndechekuti iyi data iri nyore kuwana, shandisa mumishumo, magirafu, zvinokonzeresa, mune mamwe madhiri echikumbaridzo, yekuzivisa, nezvimwe.
Dambudziko rechitatu rekuita kucheneswa kwenhoroondo, ndiko kuti, kana wasvika padanho rausingade kuchengetedza chero akadzama metrics akaunganidzwa pamusoro pemakore mashanu (kunyangwe mwedzi kana mwedzi miviri). Mamwe ma network node akadzimwa, kana mamwe mahosts, metrics haachadiwe nekuti atove echinyakare uye haachaunganidzwa. Zvese izvi zvinoda kucheneswa kuti dhatabhesi rako risakure zvakanyanya. Kazhinji, kubvisa nhoroondo inowanzova muedzo wakakomba wekuchengetedza - kazhinji ine simba rakasimba pakuita.
Nzira yekugadzirisa sei caching matambudziko?
Ini zvino ndichataura zvakananga nezve Zabbix. MuZabbix, yekutanga uye yechipiri mafoni anogadziriswa uchishandisa caching.
Kuunganidza uye kugadzirisa data - Isu tinoshandisa RAM kuchengetedza iyi data yese. Aya data zvino achakurukurwa zvakadzama.
Zvakare padivi redatabase pane imwe caching yezvisarudzo zvikuru - zvemagirafu nezvimwe zvinhu.
Kuchengetera padivi peZabbix server pachayo: isu tine ConfigurationCache, ValueCache, HistoryCache, TrendsCache. Chii?
ConfigurationCache ndiyo huru cache yatinochengeta metrics, mauto, data data, zvinokonzeresa; zvese zvaunoda kuti ugadzirise preprocessing, kuunganidza data, kubva kune iyo mauto kuunganidza, neiyo frequency. Zvese izvi zvakachengetwa muConfigurationCache kuitira kuti usaende kudhatabhesi uye kugadzira mibvunzo isingaite. Mushure mekunge sevha yatanga, tinogadzirisa iyi cache (igadzirise) uye inovandudza nguva nenguva (zvichienderana nekugadzirisa zvirongwa).
Kuchengeta muZabbix. Data collection
Heino dhayagiramu yakakura kwazvo:
Iwo makuru muchirongwa ndeava vateresi:
Aya ndiwo maitiro egungano pachawo, "vavhoti" vakasiyana-siyana vane basa remhando dzakasiyana dzemagungano. Ivo vanounganidza data kuburikidza neicmp, ipmi, uye akasiyana maprotocol uye voaendesa kune preprocessing.
PreProcessing HistoryCache
Zvakare, kana isu takaverenga data data (avo vanoziva Zabbix vanoziva), ndiko kuti, akaverengerwa, aggregation data zvinhu, tinozvitora zvakananga kubva kuValueCache. Ndichakuudza kuti inozadzwa sei gare gare. Vese ava vaunganidzi vanoshandisa ConfigurationCache kuti vagamuchire mabasa avo vobva vaapfuudza kune preprocessing.
Preprocessing inoshandisawo ConfigurationCache kuwana preprocessing matanho uye kugadzirisa iyi data nenzira dzakasiyana. Kutanga kubva mushanduro 4.2, takaiendesa kune proxy. Izvi zviri nyore, nekuti preprocessing pachayo ibasa rakaoma. Uye kana iwe uine Zabbix yakakura kwazvo, ine nhamba huru yezvinhu zve data uye yakakwira yekuunganidza frequency, zvino izvi zvinorerutsa basa zvakanyanya.
Saizvozvo, mushure mekunge tagadzirisa iyi data neimwe nzira tichishandisa preprocessing, tinoichengeta muHistoryCache kuitira kuti tienderere mberi. Izvi zvinopedzisa kuunganidzwa kwedata. Tinoenderera mberi kune nzira huru.
Nhoroondo syncer basa
Iyo huru maitiro muZabbix (sezvo iri monolithic architecture) ndeye Nhoroondo syncer. Iyi ndiyo nzira huru inobata zvakananga nekugadziriswa kweatomu yechinhu chimwe nechimwe che data, kureva kukosha kwega kwega:
- kukosha kunouya (inotora kubva kuHistoryCache);
- inotarisa muKugadziridza syncer: kana paine zvinokonzeresa kuverenga - kuzviverengera;
kana paine - inogadzira zviitiko, inogadzira kukwira kuitira kuti igadzire yambiro, kana zvichidikanwa maererano nekugadzirisa; - zvinyorwa zvinokonzeresa zvekugadzirisa kunotevera, kuunganidza; kana iwe ukaunganidza pamusoro peawa yekupedzisira uye zvichingodaro, kukosha uku kunorangarirwa neValueCache kuitira kuti usaende kutafura yenhoroondo; Saka, iyo ValueCache yakazadzwa neiyo data inodiwa iyo inofanirwa kuverenga zvinokonzeresa, zvakaverengerwa zvinhu, nezvimwe;
- ipapo Nhoroondo syncer inonyora data rese kune dhatabhesi;
- iyo dhatabhesi inovanyorera ku diski - apa ndipo panopera maitiro ekugadzirisa.
Database. Caching
Padivi re database, kana iwe uchida kuona magirafu kana mamwe mishumo pane zviitiko, kune akasiyana cache. Asi mushumo uyu handisi kuzotaura nezvavo.
Kune MySQL kune Innodb_buffer_pool, uye boka reakasiyana cache anogona zvakare kugadzirwa.
Asi aya ndiwo makuru:
- shared_buffers;
- inoshanda_cache_size;
- shared_pool.
Kune ese dhatabhesi, ndakati kune mamwe macache anobvumidza iwe kuchengeta muRAM iyo data inowanzodiwa pamibvunzo. Vane matekinoroji avo eizvi.
About Database Performance
Saizvozvo, kune nharaunda yemakwikwi, ndiko kuti, sevha yeZabbix inounganidza data uye inorekodha. Kana yatangwazve, inoverengawo kubva munhoroondo kuzadza iyo ValueCache zvichingodaro. Pano iwe unogona kuva nezvinyorwa uye mishumo inoshandisa Zabbix API, iyo yakavakirwa pawebhu interface. Zabbix API inopinda mudhatabhesi uye inogamuchira data inodiwa kuti iwane magirafu, mishumo, kana imwe mhando yerondedzero yezviitiko, matambudziko achangoburwa.
Zvakare yakakurumbira yekuona mhinduro ndeye Grafana, iyo vashandisi vedu vanoshandisa. Inokwanisa kupinda zvakananga mukati mese kuburikidza neZabbix API uye kuburikidza nedhatabhesi. Iyo zvakare inogadzira imwe makwikwi ekutora data: yakakwenenzverwa, zvirinani tuning yedatabase inodiwa kuti ienderane nekukasira kuburitsa kwemhedzisiro uye kuyedzwa.
Kubvisa nhoroondo. Zabbix ane Housekeeper
Kufona kwechitatu kunoshandiswa muZabbix kudzima nhoroondo uchishandisa Housekeeper. Muchengeti wemba anotevera zvigadziriso zvese, kureva kuti, data data yedu inoratidza kuti inguva yakadii kuchengeta (mumazuva), inguva yakadii kuchengetedza maitiro, uye masimba ekuchinja.
Ini handina kutaura nezveTrendCache, yatinoverenga panhunzi: data inosvika, tinoiunganidza kweawa imwe (kunyanya idzi nhamba dzeawa yekupedzisira), huwandu hwacho huri pakati / hushoma uye tinoinyora kamwe paawa tafura yesimba rekuchinja (βTrendsβ) . "Muchengeti wemba" anotanga uye anobvisa data kubva kudhatabhesi achishandisa nguva dzose anosarudza, izvo zvisingawanzoshanda.
Nzira yekunzwisisa sei kuti haibatsiri? Iwe unogona kuona unotevera mufananidzo pane ekuita magirafu emukati maitiro:
Yako Nhoroondo syncer inogara yakabatikana (tsvuku girafu). Uye iyo "tsvuku" girafu inoenda pamusoro. Uyu "Muchengeti wemba" anotanga uye anomirira kuti dhatabhesi ibvise mitsetse yese yayakataura.
Ngatitorei imwe Item ID: iwe unofanirwa kudzima yekupedzisira zviuru zvishanu; zvirokwazvo, nema indexes. Asi kazhinji iyo dataset yakakura kwazvo - iyo dhatabhesi ichiri kuiverenga kubva kudhisiki uye inoiisa mu cache, uye iyi inodhura kwazvo mashandiro edhatabhesi. Zvichienderana nehukuru hwayo, izvi zvinogona kutungamirira kune mamwe matambudziko ekuita.
Unogona kudzima Muchengeti Wemba nenzira iri nyore - isu tine inozivikanwa pawebhu interface. Settings in Administration general (settings ye "Housekeeper") tinodzima kuchengetedza kwemukati kwenhoroondo yemukati uye maitiro. Saizvozvo, Housekeeper haachadzore izvi:
Chii chaungaita chinotevera? Iwe wakaidzima, magirafu ako akadzikama kunze ... Ndeapi mamwe matambudziko angamuka munyaya iyi? Chii chingabatsira?
Kupatsanura (chikamu)
Kazhinji izvi zvinogadziriswa neimwe nzira pane yega yega yehukama dhatabhesi yandanyora. MySQL ine tekinoroji yayo. Asi zvakazara iwo akafanana zvakanyanya kana zvasvika kune PostgreSQL 10 uye MySQL. Ehe, kune misiyano yakawanda yemukati mashandisirwo ayo ese uye kuti zvese zvinokanganisa sei kuita. Asi kazhinji, kusikwa kwechikamu chitsva kazhinji kunotungamira kune mamwe matambudziko.
Zvichienderana neseta yako (yakawanda sei data yaunogadzira muzuva rimwe), ivo vanowanzoisa iyo shoma - iri izuva 1 / batch, uye ne "maitiro", masimba ekuchinja - 1 mwedzi / batch nyowani. Izvi zvinogona kuchinja kana iwe uine yakakura kwazvo setup.
Ngatitaurei ipapo nezve saizi yekuseta: kusvika zviuru zvishanu zvitsva pasekondi (inonzi nvps) - iyi ichaonekwa sediki "setup". Avhareji - kubva pa5 kusvika ku5 zviuru zvakakosha pasekondi. Zvese zviri pamusoro zvatove zvakakura uye zvakakura kwazvo zvimisikidzo zvinoda kunyatso gadzirisa dhatabhesi.
Pakuisa kwakakura kwazvo, zuva rimwe rinogona kunge risiri rakakwana. Ini pachangu ndakaona zvikamu paMySQL zve1 gigabytes pazuva (uye panogona kunge paine zvimwe). Iyi yakawanda kwazvo data, iyo inogona kutungamirira kune mamwe matambudziko. Inoda kuderedzwa.
Sei uchida partitioning?
Izvo Partitioning inopa, ndinofunga munhu wese anoziva, kugovera tafura. Kazhinji aya mafaera akaparadzana pane diski uye zvikumbiro zvespan. Iyo inosarudza chikamu chimwe zvakanyanya zvakanyanya kana chiri chikamu chezvakajairwa kupatsanura.
KuZabbix, kunyanya, inoshandiswa nehuwandu, nehuwandu, kureva kuti, tinoshandisa timestamp (nhamba yenguva dzose, nguva kubva pakutanga kwegore). Iwe unotsanangura kutanga kwezuva / kupera kwezuva, uye ichi ndicho chikamu. Saizvozvo, kana iwe uchikumbira data ine mazuva maviri ekuzvarwa, zvese zvinodzoserwa kubva kudhatabhesi nekukurumidza, nekuti iwe unongoda kurodha faira rimwe chete mu cache uye woridzosera (pane tafura hombe).
Mazhinji dhatabhesi zvakare anomhanyisa kuisa (kuisa mune imwe tafura yemwana). Ndiri kutaura zvinonzwisisika izvozvi, asi izvi zvinogoneka zvakare. Kugovana kazhinji kunobatsira.
Elasticsearch yeNoSQL
Munguva pfupi yapfuura, muna 3.4, takashandisa mhinduro yeNoSQL. Yakawedzera kugona kunyora muElasticsearch. Iwe unogona kunyora mamwe marudzi: iwe unosarudza - kana kunyora nhamba kana zvimwe zviratidzo; tine tambo mavara, unogona kunyora matanda kuElasticsearch... Saizvozvowo, web interface ichawanawo Elasticsearch. Izvi zvinoshanda zvakanaka mune dzimwe nguva, asi panguva ino zvinogona kushandiswa.
TimescaleDB. Hypertables
Kune 4.4.2 takateerera kune chinhu chimwe chete seTimescaleDB. Chii? Uku kuwedzeredza kwePostgreSQL, ndiko kuti, ine yemuno PostgreSQL interface. Uyezve, iyi yekuwedzera inokutendera kuti ushande zvakanyanya netimeseries data uye kuve neotomatiki kugovera. Zvazvinoita:
Izvi zvine hypertable - kune pfungwa yakadaro mu Timescale. Iyi hypertable yaunogadzira, uye ine chunks. Chunks zvikamu, aya matafura evana, kana ndisiri kukanganisa. Inoshanda chaizvo.
TimescaleDB uye PostgreSQL
Sezvinovimbiswa nevagadziri veTimescaleDB, vanoshandisa algorithm chaiyo yekugadzirisa mibvunzo, kunyanya kuisa, iyo inobvumira kuita kunenge kuchiitwa nekukura kuri kuwedzera kweiyo dataset yekuisa. Kureva kuti, mushure memitsara yemamiriyoni mazana maviri ePostgres, iyo yakajairwa inotanga kunyura zvakanyanya uye kurasikirwa nekuita chaiko kusvika zero, nepo Timescale inobvumidza iwe kuti uise inoisa zvinobudirira sezvinobvira nechero huwandu hwe data.
Maitiro ekuisa TimescaleDB? Zviri nyore!
Iri muzvinyorwa, zvinotsanangurwa - unogona kuiisa kubva pamapakeji chero ipi zvayo ... Zvinoenderana nepamutemo Postgres mapakeji. Inogona kuunganidzwa nemaoko. Zvakaitika kuti ndaifanira kuunganidza kune database.
PaZabbix isu tinongo mutsa Extention. Ndinofunga kuti avo vakashandisa Extention muPostgres... Iwe unongoshandisa Extention, gadzira iyo Zabbix database yauri kushandisa.
Uye danho rekupedzisira...
TimescaleDB. Kutama kwematafura enhoroondo
Iwe unofanirwa kugadzira hypertable. Pane basa rinokosha reizvi - Gadzira hypertable. Mariri, yekutanga parameter ndiyo tafura inodiwa mune iyi database (iyo yaunoda kugadzira hypertable).
Nzvimbo yekugadzira, uye chunk_time_interval (iyi ndiyo nguva yezvimedu (zvikamu zvinoda kushandiswa). 86 izuva rimwe.
Migrate_data parameter: Kana iwe ukaisa kune chokwadi, saka izvi zvinofambisa data rese razvino kune rakafanogadzirwa chunks.
Ini ndashandisa migrate_data pachangu - zvinotora nguva yakati rebei, zvichienderana nekuti yakakura sei database yako. Ndakanga ndine anopfuura terabyte - zvakatora inopfuura awa kugadzira. Mune zvimwe zviitiko, panguva yekuyedzwa, ndakadzima dhata renhoroondo yezvinyorwa (history_text) uye tambo (history_str) kuti ndirege kuvaendesa - vanga vasinganyanyi kunakidza kwandiri.
Uye isu tinoita yekupedzisira update mune yedu db_extention: isu tinoisa timescaledb kuitira kuti dhatabhesi uye, kunyanya, Zabbix yedu inonzwisisa kuti kune db_extention. Anoimutsa uye anoshandisa syntax chaiyo uye mibvunzo kune dhatabhesi, achishandisa izvo "maficha" anodiwa kuTimescaleDB.
Server configuration
Ndakashandisa maseva maviri. Yekutanga sevha kadikidiki kadiki muchina, 20 processors, 16 gigabytes ye RAM. Ini ndakagadzirisa Postgres 10.8 pairi:
Iyo yekushandisa system yaive Debian, iyo faira system yaive xfs. Ini ndakagadzira mashoma marongero ekushandisa iyi dhatabhesi, kubvisa iyo Zabbix pachayo ichashandisa. Pamuchina mumwechete paive nezabbix server, PostgreSQL uye vamiririri vanotakura zvinhu.
Ndashandisa makumi mashanu anoshanda maajenti anoshandisa LoadableModule kukurumidza kuburitsa mhedzisiro dzakasiyana. Ndivo vakagadzira tambo, nhamba, nezvimwe zvakadaro. Ndakazadza dhatabhesi nedata rakawanda. Pakutanga, iyo gadziriso yaive ine zviuru zvishanu zve data zvinhu pamunhu mumwe nemumwe, uye ingangoita yega yega data chinhu chine chinokonzeresa - kuitira kuti iyi ive yekuseta chaiko. Dzimwe nguva unotoda kanopfuura kamwechete kanokonzeresa kushandisa.
Ini ndakadzora nguva yekuvandudza uye mutoro wega nekusangoshandisa makumi mashanu vamiririri (kuwedzera zvimwe), asi zvakare nekushandisa zvine simba data data uye kudzikisa nguva yekuvandudza kusvika masekonzi mana.
Performance test. PostgreSQL: 36 zviuru NVPs
Kutanga kwekutanga, yekutanga setup yandaive nayo yaive paPostreSQL 10 yakachena pane iyi hardware (35 zviuru zvakakosha pasekondi). Kazhinji, sezvauri kuona pachiratidziro, kuisa data kunotora zvikamu zvesekondi - zvese zvakanaka uye nekukurumidza, SSD inotyaira (200 gigabytes). Chinhu chete ndechekuti 20 GB inozadza nekukurumidza.
Pachave neakawanda magirafu akadaro mune ramangwana. Iyi ndiyo yakajairwa Zabbix server performance dashboard.
Yekutanga girafu ndiyo nhamba yezvakakosha pasekondi (bhuruu, kumusoro kuruboshwe), zviuru makumi matatu neshanu kukosha mune iyi kesi. Iyi (yepamusoro yepakati) ndiko kurodha kwemaitiro ekuvaka, uye uku (kumusoro kurudyi) ndiko kurodha kwemukati maitiro: nhoroondo syncers uye muchengeti wemba, ayo pano (pazasi pakati) anga achimhanya kwenguva yakati rebei.
Iyi girafu (yepakati pepakati) inoratidza kushandiswa kweValueCache - vangani ValueCache inorova yezvinokonzeresa (zviuru zvakati zvakakosha pasekondi). Imwe girafu yakakosha ndeyechina (pazasi kuruboshwe), iyo inoratidza kushandiswa kweHistoryCache, yandakataura nezvayo, inova buffer isati yapinza mudhatabhesi.
Performance test. PostgreSQL: 50 zviuru NVPs
Tevere, ini ndakawedzera mutoro kune zviuru makumi mashanu kukosha pasekondi pane imwechete hardware. Kana yakatakurwa neMuchengeti Wemba, zviuru gumi zvetsika dzakanyorwa mumasekonzi 50-10 nekuverenga. Chii, muchokwadi, chinoratidzwa mune inotevera skrini:
"Muchengeti weimba" atotanga kuvhiringidza basa, asi kazhinji, mutoro wezvakaitika kare-sinker trappers uchiri pamwero we60% (girafu yechitatu, kumusoro kurudyi). NhoroondoCache inototanga kuzadza nesimba apo Muchengeti wemba ari kumhanya (pazasi kuruboshwe). Yakanga inenge hafu yegigabyte, 20% yakazara.
Performance test. PostgreSQL: 80 zviuru NVPs
Ipapo ndakaiwedzera kusvika ku80 zviuru zvetsika pasekondi:
Yakanga inosvika zviuru mazana mana zve data zvinhu, 400 zviuru zvinokonzeresa. Iyo yekuisa, sezvauri kuona, maererano nekuremerwa kwenhoroondo sinkers (paive ne280 yavo) yaive yatokwira zvakanyanya. Ipapo ini ndakawedzera siyana parameters: nhoroondo sinkers, cache ... Pamusoro Hardware ichi, mutoro pamusoro nhoroondo sinkers akatanga kuwedzera kusvika pakakwirira, anenge "pasherufu" - maererano, HistoryCache yakapinda zvikuru kwazvo mutoro:
Nguva yese iyi ndakatarisa ese ma parameter ehurongwa (mashandisirwo anoitwa processor, RAM) uye ndakaona kuti kushandiswa kwedisiki kwaive kwakanyanya - ndakawana huwandu hwepamusoro hwedhisiki iyi pane iyi hardware, pamushini uyu chaiwo. "Postgres" yakatanga kurasa dhata zvine simba zvakanyanya, uye dhisiki rakanga risisina nguva yekunyora, kuverenga ...
Ndakatora imwe sevha yaitove ne 48 processors uye 128 gigabytes ye RAM:
Ini zvakare "ndakaigadzirisa" - ndakaisa Nhoroondo syncer (60 zvidimbu) uye ndakawana kuita kunogamuchirika. Muchokwadi, isu hatisi "pasherufu," asi iyi ingangodaro muganhu wekubudirira, uko kwatove kudikanwa kuita chimwe chinhu nezvazvo.
Performance test. TimescaleDB: 80 zviuru zveNVPs
Basa rangu guru raive rekushandisa TimescaleDB. Girafu imwe neimwe inoratidza dip:
Kukundikana uku ndiko kutama chaiko kwedata. Mushure meizvozvo, muSevha yeZabbix, iyo yekurodha nhoroondo yevanonyura nhoroondo, sezvauri kuona, yakachinja zvakanyanya. Iyo inokutendera iwe kuti uise data kanenge katatu nekukurumidza uye shandisa shoma HistoryCache - zvinoenderana, iwe uchave nedata rakaunzwa nenguva. Zvekare, zviuru makumi masere zvehunhu pasekondi imwe yakaringana mwero (zvechokwadi, kwete yeYandex). Pakazere iyi igadziriso yakakura, ine server imwe.
PostgreSQL performance test: 120 zviuru NVPs
Tevere, ndakawedzera kukosha kwenhamba ye data data kusvika hafu yemiriyoni uye ndakagamuchira yakaverengerwa kukosha kwe125 zviuru pasekondi:
Uye ndakawana aya magirafu:
Muchidimbu, iyi igadziriro yekushanda, inogona kushanda kwenguva yakareba. Asi sezvo ndaingova ne1,5 terabyte disk, ndakaishandisa mumazuva mashoma. Chinhu chinonyanya kukosha ndechekuti panguva imwechete zvikamu zvitsva zvakasikwa paTimescaleDB, uye izvi zvakanga zvisingazivikanwi zvachose nokuda kwekuita, izvo zvisingagoni kutaurwa nezveMySQL.
Kazhinji, zvikamu zvinogadzirwa usiku, nekuti izvi zvinowanzovhara kuisa uye kushanda nematafura uye zvinogona kutungamira mukuderedzwa kwesevhisi. Munyaya iyi izvi hazvisizvo! Basa guru raive rekuyedza kugona kweTimescaleDB. Mhedzisiro yaive iyi inotevera nhamba: 120 zviuru zvakakosha pasekondi.
Kunewo mienzaniso munharaunda:
Munhu wacho akavhurawo TimescaleDB uye mutoro wekushandisa io.weight wakadonha pa processor; uye kushandiswa kwezvinhu zvemukati maitiro kwakadzikirawo nekuda kwekuiswa kweTimescaleDB. Uyezve, aya akajairwa pancake disks, kureva, akajairika muchina wemadhisiki akajairwa (kwete SSDs)!
Kune mamwe madiki maseti ayo anoganhurirwa nedhisiki kuita, TimescaleDB, mumaonero angu, mhinduro yakanaka kwazvo. Ichakubvumidza kuti uenderere mberi uchishanda usati watamira kune nekukurumidza hardware kune database.
Ndinokukokai mose kuzviitiko zvedu: Musangano muMoscow, Summit muRiga. Shandisa zviteshi zvedu - Teregiramu, foramu, IRC. Kana iwe uine chero mibvunzo, huya kudhesiki redu, tinogona kutaura nezve zvese.
Mibvunzo Yevateereri
Mubvunzo kubva kune vateereri (pano - A): - Kana TimescaleDB iri nyore kugadzirisa, uye inopa kuwedzera kwekuita kwakadaro, saka zvichida izvi zvinofanira kushandiswa senzira yakanakisisa yekugadzirisa Zabbix nePostgres? Uye pane zvipingamupinyi uye zvipingamupinyi zvemhinduro iyi, kana shure kwezvose, kana ndakasarudza kuzviitira Zabbix, ndinogona kutora Postgres nyore, kuisa Timescale ipapo pakarepo, shandisa uye usafunga nezvematambudziko?
AG: - Ehe, ndingati iyi ikurudziro yakanaka: shandisa Postgres nekukurumidza neTimescaleDB yekuwedzera. Sezvandambotaura, dzakawanda wongororo dzakanaka, pasinei nokuti "chinhu" ichi chiri kuedza. Asi chaizvo bvunzo dzinoratidza kuti iyi imhinduro yakanaka (ine TimescaleDB) uye ndinofunga ichashanduka! Isu tiri kutarisa kuti kuwedzera uku kunokura sei uye tichaita shanduko sezvinodiwa.
Kunyangwe panguva yekuvandudza, takavimba pane chimwe che "maitiro" avo anozivikanwa: zvaikwanisika kushanda nechunks zvishoma zvakasiyana. Asi vakazozvicheka mukuburitswa kunotevera, uye taifanira kumira kuvimba neiyi kodhi. Ini ndinokurudzira kushandisa iyi mhinduro pane akawanda setups. Kana ukashandisa MySQL ... Paavhareji setups, chero mhinduro inoshanda zvakanaka.
A: -Pamagirafu ekupedzisira kubva munharaunda, pakanga paine girafu rine "Muchengeti wemba":
Akaramba achishanda. Muchengeti wemba anoita sei neTimescaleDB?
AG: - Iye zvino handigoni kutaura chokwadi - ndichatarisa kodhi uye ndikuudze zvakadzama. Inoshandisa TimescaleDB mibvunzo kwete kudzima chunks, asi neimwe nzira kuaunganidza. Ini handisati ndagadzirira kupindura uyu mubvunzo wehunyanzvi. Tozoziva zvakawanda kustand nhasi kana mangwana.
A: - Ini ndine mubvunzo wakafanana - nezve mashandiro ekudzima mashandiro mu Timescale.
A (mhinduro kubva kune vateereri): - Paunodzima data kubva patafura, kana ukazviita nekudzima, saka unofanirwa kupfuura netafura - bvisa, chenesa, maka zvese kuti zvigadziriswe mune ramangwana. MuTimescale, sezvo uine chunks, unogona kudonha. Zvichireva kutaura, iwe unongoudza iyo faira iri mune yakakura data: "Delete!"
Timescale inongonzwisisa kuti chunk yakadaro haipo. Uye sezvo yakabatanidzwa muchirongwa chemubvunzo, inoshandisa zvikorekedzo kubata mamiriro ako mukusarudza kana mamwe maoperation uye pakarepo inonzwisisa kuti chunk iyi haipo - "Ini handichaendi ikoko!" (data haipo). Ndizvo zvose! Kureva, tafura scan inotsiviwa nebhanari faira kudzima, saka inokurumidza.
A: -Takatobata pamusoro penyaya yevasiri-SQL. Sekunzwisisa kwandinoita, Zabbix haidi kunyatso shandura iyo data, uye izvi zvese chimwe chinhu senge danda. Zvinokwanisika here kushandisa dhatabhesi rakasarudzika risingakwanisi kushandura data ravo, asi panguva imwechete chengetedza, kuunganidza, uye kugovera zvakanyanya nekukurumidza - Clickhouse, semuenzaniso, chimwe chinhu Kafka-senge?.. Kafka zvakare danda! Zvinoita here neimwe nzira kuvabatanidza?
AG: - Kuburutsa kunogona kuitwa. Tine imwe "chimiro" kubva mushanduro 3.4: unogona kunyora zvese zvekare mafaera, zviitiko, zvimwe zvese kumafaira; uye wozoitumira kune chero imwe dhatabhesi uchishandisa imwe handler. Muchokwadi, vanhu vazhinji vanoshanda zvakare uye vanonyora zvakananga kune dhatabhesi. Panhunzi, vanonyura nhoroondo vanonyora zvese izvi mumafaira, tenderedza mafaera aya, zvichingodaro, uye unogona kuendesa izvi kuClickhouse. Ini handikwanise kutaura nezvezvirongwa, asi pamwe kumwe kutsigirwa kweNoSQL mhinduro (seClickhouse) ichaenderera mberi.
A: - Kazhinji, zvinoitika kuti iwe unogona kubvisa zvachose postgres?
AG: - Ehe, chikamu chakaoma kwazvo muZabbix matafura enhoroondo, ayo anogadzira matambudziko mazhinji, uye zviitiko. Muchiitiko ichi, kana iwe usingachengetedzi zviitiko kwenguva yakareba uye uchichengetedza nhoroondo nemafambiro mune imwe nzvimbo yekuchengetedza inokurumidza, saka kazhinji, ndinofunga, hapazovi nematambudziko.
A: - Unogona here kufungidzira kuti zvakakurumidza sei zvese zvichashanda kana ukachinja kuClickhouse, semuenzaniso?
AG: - Handina kuzviyedza. Ini ndinofunga kuti nhamba dzakafanana dzinogona kuwanikwa zviri nyore, zvichipihwa kuti Clickhouse ine yayo pachayo interface, asi ini handikwanise kutaura chokwadi. Zviri nani kuedza. Izvo zvese zvinoenderana nekugadziriswa: vangani mauto aunawo, uye zvichingodaro. Kuisa chinhu chimwe, asi iwe zvakare unofanirwa kudzoreredza iyi data - Grafana kana chimwe chinhu.
A: - Saka tiri kutaura nezve kurwa kwakaenzana, uye kwete nezve mukana mukuru weaya anokurumidza dhatabhesi?
AG: - Ndinofunga patinobatanidza, pachava nemiedzo yakarurama.
A: - Ndekupi kwakaenda RRD yakanaka yekare? Chii chakaita kuti uchinje kuSQL dhatabhesi? Pakutanga, metrics ese akaunganidzwa paRRD.
AG: - Zabbix aive neRRD, pamwe mune yekare vhezheni. Pagara paine SQL dhatabhesi - yemhando yepamusoro maitiro. Iyo yemhando yepamusoro nzira ndeyeMySQL, PostgreSQL (yave iripo kwenguva yakareba kwazvo). Isu hatina kumbobvira tashandisa yakajairwa interface yeSQL uye RRD dhatabhesi.
Dzimwe ads π
Ndinokutendai nekugara nesu. Unoda zvinyorwa zvedu here? Unoda kuona zvimwe zvinonakidza zvemukati? Titsigire nekuisa odha kana kukurudzira kushamwari,
Dell R730xd 2 nguva yakachipa muEquinix Tier IV data center muAmsterdam? Chete pano
Source: www.habr.com