{"id":54918,"date":"2020-01-07T00:00:00","date_gmt":"2020-01-06T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/ispolzovanie-clickhouse-v-kachestve-zameny-elk-big-query-i-timescaledb"},"modified":"2020-02-18T14:02:58","modified_gmt":"2020-02-18T11:02:58","slug":"ispolzovanie-clickhouse-v-kachestve-zameny-elk-big-query-i-timescaledb","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/ispolzovanie-clickhouse-v-kachestve-zameny-elk-big-query-i-timescaledb","title":{"rendered":"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/clickhouse.yandex\/\">Clickhouse<\/a><\/noindex> er et kolonnebaseret databasesystem til online behandling af analytiske foresp\u00f8rgsler (OLAP) med \u00e5ben kildekode, skabt af Yandex. Det bruges af Yandex, CloudFlare, VK.com, Badoo og andre tjenester over hele verden til at gemme virkelig store datam\u00e6ngder (indf\u00f8ring af tusindvis af r\u00e6kker per sekund eller petabytes af data gemt p\u00e5 disk).<\/p>\n<p>I en almindelig, 'r\u00e6kkebaseret' database, som MySQL, Postgres, MS SQL Server, gemmes data i f\u00f8lgende r\u00e6kkef\u00f8lge: <\/p>\n<p><img decoding=\"async\" alt=\"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB\" src=\"\/wp-content\/uploads\/2020\/01\/398f260de0152baf3cc11d884fa0d52d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHer opbevares v\u00e6rdier, der tilh\u00f8rer en r\u00e6kke, fysisk t\u00e6t p\u00e5 hinanden. I kolonnebaserede databaser opbevares v\u00e6rdier fra forskellige kolonner separat, mens data fra \u00e9n kolonne opbevares sammen:<\/p>\n<p><img decoding=\"async\" alt=\"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB\" src=\"\/wp-content\/uploads\/2020\/01\/938a2ee3d588ac866ec92bb3ea09c253.png\" style=\"display:block;margin: 0 auto;\" \/><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Eksempler p\u00e5 kolonnebaserede databaser inkluderer Vertica, Paraccel (Actian Matrix, Amazon Redshift), Sybase IQ, Exasol, Infobright, InfiniDB, MonetDB (VectorWise, Actian Vector), LucidDB, SAP HANA, Google Dremel, Google PowerDrill, Druid, kdb+.<\/p>\n<p>Virksomhed \u2013 mailforwarder <noindex><a rel=\"nofollow\" href=\"https:\/\/qwintry.com\/\">Qwintry<\/a><\/noindex> begyndte at bruge Clickhouse i 2018 til at generere rapporter og var meget imponeret over dens enkelhed, skalerbarhed, SQL-support og hastighed. Hastigheden p\u00e5 denne database gr\u00e6nsede til magi.<\/p>\n<h3>Simplicity<\/h3>\n<p>\nClickhouse installeres i Ubuntu med \u00e9n enkelt kommando. Hvis du kender SQL, kan du straks begynde at bruge Clickhouse til dine behov. Dette betyder dog ikke, at du kan udf\u00f8re 'show create table' i MySQL og kopiere SQL direkte ind i Clickhouse. <\/p>\n<p>I forhold til MySQL er der vigtige forskelle i datatyper i definitionerne af tabelskemaer i denne database, s\u00e5 for en behagelig oplevelse skal du alligevel bruge noget tid p\u00e5 at \u00e6ndre tabelskemaerne og l\u00e6re tabelmotorerne at kende.<\/p>\n<p>Clickhouse fungerer godt uden noget ekstra software, men hvis du \u00f8nsker at bruge replikering, skal du installere ZooKeeper. Analyse af foresp\u00f8rgselsydelsen viser fremragende resultater \u2014 systemtabeller indeholder al information, og alle data kan opn\u00e5s ved hj\u00e6lp af den gamle og kedelige SQL.<\/p>\n<h3>Ydeevne<\/h3>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/clickhouse.yandex\/benchmark.html#%5B%2522100000000%2522,%5B%2522ClickHouse%2522,%2522Vertica%2522,%2522MySQL%2522%5D,%5B%25220%2522,%25221%2522%5D%5D\">Benchmark<\/a><\/noindex> sammenligninger af Clickhouse med Vertica og MySQL p\u00e5 serverkonfigurationen: to sokler Intel\u00ae Xeon\u00ae CPU E5-2650 v2 @ 2.60GHz; 128 GiB RAM; md RAID-5 p\u00e5 8 6TB SATA HDD, ext4.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.altinity.com\/blog\/2017\/6\/20\/clickhouse-vs-redshift\">Benchmark<\/a><\/noindex> sammenligninger af Clickhouse med Amazon RedShift cloud datalager.<\/li>\n<li>Uddrag fra bloggen <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.cloudflare.com\/how-cloudflare-analyzes-1m-dns-queries-per-second\/\">Cloudflare om Clickhouses ydeevne<\/a><\/noindex>:<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB\" src=\"\/wp-content\/uploads\/2020\/01\/b6ef9fbad8e8c864a227bcffd97ec0fe.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nClickHouse-databasen har et meget simpelt design - alle noder i klyngen har den samme funktionalitet og bruger kun ZooKeeper til koordinering. Vi opbyggede en lille klynge best\u00e5ende af flere noder og gennemf\u00f8rte test, hvor vi opdagede, at systemet har en ret imponerende ydeevne, der svarer til de angivne fordele i benchmarks for analytiske DBMS. Vi besluttede at unders\u00f8ge konceptet bag ClickHouse n\u00e6rmere. Den f\u00f8rste hindring for forskningen var frav\u00e6ret af v\u00e6rkt\u00f8jer og det lille ClickHouse-f\u00e6llesskab, s\u00e5 vi dykkede ned i designet af denne DBMS for at forst\u00e5, hvordan den fungerer.<\/p>\n<p>ClickHouse underst\u00f8tter ikke direkte modtagelse af data fra Kafka, da det kun er en database, s\u00e5 vi skrev vores egen adapter-service i Go. Den l\u00e6ste de kodede Cap\u2019n Proto-beskeder fra Kafka, omformede dem til TSV og indsatte dem i ClickHouse i pakker via HTTP-gr\u00e6nsefladen. Senere omskrev vi denne service for at bruge Go-biblioteket sammen med vores eget ClickHouse-gr\u00e6nseflade for at forbedre ydeevnen. Ved vurdering af ydeevnen ved modtagelse af pakker fandt vi en vigtig ting - ClickHouse's ydeevne er meget afh\u00e6ngig af pakkest\u00f8rrelsen, det vil sige antallet af indsatte r\u00e6kker p\u00e5 \u00e9n gang. For at forst\u00e5, hvorfor dette sker, unders\u00f8gte vi, hvordan ClickHouse gemmer data.<\/p>\n<p>Den prim\u00e6re motor, eller rettere sagt, motorfamilien for tabeller, der anvendes af ClickHouse til datalagring, er MergeTree. Denne motor er konceptuelt lignende LSM-algoritmen anvendt i Google BigTable eller Apache Cassandra, men undg\u00e5r at opbygge et midlertidigt hukommelsestabel og skriver data direkte til disken. Dette giver den fremragende skrivekapacitet, da hver indsat pakke kun sorteres efter \u201cprim\u00e6rn\u00f8glen\u201d primary key, komprimeres og skrives til disken for at danne et segment. <\/p>\n<p>Frav\u00e6ret af en hukommelsestabel eller noget koncept om \"frezhed\" af data betyder ogs\u00e5, at de kun kan tilf\u00f8jes; \u00e6ndring eller sletning underst\u00f8ttes ikke af systemet. I dag er den eneste m\u00e5de at slette data p\u00e5 at g\u00f8re det m\u00e5ned for m\u00e5ned, da segmenter aldrig krydser gr\u00e6nsen for m\u00e5neden. ClickHouse-teamet arbejder aktivt p\u00e5 at g\u00f8re denne funktion konfigurerbar. P\u00e5 den anden side g\u00f8r dette optagelse og sammenl\u00e6gning af segmenter konfliktfri, s\u00e5 b\u00e5ndbredden til optagelse skalerer line\u00e6rt med antallet af parallelle indstillinger, indtil I\/O eller kernerne bliver m\u00e6ttede. <br \/>\nMen denne omst\u00e6ndighed betyder ogs\u00e5, at systemet ikke er velegnet til sm\u00e5 pakker, s\u00e5 der bruges Kafka-tjenester og insertionsv\u00e6rkt\u00f8jer til at bufferdata. Desuden forts\u00e6tter ClickHouse i baggrunden med konstant at udf\u00f8re sammenl\u00e6gning af segmenter, s\u00e5 mange sm\u00e5 informationsstykker vil blive samlet og skrevet flere gange, hvilket dermed \u00f8ger skriveintensiteten. Herudover vil for mange usammenh\u00e6ngende dele for\u00e5rsage aggressiv throttling af indstillinger, indtil sammenl\u00e6gningen er f\u00e6rdig. Vi har fundet ud af, at den bedste kompromis mellem realtidsdatamodtagelse og modtageydelse er at acceptere et begr\u00e6nset antal indstillinger pr. sekund til tabellen.<\/p>\n<p>N\u00f8glen til l\u00e6seydelse af tabeller er indeksering og placering af data p\u00e5 disken. Uanset hvor hurtigt behandlingen er, n\u00e5r motoren skal scanne terabyte af data fra disken og kun bruge en del af dem, vil det tage tid. ClickHouse er et kolonnebaseret lager, s\u00e5 hver sektion indeholder en fil for hver kolonne med sorterede v\u00e6rdier for hver r\u00e6kke. P\u00e5 denne m\u00e5de kan hele kolonner, der ikke er til stede i foresp\u00f8rgslen, f\u00f8rst springes over, og s\u00e5 kan flere celler behandles parallelt med vektorisering. For at undg\u00e5 fuld scanning har hver sektion en lille indeksfil. <\/p>\n<p>Da alle kolonner er sorteret efter \"prim\u00e6rn\u00f8gle\", indeholder indeksfilen kun m\u00e6rker (fangne r\u00e6kker) for hver N-te r\u00e6kke, s\u00e5 de kan opbevares i hukommelsen, selv for meget store tabeller. For eksempel kan standardindstillingerne fasts\u00e6ttes til \"at m\u00e6rke hver 8192. r\u00e6kke\", s\u00e5 \"sparsom\" indeksering af en tabel med 1 billion r\u00e6kker, som let kan opbevares i hukommelsen, kun vil tage 122.070 tegn. <\/p>\n<h3>Systemudvikling<\/h3>\n<p>\nUdviklingen og forbedringen af Clickhouse kan spores p\u00e5 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/yandex\/ClickHouse\/pulse\">Github repo<\/a><\/noindex> og bekr\u00e6fte, at \"v\u00e6kst\"-processen sker i imponerende tempo. <\/p>\n<p><img decoding=\"async\" alt=\"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB\" src=\"\/wp-content\/uploads\/2020\/01\/19211da28e42178d26dff7623689df71.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Popularitet<\/h3>\n<p>\nDet ser ud til, at populariteten af Clickhouse vokser eksponentielt, is\u00e6r i det russisksprogede samfund. Sidste \u00e5rs High Load 2018-konference (Moskva, 8-9 november 2018) viste, at s\u00e5danne k\u00e6mper som vk.com og Badoo bruger Clickhouse, hvilket muligg\u00f8r inds\u00e6ttelse af data (f.eks. logs) fra titusinder af servere samtidig. I en 40-minutters video <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=pbbcMcrQoXw\">Yuri Nasrettinov fra Vkontakte-teamet forklarer, hvordan det g\u00f8res<\/a><\/noindex>. Snart vil vi uploade transskriptionen til Habr for at lette arbejdet med materialet.<\/p>\n<h3>Anvendelsesomr\u00e5der<\/h3>\n<p>\nEfter at have brugt lidt tid p\u00e5 forskning, tror jeg, at der er omr\u00e5der, hvor ClickHouse kan v\u00e6re nyttigt eller helt erstatte andre, mere traditionelle og popul\u00e6re l\u00f8sninger som MySQL, PostgreSQL, ELK, Google Big Query, Amazon RedShift, TimescaleDB, Hadoop, MapReduce, Pinot og Druid. Her er detaljer om brugen af ClickHouse til at modernisere eller helt erstatte de n\u00e6vnte DBMS. <\/p>\n<h3>Udvidelse af mulighederne i MySQL og PostgreSQL<\/h3>\n<p>\nFor nylig udskiftede vi delvist MySQL med ClickHouse til platformen for informationsnyhedsbreve <noindex><a rel=\"nofollow\" href=\"https:\/\/www.mautic.org\/\">Mautic newsletter<\/a><\/noindex>Problemet var, at MySQL p\u00e5 grund af en uhensigtsm\u00e6ssig design registrerede hver sendte e-mail og hvert link i denne e-mail med en base64-hash, hvilket skabte en enorm MySQL-tabel (email_stats). Efter at have sendt 10 millioner e-mails til abonnenterne fyldte denne tabel 150 GB diskplads, og MySQL begyndte at 'sl\u00e6be' ved simple foresp\u00f8rgsler. For at l\u00f8se problemet med diskplads brugte vi med succes InnoDB-komprimering af tabellen, hvilket reducerede dens st\u00f8rrelse med 4. Men det giver ikke mening at gemme over 20-30 millioner e-mails i MySQL blot for at l\u00e6se historikken, da enhver simpel foresp\u00f8rgsel, der af en eller anden grund skal udf\u00f8re en fuld scanning, f\u00f8rer til swapping og stor I\/O-belastning, hvilket ofte f\u00f8rte til advarsler fra Zabbix.<\/p>\n<p><img decoding=\"async\" alt=\"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB\" src=\"\/wp-content\/uploads\/2020\/01\/11b3ee4b1a8b7c9457bd3871bd12049f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nClickhouse bruger to komprimeringsalgoritmer, der reducerer datam\u00e6ngden med cirka <noindex><a rel=\"nofollow\" href=\"https:\/\/www.altinity.com\/blog\/2017\/11\/21\/compression-in-clickhouse\">3-4 gange<\/a><\/noindex>, men i dette konkrete tilf\u00e6lde var dataene s\u00e6rligt lette at komprimere. <\/p>\n<p><img decoding=\"async\" alt=\"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB\" src=\"\/wp-content\/uploads\/2020\/01\/d192502073d57967620aa07da0bbfa0c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Erstatning af ELK<\/h3>\n<p>\nBaseret p\u00e5 egne erfaringer kr\u00e6ver ELK-stakken (ElasticSearch, Logstash og Kibana, i dette specifikke tilf\u00e6lde ElasticSearch) langt flere ressourcer til drift, end hvad der er n\u00f8dvendigt for opbevaring af logs. ElasticSearch er en fremragende motor, hvis du har brug for god fuldtekst-s\u00f8gning i logs (og jeg mener ikke, at du virkelig har brug for det), men jeg undrer mig over, hvorfor det de facto er blevet standardmotoren til logf\u00f8ring. Dens modtagelsesydelse i kombination med Logstash skabte problemer selv ved ret sm\u00e5 belastninger og kr\u00e6vede mere og mere RAM og diskplads. Som database er Clickhouse bedre end ElasticSearch af f\u00f8lgende grunde:<\/p>\n<ul>\n<li>Underst\u00f8ttelse af SQL-dialekt;<\/li>\n<li>Bedre komprimeringsgrad af gemte data;<\/li>\n<li>Underst\u00f8ttelse af regul\u00e6re udtryks s\u00f8gninger i stedet for fuldtekst-s\u00f8gning;<\/li>\n<li>Forbedret foresp\u00f8rgselsplanl\u00e6gning og h\u00f8jere samlet ydeevne.<\/li>\n<\/ul>\n<p>\nI \u00f8jeblikket er den st\u00f8rste udfordring ved at sammenligne ClickHouse med ELK manglen p\u00e5 l\u00f8sninger til logudladning samt manglen p\u00e5 dokumentation og vejledninger om emnet. Samtidig kan enhver bruger konfigurere ELK ved hj\u00e6lp af Digital Ocean-guiden, hvilket er meget vigtigt for hurtig implementering af s\u00e5danne teknologier. Der er en DB-motor her, men der er stadig ikke noget Filebeat til ClickHouse. Ja, der er <noindex><a rel=\"nofollow\" href=\"https:\/\/www.fluentd.org\/\">fluentd<\/a><\/noindex> og og system til logstyring <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/loghouse\">loghouse<\/a><\/noindex>, findes der et v\u00e6rkt\u00f8j <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Altinity\/clicktail\">clicktail<\/a><\/noindex> til at indtaste logfilsdata i ClickHouse, men alt dette kr\u00e6ver mere tid. Alligevel er ClickHouse stadig f\u00f8rende p\u00e5 grund af sin enkelhed, s\u00e5 selv begyndere kan let installere det og begynde at bruge det fuldt ud inden for 10 minutter. <\/p>\n<p>Idet jeg foretr\u00e6kker minimalistiske l\u00f8sninger, fors\u00f8gte jeg at bruge FluentBit, et v\u00e6rkt\u00f8j til at sende logs med meget lav hukommelsesforbrug, sammen med ClickHouse, og jeg fors\u00f8gte at undg\u00e5 brugen af Kafka. Men det er n\u00f8dvendigt at fjerne sm\u00e5 inkompatibiliteter som <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/fluent\/fluent-bit\/issues\/848\">datoformatproblemer<\/a><\/noindex>, f\u00f8r det kan g\u00f8res uden et proxy-lag, der konverterer data fra FluentBit til ClickHouse.<\/p>\n<p>Som et alternativ til Kibana kan ClickHouse bruges som backend <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Vertamedia\/clickhouse-grafana\">Grafana<\/a><\/noindex>. S\u00e5 vidt jeg forst\u00e5r, kan der opst\u00e5 problemer med ydeevnen ved rendering af enorme m\u00e6ngder datapunkter, is\u00e6r med \u00e6ldre versioner af Grafana. Hos Qwintry har vi ikke pr\u00f8vet dette endnu, men klager over dette opst\u00e5r fra tid til anden p\u00e5 ClickHouse's supportkanal i Telegram. <\/p>\n<h3>Erstatning for Google Big Query og Amazon RedShift (l\u00f8sning for store virksomheder)<\/h3>\n<p>\nDen ideelle anvendelse af BigQuery er at uploade 1 TB JSON-data og udf\u00f8re analytiske foresp\u00f8rgsler p\u00e5 dem. Big Query er et fremragende produkt, hvis skalerbarhed er sv\u00e6r at overvurdere. Det er en langt mere kompleks software end ClickHouse, der k\u00f8rer p\u00e5 interne klynger, men set fra kundens perspektiv har det meget til f\u00e6lles med ClickHouse. BigQuery kan hurtigt 'blive dyrt', s\u00e5 snart du begynder at betale for hver SELECT, s\u00e5 det er en rigtig SaaS-l\u00f8sning med alle dens fordele og ulemper. <\/p>\n<p>ClickHouse er det bedste valg, n\u00e5r du udf\u00f8rer mange ressourcekr\u00e6vende foresp\u00f8rgsler. Jo flere SELECT-foresp\u00f8rgsler du udf\u00f8rer hver dag, desto mere meningsfuldt er det at erstatte Big Query med ClickHouse, fordi en s\u00e5dan udskiftning kan spare dig tusindvis af dollars, hvis vi taler om mange terabytes behandlet data. Dette g\u00e6lder ikke for lagrede data, hvor behandlingen i Big Query er relativt billig.<\/p>\n<p>I artiklen fra medstifteren af Altinity, Alexander Zaitsev, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.altinity.com\/blog\/2017\/10\/23\/migration-to-clickhouse\">\u00abOvergangen til ClickHouse\u00bb<\/a><\/noindex> beskrives fordelene ved en s\u00e5dan migrationsdatabase.<\/p>\n<h3>Erstatning for TimescaleDB<\/h3>\n<p>\nTimescaleDB er et udvidelse til PostgreSQL, som optimerer arbejdet med tidsserier i en almindelig database (<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.timescale.com\/v1.0\/introduction\">https:\/\/docs.timescale.com\/v1.0\/introduction<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/zabbix\/blog\/458530\/\">https:\/\/habr.com\/ru\/company\/zabbix\/blog\/458530\/<\/a><\/noindex>). <\/p>\n<p>Selvom ClickHouse ikke er en seri\u00f8s konkurrent inden for tidsserier, s\u00e5 er dets kolonnestruktur og vektorbearbejdning i de fleste tilf\u00e6lde hurtigere end TimescaleDB, n\u00e5r det kommer til analytiske foresp\u00f8rgsler. Samtidig er ClickHouse's ydeevne ved modtagelse af batchdata cirka tre gange h\u00f8jere, og det bruger 20 gange mindre diskplads, hvilket er virkelig vigtigt for behandling af store m\u00e6ngder historiske data:<noindex><a rel=\"nofollow\" href=\"https:\/\/www.altinity.com\/blog\/ClickHouse-for-time-series\">https:\/\/www.altinity.com\/blog\/ClickHouse-for-time-series<\/a><\/noindex>.<\/p>\n<p>I mods\u00e6tning til ClickHouse er den eneste m\u00e5de at spare lidt diskplads i TimescaleDB p\u00e5 at bruge ZFS eller lignende filsystemer.<\/p>\n<p>De kommende opdateringer af ClickHouse vil sandsynligvis indf\u00f8re delta-komprimering, som vil g\u00f8re det endnu mere egnet til behandling og opbevaring af tidsseriedata. TimescaleDB kan blive det bedste valg i forhold til \"ren\" ClickHouse i f\u00f8lgende tilf\u00e6lde:<\/p>\n<ul>\n<li>sm\u00e5 installationer med meget begr\u00e6nset RAM (&lt;3 GB);<\/li>\n<li>et stort antal sm\u00e5 INSERTs, som du ikke \u00f8nsker at buffer i store fragmenter;<\/li>\n<li>bedre konsistens, ensartethed og ACID-krav;<\/li>\n<li>PostGIS-support;<\/li>\n<li>integration med eksisterende PostgreSQL-tabeller, da TimescaleDB i bund og grund er PostgreSQL.<\/li>\n<\/ul>\n<p><\/p>\n<h3>Konkurrence med Hadoop og MapReduce<\/h3>\n<p>\nHadoop og andre MapReduce-produkter kan udf\u00f8re mange komplekse beregninger, men de arbejder typisk med enorme forsinkelser. ClickHouse l\u00f8ser dette problem ved at behandle terabyte af data og n\u00e6sten \u00f8jeblikkeligt levere resultater. Derfor er ClickHouse meget mere effektiv til hurtig, interaktiv analytisk forskning, hvilket burde interessere dataanalytikere.<\/p>\n<h3>Konkurrence med Pinot og Druid<\/h3>\n<p>\nDe n\u00e6rmeste konkurrenter til ClickHouse er kolonne-baserede, line\u00e6rt skalerbare open-source produkter Pinot og Druid. En grundig sammenligning af disse systemer er offentliggjort i artiklen <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@leventov\/comparison-of-the-open-source-olap-systems-for-big-data-ClickHouse-druid-and-pinot-8e042a5ed1c7\">Roman Leventov<\/a><\/noindex> den 1. februar 2018. <\/p>\n<p><img decoding=\"async\" alt=\"Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB\" src=\"\/wp-content\/uploads\/2020\/01\/fe58814aa97b287b70c2f724b72b448a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDenne artikel kr\u00e6ver opdatering \u2013 den angiver, at ClickHouse ikke underst\u00f8tter UPDATE og DELETE-operationer, hvilket ikke er helt korrekt i forhold til de nyeste versioner.<\/p>\n<p>Vi har ikke tilstr\u00e6kkelig erfaring med disse DBMS'er, men jeg er slet ikke tilfreds med kompleksiteten af den infrastruktur, der kr\u00e6ves for at k\u00f8re Druid og Pinot \u2013 der er en hel del \"bev\u00e6gelige dele\", der er omgivet af Java fra alle sider.<\/p>\n<p>Druid og Pinot er Apache-inkubatorprojekter, hvis udvikling detaljeres af Apache p\u00e5 deres GitHub-projekt-sider. Pinot kom ind i inkubatoren i oktober 2018, mens Druid blev f\u00f8dt 8 m\u00e5neder tidligere \u2014 i februar.<\/p>\n<p>Manglen p\u00e5 information om, hvordan AFS fungerer, rejser nogle, muligvis dumme, sp\u00f8rgsm\u00e5l for mig. Jeg undrer mig over, om skaberne af Pinot har bem\u00e6rket, at Apache Foundation er mere tilb\u00f8jelige til Druid, og om denne indstilling til konkurrenten har skabt jalousi? Vil udviklingen af Druid stagnere, mens udviklingen af Pinot vil accelerere, hvis sponsorerne, der st\u00f8tter den f\u00f8rste, pludselig bliver interesserede i den anden?<\/p>\n<h3>Ulemper ved ClickHouse<\/h3>\n<p>\nUmodenhed: det er \u00e5benlyst, at dette stadig er en sp\u00e6ndende teknologi, men hvad ang\u00e5r dette, ses der ikke noget lignende i andre kolonneorienterede databaser. <\/p>\n<p>Sm\u00e5 indl\u00e6sninger fungerer d\u00e5rligt ved h\u00f8j hastighed: indl\u00e6sninger skal opdeles i store portioner, fordi ydeevnen for sm\u00e5 indl\u00e6sninger falder i forhold til antallet af kolonner i hver r\u00e6kke. S\u00e5dan lagres data i ClickHouse p\u00e5 disken \u2014 hver kolonne svarer til 1 eller flere filer, s\u00e5 for at inds\u00e6tte 1 r\u00e6kke, der indeholder 100 kolonner, er det n\u00f8dvendigt at \u00e5bne og skrive til mindst 100 filer. Derfor kr\u00e6ves der en mellemmand til buffering af indl\u00e6sninger (medmindre klienten selv s\u00f8rger for buffering) \u2014 det er normalt Kafka eller et eller andet k\u00f8h\u00e5ndteringssystem. Det er ogs\u00e5 muligt at bruge Buffer-table-motoren til senere at kopiere store datastykker ind i MergeTree-tabeller.<\/p>\n<p>Tabel-forbindelser er begr\u00e6nset af serverens RAM, men de er i det mindste til stede! For eksempel har Druid og Pinot slet ingen s\u00e5danne forbindelser, da det er sv\u00e6rt at implementere direkte i distribuerede systemer, der ikke underst\u00f8tter flytning af store datastykker mellem noder. <\/p>\n<h3>Konklusioner<\/h3>\n<p>\nI de kommende \u00e5r planl\u00e6gger vi at anvende ClickHouse bredt i Qwintry, da denne DBMS tilbyder en fremragende balance mellem ydeevne, lave omkostninger, skalerbarhed og enkelhed. Jeg er n\u00e6sten sikker p\u00e5, at den hurtigt vil begynde at sprede sig, s\u00e5 snart ClickHouse-f\u00e6llesskabet finder flere anvendelsesmuligheder for den i sm\u00e5 og mellemstore installationer.<\/p>\n<h3>Lidt reklame \ud83d\ude42<\/h3>\n<p>\nTak fordi du bliver hos os. Kan du lide vores artikler? \u00d8nsker du at se flere interessante materialer? St\u00f8t os ved at bestille eller anbefale os til dine bekendte, <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">cloud VPS til udviklere fra 4,99 $<\/a><\/noindex>, <b>en unik analog til entry-level servere, som vi har designet til dig:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">Alt om VPS (KVM) E5-2697 v3 (6 kerner) 10 GB DDR4 480 GB SSD 1 Gbps fra 19 $ eller hvordan man deler serveren korrekt?<\/a><\/noindex> (tilg\u00e6ngelige muligheder med RAID1 og RAID10, op til 24 kerner og op til 40 GB DDR4).<\/p>\n<p><b>Dell R730xd til halv pris i datacenteret Equinix Tier IV i Amsterdam?<\/b> Kun hos os <b><noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/serversnl\">2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB fra 199 $<\/a><\/noindex> i Holland! <b>Dell R420 - 2x E5-2430 2.2GHz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - fra 99 $!<\/b><\/b> L\u00e6s om hvordan <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">man bygger enterprise-infrastruktur ved hj\u00e6lp af Dell R730xd E5-2650 v4 servere til 9000 euro for en br\u00f8kdel af prisen?<\/a><\/noindex><br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/483112\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Clickhouse \u2014 \u044d\u0442\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043e\u043d\u043b\u0430\u0439\u043d \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 (OLAP) \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u0430\u044f \u042f\u043d\u0434\u0435\u043a\u0441\u043e\u043c. \u0415\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u042f\u043d\u0434\u0435\u043a\u0441, CloudFlare, VK.com, Badoo \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b \u043f\u043e \u0432\u0441\u0435\u043c\u0443 \u043c\u0438\u0440\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043c\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u0442\u044b\u0441\u044f\u0447 \u0441\u0442\u0440\u043e\u043a \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0438\u043b\u0438 \u043f\u0435\u0442\u0430\u0431\u0430\u0439\u0442\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u0445\u0441\u044f \u043d\u0430 \u0434\u0438\u0441\u043a\u0435). \u0412 \u043e\u0431\u044b\u0447\u043d\u043e\u0439, \u00ab\u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0439\u00bb \u0421\u0423\u0411\u0414, \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 [&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-54918","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Clickhouse \u2014 \u044d\u0442\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043e\u043d\u043b\u0430\u0439\u043d \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 (OLAP) \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c.\" \/>\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\/da\/blog\/administrirovanie\/ispolzovanie-clickhouse-v-kachestve-zameny-elk-big-query-i-timescaledb\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\udd47\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Clickhouse \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u043c\u0435\u043d\u044b ELK, Big Query \u0438 TimescaleDB | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Clickhouse \u2014 \u044d\u0442\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043e\u043d\u043b\u0430\u0439\u043d \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 (OLAP) \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/ispolzovanie-clickhouse-v-kachestve-zameny-elk-big-query-i-timescaledb\" \/>\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=\"2020-01-06T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:02:58+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\udd47Brug af Clickhouse som erstatning for ELK, Big Query og TimescaleDB | ProHoster","description":"Clickhouse er et kolonnebaseret databaseh\u00e5ndteringssystem til online behandling af analytiske foresp\u00f8rgsler (OLAP) med \u00e5bne kildekode.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/ispolzovanie-clickhouse-v-kachestve-zameny-elk-big-query-i-timescaledb","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\udd47\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Clickhouse \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u043c\u0435\u043d\u044b ELK, Big Query \u0438 TimescaleDB | ProHoster","og:description":"Clickhouse \u2014 \u044d\u0442\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043e\u043d\u043b\u0430\u0439\u043d \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 (OLAP) \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c.","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/ispolzovanie-clickhouse-v-kachestve-zameny-elk-big-query-i-timescaledb","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":"2020-01-06T21:00:00+00:00","article:modified_time":"2020-02-18T11:02:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"54918","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 13:09:54","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:55:36","updated":"2026-01-24 13:09:54","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/54918","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=54918"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/54918\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=54918"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=54918"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=54918"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}