Teknik

← Hem
Analys & data

ClickHouse — realtidsanalysmotorn i plattformens stack

4buildsites stack innehåller ClickHouse — en kolumnorienterad databas byggd särskilt för analys i stor volym. På den bygger vi plattformens modul för trafik- och försäljningsstatistik (under utveckling): data förblir dina, rapporterna är tillgängliga efter insamling och din webbplats berörs inte av dem — så är arkitekturen konstruerad.

Vad ClickHouse är och varför vi använder det

ClickHouse är en kolumnorienterad databas av typen OLAP (online-analys), skapad hos Yandex för Yandex.Metrica — ett av världens största webbanalyssystem — och publicerad som öppen källkod 2016 under licensen Apache 2.0. Den är byggd för en enda sak, som den gör exceptionellt bra: aggregeringar över enorma datamängder. I 4buildsites arkitektur är ClickHouse motorn som valts för statistiklagret: varje besök, klick och order blir en händelse som kan analyseras.

Hemligheten är kolumnlagringen: i stället för att läsa varje hel ”rad” läser ClickHouse bara de kolumner som rapporten behöver och bearbetar dem vektoriserat, i stora block. Därför får en fråga som ”hur många besökare hade jag igår, per sida, från varje källa” svar även över miljontals händelser — något som en klassisk radorienterad databas har mycket svårare att klara.

Det är ingen nischteknik: Cloudflare använder den för analys av HTTP-trafik i global skala, och Uber, eBay och Spotify använder den för analys och loggbearbetning i enorma volymer. På 4buildsite är samma motor en del av plattformens stack — utan att du behöver anställa ett team av datatekniker.

Realtidsstatistik skild från webbplatsen — så är modulen konstruerad

Plattformens statistikmodul är under utveckling, och dess arkitektur är enkel: trafikhändelser samlas in asynkront och skrivs till ClickHouse, helt åtskilt från de servrar som levererar sidorna. Dina besökare väntar inte på analysen. Insamlingen är minimal och first-party, utan tungt spårningsskript från tredje part.

Rapporterna i panel.4buildsite.net kommer att beräknas direkt i ClickHouse: trafik per sida, besökskällor, konverteringar, försäljning per produkt. Frekventa aggregeringar förberäknas via materialized views vid varje skrivning, så dashboarden behöver inte köra en tung beräkning varje gång du tittar på den.

  • Live-trafik: besök, sidor, källor och enheter — kan frågas efter insamling
  • Försäljning per produkt, ordrar och konverteringar för din butik, aggregerade över stora mängder händelser
  • Historik över månader och år till låg kostnad — kolumnkomprimeringen minskar lagringen flera gånger jämfört med rådata
  • Asynkron insamling, rapportering på ett annat system

PostgreSQL + ClickHouse: därför använder vi båda

Plattformens stack kombinerar två databaser eftersom de gör i grunden olika saker. PostgreSQL är transaktionsregistret (OLTP): ordrar, betalningar, lager, användarkonton — operationer som måste vara perfekt korrekta en i taget, med transaktionella garantier. ClickHouse är analyssalen (OLAP): miljontals händelser som läses på en gång för att besvara dina frågor om trafik och försäljning.

Om tunga rapporter körde på samma databas som bearbetar ordrarna skulle varje rapport konkurrera med de kunder som betalar just då. OLTP/OLAP-separationen eliminerar den konflikten: kundens order väntar inte på din rapport och din rapport väntar inte på andras ordrar. Varje motor gör exakt det den byggdes för.

  • PostgreSQL: ordrar, Stripe-betalningar, lager, kunder — transaktionell korrekthet
  • ClickHouse: trafikhändelser, rapporter, statistik — aggregering i stor volym
  • Designen innebär att relevanta transaktionsdata når ClickHouse som händelser, så försäljningsrapporterna rör inte den databas som serverar butiken

Egen, integritetsvänlig analys — i stället för Google Analytics

Principen för statistikmodulen: din webbplats data stannar på plattformens infrastruktur. De skickas inte till Google eller andra annonsnätverk, säljs inte och kombineras inte med externa användarprofiler. Det är first-party-analys i ordets egentliga mening: data om dina besökare är dina.

Eftersom upplägget inte använder spårningscookies från tredje part blir GDPR-efterlevnaden mycket enklare. Sammanhanget spelar roll: 2022 förklarade dataskyddsmyndigheterna i Österrike, Frankrike och Italien att användningen av Google Analytics inte var förenlig med GDPR på grund av dataöverföringar till USA. Med en egen analys, hostad i Europa, försvinner den riskkategorin från början.

Det finns också en direkt praktisk fördel: rapporter som beräknas i ClickHouse är inte samplade. Fullständiga siffror.

Rapporter för butik och marknadsplats — vad modulen kommer att leverera

För en webbutik ger ClickHouse svar på de frågor som räknas: vilka produkter som säljs, från vilka källor de köpande kunderna kommer, var kundvagnar överges. För en marknadsplats med flera säljare kommer samma aggregeringar att köras över alla ordrar: volym per säljare, provisioner, toppprodukter per kategori — utan manuella exporter och utan kalkylblad.

Och i stor skala förblir saker billiga. Kolumnkomprimeringen minskar datan flera gånger jämfört med råformatet, så du behåller årsvis historik till låg lagringskostnad. Och när trafiken växer från tusentals till miljontals händelser förblir aggregeringarna hanterbara — motorn konstruerades från början för miljarder rader, inte anpassades i efterhand.

Fördelar och begränsningar

Fördelar

  • Aggregeringar över stora mängder händelser — kolumnlagring och vektoriserad bearbetning.
  • Analysen körs på ett system skilt från det som serverar sidorna.
  • Trafikdata förblir dina, på plattformens infrastruktur — ingen överföring till Google eller annonsnätverk.
  • Inga spårningscookies från tredje part — enklare GDPR-efterlevnad.
  • Kraftfull kolumnkomprimering — årsvis historik till låg lagringskostnad.
  • Öppen källkod (Apache 2.0), utan licenser per volym — kostnaden exploderar inte när trafiken växer.

Begränsningar

  • Inte en transaktionsdatabas — att ändra eller ta bort enskilda rader är en tung operation; därför ligger ordrar och betalningar i PostgreSQL.
  • Optimerad för skrivning i stora batchar; många små och täta inserts kräver batching — plattformen hanterar det, men det är en verklig begränsning i motorn.
  • Komplexa JOIN:ar är mindre flexibla än i PostgreSQL — händelseschemat måste utformas för analys från början.
  • Uppslag av en enda rad (point lookup) är långsammare än i en indexerad OLTP-databas — den ersätter inte butikens huvuddatabas.

Kort slutsats

ClickHouse är rätt val för analys i stor volym: trafik- och försäljningsstatistik i realtid, med dina egna data. För ordrar, betalningar och lager förblir PostgreSQL — därför kombinerar 4buildsites stack båda, var och en för det den är bäst på. Statistikmodulen som byggs på ClickHouse är under utveckling.

Specifikationstabell

FörmågaGräns / tröskelTypisk användning
Analytiska aggregeringarKolumnlagring och vektoriserad bearbetning över stora mängder händelserLångsamt vid uppslag av en enda rad — inte för OLTP-uppslagTrafik- och försäljningsrapporter (statistikmodulen, under utveckling)
Inläsning av händelserStora volymer, skrivna i batcharSmå och täta inserts kräver batching / async insertInsamling av sidvisningar, klick, ordrar
Lagring & komprimeringKolumnkomprimering (LZ4/ZSTD), flera gånger under råvolymenMycket slumpmässig data komprimeras mindreHändelsehistorik över månader och år, till låg kostnad
Uppdateringar & raderingAsynkrona mutations för enstaka korrigeringarOlämpligt för täta UPDATE:s på enskilda raderGDPR-radering (en användares data, på begäran)
Materialized viewsFörberäknade aggregat vid varje skrivningAggregaten måste definieras i förväg, per rapportDashboards: försäljning per dag, produkt, källa
RealtidHändelser kan frågas efter att de inträffatInget strömningssystem på millisekundsnivåLive-statistik över trafik och konverteringar

ClickHouse jämfört med PostgreSQL och Google Analytics / BigQuery — för analys

KriteriumClickHouse (4buildsite)PostgreSQL (för analys)Google Analytics / BigQuery
Aggregeringshastighet i stor volymKolumnlagring över stora mängder raderSjunker märkbart över tiotals miljoner rader (radlagring)BigQuery hanterar stora datamängder; GA4 har förberäknade standardrapporter, utan fria frågor
Dataägande / GDPRDina data, på plattformens infrastruktur, i EuropaDina data, på dina servrarData hos Google; GA-överföringar till USA förklarade oförenliga med GDPR av EU-myndigheter 2022
Cookies & samtyckeInga spårningscookies från tredje partBeror på den egna implementationenKräver samtyckesbanner för spårning
RealtidData kan frågas efter insamlingMöjligt, men tunga rapporter belastar transaktionsdatabasenStandardrapporter i GA4 kan dyka upp med timmars fördröjning; BigQuery-streaming kostar extra
Kostnad i stor volymÖppen källkod — kostnaden är endast infrastrukturen, inkluderad i abonnemangetÖkar med index, vacuum och hårdvara vid stora volymerBigQuery debiterar per frågad volym; enterprise-varianten av GA är dyr
Påverkan på webbplatsens hastighetAsynkron insamling, rapportering på ett separat systemRapporter kan konkurrera med ordrar i samma databasTredjepartsskript (gtag.js) på sidan — extra JavaScript och externa anrop

Vanliga frågor

Gör ClickHouse min webbplats eller butik långsammare?

Nej. ClickHouse körs på ett system skilt från det som serverar sidorna — så är arkitekturen konstruerad. Trafikhändelser skickas asynkront, och rapporterna rör aldrig butikens databas. Statistiken ändrar inte hur sidorna levereras.

Varför använder ni inte bara Google Analytics?

Tre skäl. Data förblir dina, på plattformens infrastruktur, inte hos Google. Du behöver inga spårningscookies från tredje part, så GDPR-efterlevnaden blir enklare — 2022 förklarade myndigheter i Österrike, Frankrike och Italien att GA inte var förenligt med GDPR. Och rapporterna är kompletta, inte samplade eller försenade med timmar.

Vad är skillnaden mellan ClickHouse och PostgreSQL — varför båda?

PostgreSQL är den transaktionella databasen (OLTP): den bearbetar ordrar, betalningar och lager, en i taget, med korrekthetsgarantier. ClickHouse är den analytiska databasen (OLAP): den läser miljontals händelser på en gång för rapporter. Separationen innebär att en tung rapport inte påverkar dina kunders ordrar.

Är mina trafikdata säkra och GDPR-förenliga?

Ja — genom design. Statistiken är first-party: den ligger på plattformens infrastruktur, i Europa, säljs inte och delas inte med annonsnätverk. Upplägget använder inga spårningscookies från tredje part, och en användares data kan raderas på begäran, i enlighet med GDPR.

Hur ”realtid” är statistiken?

En händelse — ett besök, ett klick, en order — blir synlig i rapporterna efter att den inträffat. Aggregeringar över långa perioder (månader, år) passar också, eftersom ClickHouse byggdes just för den typen av frågor.

Måste jag konfigurera något för att få statistik på min webbplats?

Det kommer inte att behövas. Statistikmodulen är under utveckling och byggs som en del av plattformen: när den blir aktiv i administrationspanelen startar insamlingen automatiskt för publicerade webbplatser — utan skript att installera och utan externa konton.

4b2b.net
Affärsekosystem
4conta.ro
Bokföring
4invoices.net
Faktureringsapp
4expenses.net
Utläggshantering
4notify.net
Notiser
4hosting.net
Webbhotell
4database.net
Databaser
4buildsite.net
Webbplatsbyggare
4myapp.net
Appbyggare
4avatars.net
AI-avatarer
4chaty.net
AI-chatbot
4webagency.net
Programvara för webbyråer
4softedu.net
Webbplatser för utbildning
4softcrm.net
CRM-plattform
4softerp.net
Affärssystem
4softhr.net
HR-hantering
4mystaff.net
Personalportal
4myprojects.net
Projekthantering
4mycontracts.net
Avtal
4docs.net
Dokumenthantering
4appointments.net
Bokning
4marketingonline.net
Marknadsföring
4insurance.net
Försäkring
4property.net
Fastigheter
4lawyers.net
Juristprogram
4mygarage.net
Bilverkstad
4driving.net
Trafikskolor
4fleet.net
Fordonsflotta
4myevents.net
Evenemang
4therapy.net
Terapi
4clinics.net
Kliniker
4dental.net
Tandvårdskliniker
4restaurants.net
Restauranger
4beautify.net
Skönhetssalong
4gym.net
Gym och träningsanläggningar
4guards.net
Bevakningsföretag
4softvet.net
Veterinärkliniker
4softauto.net
Programvara för bilbranschen
4construct.net
Byggföretag
4marketplace.net
Marknadsplats
4shopy.net
Webbutik
4pricing.net
Prisjämförelse
4salefood.net
Matleverans
4rentify.net
Uthyrning
4transports.net
Transport
4agencytravel.net
Resebyrå
4hotel.net
Hotellsystem
4ong.net
Föreningshantering