[{"data":1,"prerenderedAt":112},["ShallowReactive",2],{"seo-verification":3,"marketplace-app-fr-clickhouse":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"slug":7,"name":8,"description":9,"phase":10,"docsUrl":11,"logo":12,"github":13,"tagline":14,"longDescription":15,"features":16,"useCases":23,"steps":33,"faq":52,"specs":71,"compatibleOs":79,"relatedApps":80,"relatedPosts":105,"category":109},"clickhouse","ClickHouse","Base de données analytique en colonnes : des milliards de lignes agrégées en quelques millisecondes, avec une console SQL servie par le serveur lui-même.",1,"https:\u002F\u002Fservorbit.com\u002Fblog\u002Fheberger-clickhouse-vps","https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fselfhst\u002Ficons\u002Fsvg\u002Fclickhouse.svg","https:\u002F\u002Fgithub.com\u002FClickHouse\u002FClickHouse","Entrepôt analytique en colonnes, auto-hébergé — des milliards de lignes agrégées en millisecondes, sans facturation à la requête.","ClickHouse est la base de données analytique (OLAP) de référence du monde open source (licence Apache-2.0, environ 49 k étoiles GitHub). Son stockage en colonnes et sa compression agressive permettent à un seul nœud modeste de balayer des centaines de millions de lignes en moins d'une seconde — exactement la charge sur laquelle une base orientée lignes comme PostgreSQL ou MySQL s'effondre. Elle parle SQL, embarque sa propre console SQL de navigateur sur `\u002Fplay` — aucune application compagne n'est nécessaire pour lancer une requête — et se pilote entièrement par son interface HTTP, sur le port 8123.\n\nDéployée sur un VPS ServOrbit, ClickHouse remplace la facturation au volume de requêtes des entrepôts managés (ClickHouse Cloud, BigQuery) par un coût mensuel fixe, et garde vos journaux applicatifs, vos métriques produit et vos événements analytiques sur une infrastructure que vous maîtrisez. Le modèle déploie la version 26.3 LTS en un seul conteneur, avec la limite de descripteurs de fichiers déjà portée à 262144, des volumes persistants pour les données et les journaux, et une base `analytics` créée au premier démarrage. Le compte `default` — celui que l'image amont livre sans mot de passe — est retiré au démarrage et remplacé par un compte `admin` dont le mot de passe est généré à chaque installation.",[17,18,19,20,21,22],"Agrégations en moins d'une seconde sur des centaines de millions de lignes, grâce au stockage en colonnes et à l'exécution vectorisée.","Compression de 5 à 10 fois sur les journaux et les événements : un SSD modeste encaisse un volume qui remplirait une base relationnelle.","Ingestion massive de plusieurs centaines de milliers de lignes par seconde sur un seul nœud bien réglé.","Console SQL intégrée au navigateur sur `\u002Fplay` — écrivez et lancez vos requêtes sans installer le moindre client.","SQL standard et connecteurs natifs pour Grafana et Metabase, plus des clients HTTP et natifs dans tous les langages courants.","Licence Apache-2.0 sans facturation à la requête : votre couche analytique coûte le prix du VPS, quel que soit le volume interrogé.",[24,27,30],{"title":25,"body":26},"Entrepôt auto-hébergé de journaux et d'événements applicatifs","Déversez vos journaux applicatifs, vos traces HTTP et vos événements produit dans une table `MergeTree` partitionnée par mois, avec un TTL qui fait tomber les partitions anciennes toutes seules. La compression garde des mois d'historique sur un petit disque, et les agrégations restent sous la seconde même une fois la table passée au-delà de cent millions de lignes.",{"title":28,"body":29},"Le moteur analytique derrière vos tableaux de bord","Branchez Grafana ou Metabase sur l'interface HTTP et construisez vos tableaux de bord sur les événements bruts plutôt que sur des agrégats calculés d'avance. Comme les balayages coûtent peu, vous découpez selon n'importe quelle dimension après coup, au lieu de figer vos métriques à l'avance.",{"title":31,"body":32},"Déchargement analytique d'une base de production","Cessez de faire tourner vos requêtes de reporting sur le PostgreSQL ou le MySQL qui sert vos clients. Répliquez les tables que vous analysez dans ClickHouse sur le même VPS, interrogez-les sur `127.0.0.1:8123`, et votre base primaire ne ressent plus jamais la charge analytique.",[34,37,40,43,46,49],{"title":35,"body":36},"Commander le VPS","Choisissez un VPS ServOrbit avec au moins 4 Go de RAM : ClickHouse échange de la mémoire contre de la vitesse, et 8 Go donnent de l'air aux grosses agrégations. Deux vCPU parallélisent les requêtes, quatre sont confortables. Le disque compte plus que tout le reste : prévoyez 50 à 100 Go de SSD NVMe selon votre rétention, en gardant à l'esprit que la compression divise habituellement les données brutes par cinq à dix.",{"title":38,"body":39},"Ce que l'installation déploie","Un seul conteneur `clickhouse\u002Fclickhouse-server:26.3.17.110`, la version à support long terme du moment. Deux volumes nommés conservent `\u002Fvar\u002Flib\u002Fclickhouse` et `\u002Fvar\u002Flog\u002Fclickhouse-server`, la limite de descripteurs de fichiers est portée à 262144 comme ClickHouse l'exige, et une base `analytics` est créée au premier démarrage. Le contrôle de santé interroge `\u002Fping` jusqu'à ce que le serveur réponde, ce qui prend quelques secondes.",{"title":41,"body":42},"Se connecter la première fois","L'installation génère un mot de passe aléatoire et crée un compte `admin` avec celui-ci ; le compte `default`, que l'image amont livre sans mot de passe, est retiré au démarrage. Relevez le mot de passe généré sur la fiche de l'application dans votre espace client, ouvrez la console intégrée sur `\u002Fplay`, saisissez `admin` et ce mot de passe, puis lancez `SELECT version()` pour confirmer.",{"title":44,"body":45},"Atteindre le serveur","Attachez un domaine : ServOrbit installe le vhost nginx et le certificat TLS, et la console répond alors sur `https:\u002F\u002F\u003Cvotre-domaine>\u002Fplay`, sans numéro de port. Sans domaine, il n'existe aucun point d'entrée public, par construction — ouvrez un tunnel avec `ssh -L 8123:127.0.0.1:8123 root@\u003Cip-du-vps>` et travaillez sur `http:\u002F\u002Flocalhost:8123\u002Fplay`. 8123 est le port du catalogue ; reprenez celui affiché sur la fiche de l'application s'il diffère.",{"title":47,"body":48},"Créer votre première table","Créez une table `MergeTree` et consacrez une minute à sa clé `ORDER BY` : c'est le facteur décisif de performance, à lui seul. Placez en premier les colonnes sur lesquelles vous filtrez le plus, en général une date et un identifiant, et partitionnez par mois avec `PARTITION BY toYYYYMM(date)` pour que la rétention devienne une suppression de partition bon marché plutôt qu'un effacement ligne à ligne.",{"title":50,"body":51},"Brancher votre application et verrouiller le compte","Une application qui tourne sur le même VPS se connecte à `127.0.0.1:8123`, l'interface HTTP, qui accepte aussi bien les `INSERT` que les `SELECT` — ce port n'est pas joignable depuis l'extérieur de la machine. Le protocole natif, plus rapide, reste disponible pour un conteneur rattaché au réseau Docker de la pile, mais n'est volontairement pas publié sur l'hôte. Le compte `admin` a la gestion des droits activée : créez un utilisateur en lecture seule par consommateur, avec `CREATE USER` et `GRANT SELECT`, plutôt que de confier le mot de passe administrateur à Grafana ou à Metabase.",[53,56,59,62,65,68],{"q":54,"a":55},"À quoi sert ClickHouse, et quand est-ce le mauvais outil ?","ClickHouse est une base OLAP : elle est faite pour balayer et agréger de très grandes tables, pas pour servir un grand nombre de petites lectures et écritures transactionnelles. C'est le bon outil pour des journaux, des métriques, des événements et du reporting. C'est le mauvais outil comme base primaire d'une application web — il n'y a pas de vraies transactions, les mises à jour et les suppressions sont des mutations asynchrones et non des opérations immédiates, et la lecture d'une ligne unique y est plus lente que dans PostgreSQL. Le schéma courant consiste à avoir les deux : PostgreSQL pour l'application, ClickHouse pour l'analytique.",{"q":57,"a":58},"Combien de RAM et de disque faut-il ?","4 Go de RAM constituent le plancher réaliste et 8 Go sont confortables : ClickHouse garde en mémoire ses marques et ses granules d'index, et une grosse agrégation qui dépasse la mémoire disponible est interrompue plutôt que basculée sur le disque. Côté disque, comptez 50 à 100 Go de SSD NVMe — la compression divise typiquement le volume brut de journaux par cinq à dix, si bien que cent gigaoctets de journaux JSON retombent souvent sous les vingt sur le disque. Au repos, le conteneur occupe environ 270 Mo de RAM, et environ 340 Mo après quelques requêtes — mesuré sur la recette du catalogue.",{"q":60,"a":61},"Avec quel compte se connecte-t-on ?","Avec un compte `admin`, créé au démarrage avec un mot de passe généré pour votre installation et affiché sur la fiche de l'application dans votre espace client. L'image amont livre un compte `default` sans aucun mot de passe ; ce modèle le retire dès le démarrage du serveur, si bien qu'il ne reste aucune voie d'entrée sans authentification. La gestion des droits est activée sur `admin`, ce qui vous permet de créer d'autres utilisateurs et d'accorder des droits directement en SQL.",{"q":63,"a":64},"Quels ports sont ouverts, et le serveur est-il exposé sur Internet ?","Un seul port est publié, le 8123 de l'interface HTTP, et uniquement sur l'interface de bouclage de votre VPS : rien ne répond sur l'adresse IP publique brute, quel que soit le port essayé. Une application hébergée sur le même VPS l'atteint sur `127.0.0.1:8123` ; depuis votre poste, attachez un domaine — nginx proxifie alors cette interface avec TLS — ou ouvrez un tunnel SSH. Le protocole natif, sur 9000, n'est pas publié sur l'hôte : il reste joignable depuis un conteneur rattaché au réseau Docker de la pile, et depuis le serveur lui-même avec `docker exec`. Ce choix est délibéré — un second port fixe entrerait tôt ou tard en collision avec une autre application du catalogue, sans que la réallocation automatique puisse l'éviter.",{"q":66,"a":67},"Grafana ou Metabase peuvent-ils l'interroger ?","Oui, les deux. Grafana dispose d'une source de données ClickHouse officielle et Metabase embarque un pilote ClickHouse ; l'un comme l'autre se connectent par l'interface HTTP. Si l'outil de tableaux de bord tourne sur le même VPS, pointez-le sur `127.0.0.1:8123` ; s'il tourne ailleurs, attachez un domaine pour que la connexion soit chiffrée par nginx. Créez un utilisateur en lecture seule dédié à l'outil plutôt que de réutiliser le compte administrateur.",{"q":69,"a":70},"Comment éviter que le disque se remplisse ?","Posez un TTL sur la table dès sa création — `TTL event_date + INTERVAL 90 DAY` — et partitionnez par mois. ClickHouse fait alors tomber en arrière-plan les partitions entièrement expirées, ce qui ne coûte presque rien, au lieu d'effacer les lignes une à une. Insérez par lots de plusieurs milliers de lignes plutôt que ligne à ligne : les insertions unitaires créent une nuée de petites partitions et déclenchent des fusions coûteuses. Surveillez `system.parts` et `system.merges` si les requêtes commencent à ralentir.",{"ram":72,"cpu":73,"stack":74,"port":78},"4 Go (8 Go recommandé)","2 vCPU (4 recommandé)",[75,76,77],"Docker","ClickHouse 26.3 LTS","MergeTree","8123 (HTTP)",[],[81,90,99],{"name":82,"slug":83,"categorySlug":84,"categoryName":85,"categoryColor":86,"logo":87,"tagline":88,"description":89},"Metabase","metabase","bases-de-donnees","Bases de Données","text-blue-400 bg-blue-500\u002F10","https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fselfhst\u002Ficons\u002Fsvg\u002Fmetabase.svg","Informatique décisionnelle open source par-dessus n'importe quelle base SQL — tableaux de bord et graphiques dans le navigateur, sans écrire de SQL.","Informatique décisionnelle open source : branchez n'importe quelle base SQL et construisez tableaux de bord, questions et graphiques depuis le navigateur, sans écrire de SQL.",{"name":91,"slug":92,"categorySlug":93,"categoryName":94,"categoryColor":95,"logo":96,"tagline":97,"description":98},"Grafana","grafana","monitoring","Monitoring & Observabilité","text-amber-400 bg-amber-500\u002F10","https:\u002F\u002Fcdn.simpleicons.org\u002Fgrafana","Visualisez vos métriques d'infrastructure et d'applications — dashboards personnalisables et alertes.","Visualisez les métriques de vos infrastructures et applications. Dashboards personnalisables, alertes multi-canaux, sources multiples.",{"name":100,"slug":101,"categorySlug":84,"categoryName":85,"categoryColor":86,"logo":102,"tagline":103,"description":104},"PostgreSQL Stack","postgresql-stack","https:\u002F\u002Fcdn.simpleicons.org\u002Fpostgresql","PostgreSQL 15 + pgAdmin — base de données relationnelle puissante et extensible dès le premier démarrage.","Base de données relationnelle open source avec pgAdmin préconfigurée. Puissante, extensible, prête pour la production.",[106,107,108],"heberger-clickhouse-vps","self-host-metabase-vps","heberger-postgresql-vps",{"key":110,"slug":84,"name":85,"objective":111,"icon":110,"color":86},"database","Disposer rapidement d'une plateforme de données.",1786205270112]