{"id":53944,"date":"2019-12-13T00:00:00","date_gmt":"2019-12-12T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/clickhouse-graphite-kak-znachitelno-umenshit-potreblyaemoe-mesto-na-diskah"},"modified":"2020-02-18T14:01:53","modified_gmt":"2020-02-18T11:01:53","slug":"clickhouse-graphite-kak-znachitelno-umenshit-potreblyaemoe-mesto-na-diskah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/clickhouse-graphite-kak-znachitelno-umenshit-potreblyaemoe-mesto-na-diskah","title":{"rendered":"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada\" src=\"\/wp-content\/uploads\/2019\/12\/5a2d19e6fea2a28d8d4aa9220653aefc.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tere tulemast, habr.<\/p>\n<p><\/p>\n<p>Kui keegi kasutab s\u00fcsteemi <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graphite-project\/graphite-web\">graphite-web<\/a><\/noindex> ja on kohanud salvestusprobleemide toime efektiivsust <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/graphite-project\/whisper\">whisper<\/a><\/noindex> (IO, kasutatud kettaruumi), siis t\u00f5en\u00e4osus, et vaadatakse ClickHouse'i alternatiivina, peaks olema peaaegu 100%. See eeldab, et m\u00f5\u00f5temetoodika demon on juba kolmanda osapoole teostus, n\u00e4iteks <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grobian\/carbonwriter\">carbonwriter<\/a><\/noindex> v\u00f5i <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/go-graphite\/go-carbon\">go-carbon<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>ClickHouse lahendab kirjeldatud probleemid h\u00e4sti. N\u00e4iteks, p\u00e4rast 2TiB andmete \u00fclekanne whisper'ist mahtusid need 300GiB sisse. Ma ei hakka detailide v\u00f5rdlemisega vaeva n\u00e4gema, sellel teemal on piisavalt artikleid. Lisaks, kuni hiljuti polnud meie ClickHouse'i salvestamine t\u00e4iesti ideaalne.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3 id=\"problemy-s-potreblyaemym-mestom\">Probleemid salvestusruumiga<\/h3>\n<p><\/p>\n<p>Esmapilgul peaks k\u00f5ik t\u00f6\u00f6le hakkama. J\u00e4rgides <noindex><a rel=\"nofollow\" href=\"https:\/\/clickhouse.yandex\/docs\/ru\/operations\/table_engines\/graphitemergetree\/#primer-konfiguratsii\">dokumentatsioonis<\/a><\/noindex>, loome metoodika salvestamise skeemi konfiguratsiooni (edasi <code>retention<\/code>), luuakse siis tabel vastavalt valitud veebiteenuse soovitusele: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/lomik\/carbon-clickhouse\">carbon-clickhouse<\/a><\/noindex>+<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/lomik\/graphite-clickhouse\">graphite-clickhouse<\/a><\/noindex> v\u00f5i <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ClickHouse\/graphouse\">graphouse<\/a><\/noindex>, s\u00f5ltuvalt sellest, millist tehnolooge kasutusele v\u00f5etakse. Ja... k\u00e4ivitub aeglane plahvatus.<\/p>\n<p><\/p>\n<p>Selleks, et m\u00f5ista, milline see on, tuleb teada, kuidas t\u00f6\u00f6tavad sisestused ja edasine andmete eluiga tabelites, mis kuuluvad *semeenrikondade*<em>MergeTree<\/em> ClickHouse (diagrammid on saadud <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/PLMSA_gDdyM\">esitluses<\/a><\/noindex> Aleksei Zatelepini):<\/p>\n<p><\/p>\n<ul>\n<li>Sisestatakse <code>plokk<\/code> andmeid. Meie puhul on need juhtunud metriigid.<br \/>\n<img decoding=\"async\" alt=\"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada\" src=\"\/wp-content\/uploads\/2019\/12\/b60d482acca3c8d187d394f58a2d8a16.png\" style=\"display:block;margin: 0 auto;\" \/><\/li>\n<li>Iga selline plokk sorteeritakse enne kettale kirjutamist vastavalt v\u00f5tmele, <code>ORDER BY<\/code>, mis on m\u00e4\u00e4ratud tabeli loomisel.<\/li>\n<li>P\u00e4rast sorteerimist <code>t\u00fckk<\/code> (<code>part<\/code>) andmeid kirjutatakse kettale.<br \/>\n<img decoding=\"async\" alt=\"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada\" src=\"\/wp-content\/uploads\/2019\/12\/a54903b8efa0866d24da303fa7a68134.png\" style=\"display:block;margin: 0 auto;\" \/><\/li>\n<li>Server j\u00e4lgib taustal, et selliseid t\u00fckke ei oleks liiga palju, ning k\u00e4ivitab taustal <code>\u00fchinemisi<\/code> (<code>merge<\/code>, edasised mergenud).<br \/>\n<img decoding=\"async\" alt=\"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada\" src=\"\/wp-content\/uploads\/2019\/12\/151c18c7b73ebc4097493b13a2e26765.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada\" src=\"\/wp-content\/uploads\/2019\/12\/1921908554981eca0847541f77a15790.png\" style=\"display:block;margin: 0 auto;\" \/><\/li>\n<li>Server l\u00f5petab \u00fchinemise automaatse k\u00e4ivitamise, kui andmed enam ei voola aktiivselt <code>partitsiooni<\/code> (<code>partition<\/code>), kuid protsessi saab k\u00e4sitsi k\u00e4ivitada k\u00e4suga <code>OPTIMIZE<\/code>.<\/li>\n<li>Kui partitsioonis on j\u00e4\u00e4nud ainult \u00fcks t\u00fckk, siis ei saa tavalise k\u00e4suga \u00fchinemist k\u00e4ivitada, vaid tuleb kasutada <code>OPTIMIZE ... FINAL<\/code><\/li>\n<\/ul>\n<p><\/p>\n<p>Nii et esimesed metriigid on k\u00e4es. Ja nad v\u00f5tavad teatud ruumi. Edasised s\u00fcndmused v\u00f5ivad varieeruda palju, s\u00f5ltuvalt paljusid tegureid:<\/p>\n<p><\/p>\n<ul>\n<li>Partitsiooni v\u00f5tmed v\u00f5ivad olla kas v\u00e4ga v\u00e4ikesed (p\u00e4ev) v\u00f5i v\u00e4ga suured (mitu kuud).<\/li>\n<li>Retention konfiguratsioon v\u00f5ib mahutada mitu olulist andmete aggregatsiooni l\u00e4ve aktiivses partitsioonis (kuhu kirjutatakse m\u00f5\u00f5dikud), aga see ei pruugi nii olla.<\/li>\n<li>Kui andmeid on v\u00e4ga palju, siis varasemad osad, mis taustal toimuvate \u00fchendamiste t\u00f5ttu v\u00f5ivad olla juba suured (kui valitakse mittesoovitav partitsioneerimise v\u00f5ti), ei \u00fchtistu enam v\u00e4rskete v\u00e4ikeste osadega.<\/li>\n<\/ul>\n<p><\/p>\n<p>Ja k\u00f5ik l\u00f5ppeb alati \u00fchtemoodi. ClickHouse'is v\u00f5etud m\u00f5\u00f5dikute ruum ainult suureneb, kui:<\/p>\n<p><\/p>\n<ul>\n<li>ei rakendata <code>OPTIMIZE ... FINAL<\/code> k\u00e4sitsi v\u00f5i<\/li>\n<li>ei sisestata andmeid k\u00f5ikidesse partitsioonidesse pidevalt, et varem v\u00f5i hiljem k\u00e4ivitada taustal toimuv \u00fchendamine.<\/li>\n<\/ul>\n<p><\/p>\n<p>Teine meetod tundub k\u00f5ige lihtsam teostada ja seet\u00f5ttu on see vale ning on esmalt testitud.<br \/>\nOlen kirjutanud piisavalt lihtsa skripti Pythonis, mis saatis vale m\u00f5\u00f5dikud iga p\u00e4eva kohta viimase nelja aasta jooksul ja k\u00e4ivitati iga tunne croni abil.<br \/>\nKuna kogu ClickHouse DBMS-i t\u00f6\u00f6 p\u00f5hineb sellel, et see s\u00fcsteem teeb varem v\u00f5i hiljem kogu taustat\u00f6\u00f6, kuid ei ole teada, millal, ei olnud mul v\u00f5imalik oodata hetke, mil vanad suured t\u00fckkid l\u00e4hevad kokku uute v\u00e4ikeste t\u00fckkidega. Selgeks sai, et tuleb leida viis sunnitud optimeerimise automatiseerimiseks.<\/p>\n<p>\n<img decoding=\"async\" alt=\"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada\" src=\"\/wp-content\/uploads\/2019\/12\/60b0354cb65dcba6e8402b67261041ff.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3 id=\"informaciya-v-sistemnyh-tablicah-clickhouse\">Teave ClickHouse s\u00fcsteemitabelites<\/h3>\n<p><\/p>\n<p>Vaadakem tabeli struktuuri <noindex><a rel=\"nofollow\" href=\"https:\/\/clickhouse.yandex\/docs\/ru\/operations\/system_tables\/#system_tables-parts\">system.parts<\/a><\/noindex>. See on ammendav teave iga t\u00fcki kohta k\u00f5igis ClickHouse serveri tabelites. See sisaldab muu hulgas j\u00e4rgmisi veerge:<\/p>\n<p><\/p>\n<ul>\n<li>andmebaasi nimi (<code>database<\/code>);<\/li>\n<li>tabeli nimi (<code>tabel<\/code>);<\/li>\n<li>partitsiooni nimi ja ID (<code>partition<\/code> &amp; <code>partition_id<\/code>);<\/li>\n<li>millal t\u00fckk loodi (<code>modification_time<\/code>);<\/li>\n<li>minimaalne ja maksimaalne kuup\u00e4ev t\u00fckkis (partitsioneerimine toimub p\u00e4evade kaupa) (<code>min_date<\/code> &amp; <code>max_date<\/code>);<\/li>\n<\/ul>\n<p><\/p>\n<p>Samuti on olemas tabel <noindex><a rel=\"nofollow\" href=\"https:\/\/clickhouse.yandex\/docs\/ru\/operations\/system_tables\/#system-graphite-retentions\">system.graphite_retentions<\/a><\/noindex>, j\u00e4rgmiste huvitavate v\u00e4ljadega:<\/p>\n<p><\/p>\n<ul>\n<li>andmebaasi nimi (<code>Tables.database<\/code>);<\/li>\n<li>tabeli nimi (<code>Tables.table<\/code>);<\/li>\n<li>metri vanus, millal peaks j\u00e4rgmist aggregatsiooni rakendama (<code>age<\/code>);<\/li>\n<\/ul>\n<p><\/p>\n<p>Nii et:<\/p>\n<p><\/p>\n<ol>\n<li>Meil on t\u00fckki ja aggregatsiooni reeglite tabel.<\/li>\n<li>Kombineerime nende l\u00f5ike ja saame k\u00f5ik tabelid *GraphiteMergeTree.<\/li>\n<li>Otsime k\u00f5ik partitsioonid, kus:\n<ul>\n<li>rohkem kui \u00fcks t\u00fckk<\/li>\n<li>v\u00f5i on aeg rakendada j\u00e4rgmist aggregatsioonireeglit, ning <code>modification_time<\/code> on vanem kui see hetk.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p><\/p>\n<h3 id=\"realizaciya\">Rakendus<\/h3>\n<p>\n<b class=\"spoiler_title\">See p\u00e4ring<\/b><\/p>\n<pre><code class=\"sql\">SELECT\n    concat(p.database, '.', p.table) AS table,\n    p.partition_id AS partition_id,\n    p.partition AS partition,\n    -- K\u00f5ige \"vanem\" reegel, mida saab \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c \u0434\u043b\u044f\n    -- partitsiooni, kuid mitte tulevikus, vt (*)\n    max(g.age) AS age,\n    -- Osade arv partitsioonis\n    countDistinct(p.name) AS parts,\n    -- K\u00f5ige vanemaks metrikaks partitsioonis loetakse 00:00:00 j\u00e4rgmisel p\u00e4eval\n    toDateTime(max(p.max_date + 1)) AS max_time,\n    -- Millal partitsioon tuleks optimeerida\n    max_time + age AS rollup_time,\n    -- Millal k\u00f5ige vanem t\u00fckk partitsioonis viimane kord uuendati\n    min(p.modification_time) AS modified_at\nFROM system.parts AS p\nINNER JOIN\n(\n    -- K\u00f5ik reeglid k\u00f5ikidele tabelitele *GraphiteMergeTree\n    SELECT\n        Tables.database AS database,\n        Tables.table AS table,\n        age\n    FROM system.graphite_retentions\n    ARRAY JOIN Tables\n    GROUP BY\n        database,\n        table,\n        age\n) AS g ON\n    (p.table = g.table)\n    AND (p.database = g.database)\nWHERE\n    -- Ainult aktiivsed t\u00fckid\n    p.active\n    -- (*) Ja ainult need read, kus agregatsiooni reegleid peaks juba rakendama\n    AND ((toDateTime(p.max_date + 1) + g.age) &lt; now())\nGROUP BY\n    table,\n    partition\nHAVING\n    -- Ainult partitsioonid, mis on nooremad optimeerimise hetkest\n    (modified_at  1)\nORDER BY\n    table ASC,\n    partition ASC,\n    age ASC<\/code><\/pre>\n<p><\/p>\n<p>tagastab iga tabeli partitsiooni *GraphiteMergeTree, mille merge peaks vabastama kettaruumi. J\u00e4rgnevalt tuleb ainult l\u00e4bi k\u00e4ia k\u00f5ik koos p\u00e4ringuga <code>OPTIMIZE ... FINAL<\/code>. L\u00f5hnavas teostuses on arvesse v\u00f5etud ka, et aktiivses kirjutamises olevate partitsioonide kallale minna ei ole vaja.<\/p>\n<p><\/p>\n<p>Just seda teeb projekt <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/innogames\/graphite-ch-optimizer\">graphite-ch-optimizer<\/a><\/noindex>. Endised kolleegid Yandex.Market'ist on seda tootmises proovinud, t\u00f6\u00f6tulemusi v\u00f5ib n\u00e4ha allpool. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse + Graphite: kuidas diskiruumi kasutust oluliselt v\u00e4hendada\" src=\"\/wp-content\/uploads\/2019\/12\/858dcbf538135d8d57964a71b2b6ca23.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Kui k\u00e4ivitada programm \u0441\u0435\u0440\u0432\u0435\u0440i ClickHouse'is, siis hakkab see lihtsalt t\u00f6\u00f6le deemonire\u017eiimis. Iga tunni tagant k\u00e4ivitatakse p\u00e4ring, et kontrollida, kas on ilmunud uusi \u00fcle kolme p\u00e4eva vanuseid partitsioone, mida saaks optimeerida.<\/p>\n<p><\/p>\n<p>L\u00e4hitulevikus plaanime pakkuda v\u00e4hemalt deb pakette ja v\u00f5imalusel ka rpm.<\/p>\n<p><\/p>\n<h3 id=\"vmesto-zaklyucheniya\">Kokkuv\u00f5tte asemel<\/h3>\n<p><\/p>\n<p>Viimase \u00fcheksast kuust olen oma ettev\u00f5ttes <noindex><a rel=\"nofollow\" href=\"https:\/\/www.innogames.com\/ru\/\">InnoGames<\/a><\/noindex> olen veetnud palju aega, uurides ClickHouse'i ja graphite-web'i vahepealses olukorras. See oli hea kogemus, mille tulemuseks oli kiire \u00fcleminek whisper'ilt ClickHouse'ile m\u00f5\u00f5dikute salvestamiseks. Loodan, et see artikkel on midagi nagu algus ts\u00fcklile, mis k\u00e4sitleb meie tehtud t\u00e4iustusi erinevates selle stack'i osades ja mida tulevikus plaanitakse.<\/p>\n<p><\/p>\n<p>K\u00fcsimuse v\u00e4ljat\u00f6\u00f6tamiseks kulus mitu liitrit \u00f5lut ja administratiivp\u00e4evi koos <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/v0devil\/\" class=\"user_link\">v0devil<\/a><\/noindex>, kellele tahan v\u00e4ljendada oma t\u00e4nu. Samuti tema kommentaaride eest selle artikli \u00fcle.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/innogames\/graphite-ch-optimizer\">Projekti leht githubis<\/a><\/noindex><\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/479564\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e, habr. \u0415\u0441\u043b\u0438 \u043a\u0442\u043e-\u0442\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0438\u0440\u0443\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 graphite-web \u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 whisper (IO, \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u043e\u0435 \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e), \u0442\u043e \u0448\u0430\u043d\u0441 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u044b\u043b \u0431\u0440\u043e\u0448\u0435\u043d \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 ClickHouse \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u043c\u0435\u043d\u044b, \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u044c\u0441\u044f \u043a \u0435\u0434\u0438\u043d\u0438\u0446\u0435. \u0414\u0430\u043d\u043d\u043e\u0435 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0434\u0435\u043c\u043e\u043d\u0430 \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u044f\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 carbonwriter \u0438\u043b\u0438 go-carbon. ClickHouse \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0435\u0448\u0430\u0435\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-53944","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e, habr. \u0415\u0441\u043b\u0438 \u043a\u0442\u043e-\u0442\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0438\u0440\u0443\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 graphite-web \u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 whisper (IO, \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u043e\u0435 \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e), \u0442\u043e \u0448\u0430\u043d\u0441 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u044b\u043b \u0431\u0440\u043e\u0448\u0435\u043d \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 ClickHouse \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u043c\u0435\u043d\u044b, \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u044c\u0441\u044f \u043a \u0435\u0434\u0438\u043d\u0438\u0446\u0435. \u0414\u0430\u043d\u043d\u043e\u0435 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0434\u0435\u043c\u043e\u043d\u0430 \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u044f\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 carbonwriter \u0438\u043b\u0438 go-carbon. ClickHouse \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0435\u0448\u0430\u0435\u0442\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/clickhouse-graphite-kak-znachitelno-umenshit-potreblyaemoe-mesto-na-diskah\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47ClickHouse + Graphite: \u043a\u0430\u043a \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u043d\u0430 \u0434\u0438\u0441\u043a\u0430\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e, habr. \u0415\u0441\u043b\u0438 \u043a\u0442\u043e-\u0442\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0438\u0440\u0443\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 graphite-web \u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 whisper (IO, \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u043e\u0435 \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e), \u0442\u043e \u0448\u0430\u043d\u0441 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u044b\u043b \u0431\u0440\u043e\u0448\u0435\u043d \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 ClickHouse \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u043c\u0435\u043d\u044b, \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u044c\u0441\u044f \u043a \u0435\u0434\u0438\u043d\u0438\u0446\u0435. \u0414\u0430\u043d\u043d\u043e\u0435 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0434\u0435\u043c\u043e\u043d\u0430 \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u044f\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 carbonwriter \u0438\u043b\u0438 go-carbon. ClickHouse \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0435\u0448\u0430\u0435\u0442\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/clickhouse-graphite-kak-znachitelno-umenshit-potreblyaemoe-mesto-na-diskah\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-12-12T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:01:53+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47ClickHouse + Graphite: kuidas m\u00e4rkimisv\u00e4\u00e4rselt v\u00e4hendada ketta ruumikasutust | ProHoster","description":"Tere, habr. Kui keegi kasutab s\u00fcsteemi graphite-web ja on kokku puutunud whisperi salvestuse j\u00f5udlusprobleemidega (IO, tarbitav kettaruumi maht), siis peaks v\u00f5imalus, et ollakse pilk heidetud ClickHouse'i alternatiivina, olema l\u00e4hedane \u00fchele. See v\u00e4ide eeldab, et m\u00f5\u00f5dikute vastuv\u00f5tmiseks kasutatakse juba kolmanda osapoole rakendust, n\u00e4iteks carbonwriter v\u00f5i go-carbon. ClickHouse lahendab h\u00e4sti","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/clickhouse-graphite-kak-znachitelno-umenshit-potreblyaemoe-mesto-na-diskah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47ClickHouse + Graphite: \u043a\u0430\u043a \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u043d\u0430 \u0434\u0438\u0441\u043a\u0430\u0445 | ProHoster","og:description":"\u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e, habr. \u0415\u0441\u043b\u0438 \u043a\u0442\u043e-\u0442\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0438\u0440\u0443\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 graphite-web \u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 whisper (IO, \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u043e\u0435 \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e), \u0442\u043e \u0448\u0430\u043d\u0441 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u044b\u043b \u0431\u0440\u043e\u0448\u0435\u043d \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 ClickHouse \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u043c\u0435\u043d\u044b, \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u044c\u0441\u044f \u043a \u0435\u0434\u0438\u043d\u0438\u0446\u0435. \u0414\u0430\u043d\u043d\u043e\u0435 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0434\u0435\u043c\u043e\u043d\u0430 \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u044f\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 carbonwriter \u0438\u043b\u0438 go-carbon. ClickHouse \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0435\u0448\u0430\u0435\u0442","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/clickhouse-graphite-kak-znachitelno-umenshit-potreblyaemoe-mesto-na-diskah","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-12-12T21:00:00+00:00","article:modified_time":"2020-02-18T11:01:53+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53944","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 09:26:21","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:15:54","updated":"2026-01-24 09:26:21"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/53944","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=53944"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/53944\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=53944"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=53944"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=53944"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}