Teknologi

← Laman Utama
Analitik & data

ClickHouse — enjin analitik masa nyata dalam tindanan platform

Stack 4buildsite merangkumi ClickHouse — pangkalan data berlajur yang dibina khusus untuk analitik berjumlah besar. Inilah asas yang kami gunakan untuk membangunkan modul statistik trafik dan jualan platform (dalam pembangunan): data kekal milik anda, dan laman anda tidak menanggung beban pengiraan laporan — begitulah seni bina ini direka.

Apa itu ClickHouse dan mengapa kami menggunakannya

ClickHouse ialah pangkalan data OLAP (analitik dalam talian) berlajur, dicipta di Yandex untuk Yandex.Metrica — salah satu sistem analitik web terbesar di dunia — dan dijadikan sumber terbuka pada 2016 di bawah lesen Apache 2.0. Ia dibina untuk satu perkara sahaja, yang dilakukannya dengan sangat baik: agregasi atas data yang sangat besar. Dalam seni bina 4buildsite, ClickHouse ialah enjin yang dipilih untuk lapisan statistik: setiap lawatan, klik dan pesanan menjadi peristiwa yang boleh dianalisis.

Rahsianya ialah storan berlajur: daripada membaca setiap “baris” penuh, ClickHouse hanya membaca lajur yang diperlukan oleh laporan dan memprosesnya dalam blok besar yang divektorkan. Itulah sebabnya soalan seperti “berapa ramai pengunjung saya semalam, mengikut halaman, mengikut sumber” dijawab dengan pantas walaupun merentasi berjuta-juta peristiwa — sesuatu yang sukar dilakukan oleh pangkalan data klasik berorientasikan baris.

Ia bukan teknologi niche: Cloudflare menggunakannya untuk menganalisis trafik HTTP pada skala global, dan Uber, eBay serta Spotify menggunakannya untuk analitik dan pemprosesan log pada volum yang amat besar. Di 4buildsite, enjin yang sama menjadi sebahagian daripada stack platform — tanpa anda perlu mengupah pasukan kejuruteraan data.

Statistik masa nyata — bagaimana modul ini direka

Modul statistik platform sedang dibangunkan, dan seni binanya mudah: peristiwa trafik dikumpulkan secara tak segerak dan ditulis ke ClickHouse, sepenuhnya berasingan daripada pelayan yang menghantar halaman anda. Tiada skrip penjejakan pihak ketiga yang berat — pengumpulan adalah minimum dan first-party.

Laporan dalam panel.4buildsite.net akan dikira terus dalam ClickHouse: trafik halaman, sumber pengunjung, penukaran, jualan setiap produk. Agregasi yang kerap dikira terlebih dahulu melalui materialized view pada setiap penulisan, jadi papan pemuka tidak memulakan pengiraan berat setiap kali anda melihatnya.

  • Trafik langsung: lawatan, halaman, sumber dan peranti — boleh dipertanyakan selepas dikumpulkan
  • Jualan setiap produk, pesanan dan penukaran untuk kedai anda, diagregatkan secara berterusan
  • Sejarah berbulan-bulan dan bertahun-tahun pada kos rendah — pemampatan berlajur mengecilkan storan beberapa kali ganda berbanding data mentah
  • Pengumpulan tak segerak, pelaporan berjalan pada sistem berasingan daripada laman

PostgreSQL + ClickHouse: mengapa kami menggunakan kedua-duanya

Stack platform menggabungkan dua pangkalan data kerana kedua-duanya melakukan perkara yang berbeza secara asas. PostgreSQL ialah lejar transaksi (OLTP): pesanan, pembayaran, stok, akaun pengguna — operasi yang mesti betul sepenuhnya satu demi satu, dengan jaminan transaksi. ClickHouse ialah bilik analisis (OLAP): berjuta-juta peristiwa dibaca sekali gus untuk menjawab soalan anda tentang trafik dan jualan.

Jika laporan berat dijalankan pada pangkalan data yang sama yang memproses pesanan, setiap laporan akan bersaing dengan pelanggan yang sedang membayar pada ketika itu. Pemisahan OLTP/OLAP menghapuskan konflik ini: pesanan pelanggan tidak pernah menunggu laporan anda, dan laporan anda tidak pernah menunggu pesanan orang lain. Setiap enjin melakukan tepat apa yang ia dibina untuknya.

  • PostgreSQL: pesanan, pembayaran Stripe, stok, pelanggan — ketepatan transaksi
  • ClickHouse: peristiwa trafik, laporan, statistik — agregasi pada volum besar
  • Reka bentuk ini mereplikasi data transaksi yang berkaitan ke dalam ClickHouse sebagai peristiwa, supaya laporan jualan tidak pernah menyentuh pangkalan data yang melayani kedai anda

Analitik first-party yang mesra privasi — menggantikan Google Analytics

Prinsip modul statistik: data laman anda kekal pada infrastruktur platform. Ia tidak dihantar kepada Google atau rangkaian pengiklanan lain, tidak dijual, dan tidak digabungkan dengan profil pengguna luar. Ini analitik first-party dalam erti kata sebenar: data tentang pengunjung anda adalah milik anda.

Memandangkan pendekatan ini tidak menggunakan kuki penjejakan pihak ketiga, pematuhan GDPR menjadi jauh lebih mudah. Konteksnya penting: pada 2022, pihak berkuasa perlindungan data di Austria, Perancis dan Itali mengisytiharkan penggunaan Google Analytics tidak mematuhi GDPR berkaitan pemindahan data ke AS. Dengan analitik first-party yang dihoskan di Eropah, seluruh kategori risiko itu hilang sejak awal.

Terdapat juga manfaat praktikal secara langsung: laporan yang dikira dalam ClickHouse tidak disampel, tidak seperti laporan standard dalam alat analitik percuma. Angka lengkap.

Laporan kedai dan marketplace — apa yang akan disediakan modul ini

Bagi kedai dalam talian, ClickHouse bermakna jawapan kepada soalan yang penting: produk mana yang laku, sumber mana yang membawa pelanggan yang benar-benar membeli, di mana troli ditinggalkan. Bagi marketplace berbilang vendor, agregasi yang sama akan dijalankan merentasi semua pesanan: volum bagi setiap vendor, komisen, produk teratas bagi setiap kategori — tanpa eksport manual dan tanpa hamparan.

Dan pada skala besar, pemampatan kekal berkesan. Pemampatan berlajur mengecilkan data beberapa kali ganda berbanding format mentah, jadi anda menyimpan sejarah bertahun-tahun pada kos storan yang rendah. Apabila trafik meningkat daripada beribu kepada berjuta peristiwa, enjin ini terus mengendalikan agregasi — ia direka untuk berbilion baris sejak awal, bukan ditambah kemudian.

Kelebihan dan kekurangan

Kelebihan

  • Agregasi atas berjuta-juta peristiwa — agregat yang kerap dikira terlebih dahulu.
  • Analitik berjalan pada sistem yang berasingan daripada yang melayani halaman.
  • Data trafik anda kekal milik anda, pada infrastruktur platform — tiada pemindahan kepada Google atau rangkaian iklan.
  • Tiada kuki penjejakan pihak ketiga — pematuhan GDPR lebih mudah.
  • Pemampatan berlajur yang kukuh — sejarah bertahun-tahun pada kos storan rendah.
  • Sumber terbuka (Apache 2.0), tiada lesen mengikut volum — kos tidak melonjak apabila trafik meningkat.

Had

  • Bukan pangkalan data transaksi — mengemas kini atau memadam baris individu ialah operasi berat; itulah sebabnya pesanan dan pembayaran berada dalam PostgreSQL.
  • Dioptimumkan untuk penulisan kelompok besar; banyak sisipan kecil yang kerap memerlukan pengelompokan — platform mengendalikannya, tetapi ia adalah had enjin yang nyata.
  • JOIN yang kompleks kurang fleksibel berbanding PostgreSQL — skema peristiwa mesti direka untuk analitik sejak awal.
  • Mencari satu baris (point lookup) lebih perlahan berbanding pangkalan data OLTP berindeks — ia tidak menggantikan pangkalan data utama kedai.

Rumusan ringkas

ClickHouse ialah pilihan yang tepat untuk analitik pada volum besar: statistik trafik dan jualan masa nyata, dengan data anda sendiri, tanpa menambah beban pada laman anda. Untuk pesanan, pembayaran dan stok, PostgreSQL kekal digunakan — sebab itulah stack 4buildsite menggabungkan kedua-duanya, masing-masing pada tugas terbaiknya. Modul statistik yang dibina di atas ClickHouse sedang dalam pembangunan.

Jadual spesifikasi

KeupayaanHad / ambangKegunaan lazim
Agregasi analitikAgregasi atas berjuta-juta peristiwa (berlajur + divektorkan)Perlahan pada carian satu baris — bukan untuk bacaan titik OLTPLaporan trafik dan jualan (modul statistik, dalam pembangunan)
Pengambilan peristiwaVolum tinggi, ditulis secara kelompokSisipan kecil yang kerap memerlukan pengelompokan / async insertMengumpul pageview, klik, pesanan
Storan & pemampatanPemampatan berlajur (LZ4/ZSTD), beberapa kali ganda di bawah volum mentahData yang sangat rawak termampat kurangSejarah peristiwa berbulan-bulan dan bertahun-tahun, pada kos rendah
Kemas kini & pemadamanMutasi tak segerak untuk pembetulan sekali-sekalaTidak sesuai untuk UPDATE satu baris yang kerapPemadaman GDPR (data seorang pengguna, atas permintaan)
Materialized viewAgregat dikira terlebih dahulu pada setiap penulisanAgregat mesti ditakrifkan lebih awal, bagi setiap laporanPapan pemuka: jualan setiap hari, produk, sumber
Masa nyataPeristiwa boleh dipertanyakan selepas ia berlakuBukan sistem penstriman masa nyataStatistik trafik dan penukaran langsung

ClickHouse lwn PostgreSQL lwn Google Analytics / BigQuery — untuk analitik

KriteriaClickHouse (4buildsite)PostgreSQL (untuk analitik)Google Analytics / BigQuery
Kelajuan agregasi pada volum besarAgregasi atas berjuta-juta barisMerosot ketara atas berpuluh juta baris (storan baris)BigQuery berskala besar; GA4 mempunyai laporan standard yang dikira terlebih dahulu, tanpa pertanyaan bebas
Pemilikan data / GDPRData anda, pada infrastruktur platform, di EropahData anda, pada pelayan andaData berada di Google; pemindahan GA ke AS diputuskan tidak mematuhi GDPR oleh pihak berkuasa EU pada 2022
Kuki & persetujuanTiada kuki penjejakan pihak ketigaBergantung pada pelaksanaan anda sendiriMemerlukan sepanduk persetujuan untuk penjejakan
Masa nyataData boleh dipertanyakan selepas dikumpulkanBoleh dilakukan, tetapi laporan berat membebankan pangkalan data transaksiLaporan standard GA4 boleh lewat beberapa jam; penstriman BigQuery dikenakan kos tambahan
Kos pada volum besarSumber terbuka — kos hanyalah infrastruktur, termasuk dalam langgananMeningkat dengan indeks, vacuum dan perkakasan pada volum tinggiBigQuery mengenakan bayaran mengikut volum yang ditanya; tier perusahaan GA mahal
Kesan pada kelajuan lamanPengumpulan tak segerak, pelaporan pada sistem berasinganLaporan boleh bersaing dengan pesanan pada pangkalan data yang samaSkrip pihak ketiga (gtag.js) pada halaman — JavaScript tambahan dan permintaan luaran

Soalan lazim

Adakah ClickHouse memperlahankan laman atau kedai saya?

Tidak. ClickHouse berjalan pada sistem yang berasingan daripada yang melayani halaman anda — begitulah seni bina ini direka. Peristiwa trafik dihantar secara tak segerak, dan laporan tidak menyentuh pangkalan data kedai.

Mengapa tidak guna sahaja Google Analytics?

Tiga sebab. Data kekal milik anda, pada infrastruktur platform, bukan di Google. Anda tidak memerlukan kuki penjejakan pihak ketiga, jadi pematuhan GDPR lebih mudah — pada 2022, pihak berkuasa di Austria, Perancis dan Itali memutuskan GA tidak mematuhi GDPR. Dan laporan lengkap, tidak disampel.

Apakah perbezaan antara ClickHouse dan PostgreSQL — mengapa kedua-duanya?

PostgreSQL ialah pangkalan data transaksi (OLTP): ia memproses pesanan, pembayaran dan stok satu demi satu, dengan jaminan ketepatan. ClickHouse ialah pangkalan data analitik (OLAP): ia membaca berjuta-juta peristiwa sekali gus untuk laporan.

Adakah data trafik saya selamat dan mematuhi GDPR?

Ya — melalui reka bentuk. Statistik adalah first-party: ia berada pada infrastruktur platform, di Eropah, dan tidak pernah dijual atau dikongsi dengan rangkaian pengiklanan. Pendekatan ini tidak menggunakan kuki penjejakan pihak ketiga, dan data pengguna boleh dipadam atas permintaan, mengikut GDPR.

Setakat mana “masa nyata” statistik ini?

Sesuatu peristiwa — lawatan, klik, pesanan — kelihatan dalam laporan selepas ia berlaku. Agregasi untuk tempoh panjang (berbulan-bulan, bertahun-tahun) juga dijawab oleh ClickHouse, kerana ia dibina tepat untuk jenis pertanyaan ini.

Adakah saya perlu menyediakan apa-apa untuk mendapatkan statistik pada laman saya?

Anda tidak perlu. Modul statistik sedang dibangunkan dan dibina sebagai sebahagian daripada platform: setelah ia dilancarkan dalam panel admin, pengumpulan bermula secara automatik untuk laman yang diterbitkan — tiada skrip untuk dipasang dan tiada akaun luaran.

4b2b.net
Ekosistem Perniagaan
4conta.ro
Perakaunan
4invoices.net
Aplikasi Pengebilan
4expenses.net
Pengurusan Perbelanjaan
4notify.net
Pemberitahuan
4hosting.net
Pengehosan
4database.net
Pangkalan Data
4buildsite.net
Pembina Laman Web
4myapp.net
Pembina Aplikasi
4avatars.net
Avatar AI
4chaty.net
Chatbot AI
4webagency.net
Perisian Agensi Web
4softedu.net
Laman Web Pendidikan
4softcrm.net
Platform CRM
4softerp.net
Sistem ERP
4softhr.net
Pengurusan HR
4mystaff.net
Portal Kakitangan
4myprojects.net
Pengurus Projek
4mycontracts.net
Kontrak
4docs.net
Pengurusan Dokumen
4appointments.net
Temu Janji
4marketingonline.net
Pemasaran
4insurance.net
Insurans
4property.net
Hartanah
4lawyers.net
Perisian Undang-undang
4mygarage.net
Bengkel Kereta
4driving.net
Sekolah Memandu
4fleet.net
Pengurusan Armada
4myevents.net
Acara
4therapy.net
Terapi
4clinics.net
Klinik
4dental.net
Klinik Pergigian
4restaurants.net
Restoran
4beautify.net
Salon Kecantikan
4gym.net
Pusat Kecergasan
4guards.net
Syarikat Keselamatan
4softvet.net
Klinik veterinar
4softauto.net
Perisian perniagaan automotif
4construct.net
Syarikat Pembinaan
4marketplace.net
Marketplace
4shopy.net
Kedai Dalam Talian
4pricing.net
Perbandingan Harga
4salefood.net
Penghantaran Makanan
4rentify.net
Penyewaan
4transports.net
Pengangkutan
4agencytravel.net
Agensi Pelancongan
4hotel.net
Pengurusan Hotel
4ong.net
Pengurusan NGO