S'il vous arrive d'avoir un vieil ordinateur portable ou une machine qui traîne et qui accumule la poussière, vous voudrez peut-être le réutiliser. Une base de données SQL rapide pour le traitement analytique (par exemple pour générer des rapports ad hoc) vous semble-t-elle bonne ? Si oui, continuez à lire !
Dans cet article, je vais vous montrer comment dépoussiérer un vieil ordinateur portable et le réutiliser comme serveur de base de données dédié pour l'analyse en plus de Rocky Linux et Docker.
Companies Mentioned
S'il vous arrive d'avoir un vieil ordinateur portable ou une machine qui traîne et qui accumule la poussière, vous voudrez peut-être le réutiliser. Une base de données SQL rapide pour le traitement analytique (par exemple pour générer des rapports ad hoc) vous semble-t-elle bonne ? Si oui, continuez à lire !
Dans cet article, je vais vous montrer comment dépoussiérer un vieil ordinateur portable et le réutiliser comme serveur de base de données dédié pour l'analyse en plus de Rocky Linux et Docker.
J'ai utilisé ce Lenovo Thinkpad T440s avec un processeur Intel® Core™ i7, 8 Go DDR3L-SDRAM et 256 Go SSD :
Pourquoi Rocky Linux et Docker ?
Rocky Linux est la suite de , un système d'exploitation d'entreprise open source compatible avec Red Hat Enterprise Linux (RHEL).
Il offre de bonnes fonctionnalités de sécurité et d'administration, et comme il est basé sur RHEL, il est entouré d'une communauté vaste et active.
Docker est un logiciel de virtualisation qui s'exécute sur les systèmes Linux sans virtualiser le matériel. Cela optimise les ressources disponibles tout en conservant les avantages des environnements isolés.
Vous pouvez configurer Docker sur votre machine de tous les jours si vous préférez, mais si vous avez un vieil ordinateur portable avec le matériel minimal requis pour exécuter Rocky Linux, je vous suggère d'en profiter.
Avant de commencer
Avant de commencer, assurez-vous de sauvegarder tous les fichiers importants que vous pourriez avoir sur votre ancienne machine.
Utilisez des outils en ligne comme Google Drive, DropBox ou des disques durs externes. Affectez 1 ou 2 heures exclusivement à cette tâche. Explorez le système de fichiers et évitez les mauvaises surprises plus tard.
Installation de Rocky Linux
Je ne détaillerai pas comment installer Rocky Linux. Consultez la si vous souhaitez voir des instructions détaillées.
Cependant, assurez-vous de configurer une connexion Wi-Fi avec DHCP (ou Ethernet si vous préférez) dans l'interface graphique d'installation.
Vous n'avez pas besoin de créer d'utilisateurs supplémentaires, root suffit. N'installez pas non plus le serveur avec l'option GUI . Au lieu de cela, je recommande de sélectionner le système d'exploitation personnalisé et d'ajouter le logiciel suivant :
Gestion sans tête
Outils de sécurité
Outils système
Suivez les instructions d'installation pour terminer le processus.
Configuration d'une connexion Wi-Fi avec une adresse IP statique
Si vous avez configuré une connexion Wi-Fi lors de l'installation, vous devrez effectuer quelques étapes supplémentaires.
Connectez la machine à votre routeur à l'aide d'un câble .
Exécutez encli connection et notez le nom de la connexion Ethernet. Dans mon cas, c'était enp0s25 .
Activez la connexion en exécutant nmcli connection up enp0s25 (utilisez le nom de votre connexion).
Installez l'utilitaire Wi-Fi manquant en exécutant yum install NetworkManager-wifi
Débranchez le câble Ethernet.
Redémarrez la machine en exécutant reboot .
Une fois la machine redémarrée, connectez-vous en tant que root et vérifiez que la connexion Wi-Fi fonctionne en exécutant ping google.com .
Installez l'interface utilisateur de gestion du réseau à l'aide dnf install NetworkManager-tui .
Exécutez nmtui et modifiez la connexion Wi-Fi pour utiliser une adresse IP statique manuelle. J'ai défini l'adresse du serveur sur 192.168.1.200/24 et ajouté la passerelle et les serveurs DNS que j'ai obtenus d'une autre machine (macOS) du même réseau à l'aide de ifconfig . Utilisez ip addr sous Linux ou ipconfig sous Windows. Voici un exemple :
Empêcher l'ordinateur portable de se suspendre lorsque le couvercle est fermé
Pour éviter que l'ordinateur portable ne passe automatiquement en mode suspendu lorsque le couvercle est fermé, modifiez le fichier /etc/systemd/logind.conf et définissez les propriétés suivantes (vous pouvez utiliser vi ou installer GNU nano à l'aide de yum install nano ) :
Vous pouvez également attribuer un nom d'hôte sur votre ordinateur client. Modifiez le fichier /etc/hosts (machines de type Unix) ou le fichier c:\Windows\System32\drivers\etc\hosts (sous Windows) et ajoutez la ligne suivante (utilisez le nom de votre choix mais spécifiez l'adresse IP statique que vous avez configuré auparavant) :
192.168.1.200 pickanyname.local
Vous devrez le faire sur chaque machine que vous utilisez pour vous connecter au serveur si vous souhaitez utiliser le nom d'hôte au lieu de l'adresse IP. Après cela, vous pourrez vous connecter au serveur comme suit :
Avec Docker ready, il est facile d'installer des logiciels tout en gardant votre serveur bien rangé. Le logiciel s'exécute dans des environnements isolés appelés conteneurs . Vous pouvez créer des conteneurs à partir d' images personnalisées ou prêtes à l'emploi .
Une image est un modèle avec des instructions sur la façon de créer un conteneur. Vous pouvez démarrer, redémarrer, arrêter et même supprimer des conteneurs lorsque vous n'en voulez plus dans votre système. Tout cela sans laisser de déchets dans votre système d'exploitation hôte (Rocky Linux, dans cet article).
Une base de données est un bon candidat pour fonctionner dans un environnement isolé. Exécutez la commande suivante pour démarrer un conteneur qui exécute un serveur MariaDB avec le moteur ColumnStore inclus :
Cela télécharge l'image MariaDB/columnstore à partir de Docker Hub (un registre public d'images Docker géré par Docker Inc.).
Après avoir téléchargé l'image, Docker crée un nouveau conteneur avec le nom MariaDB-cs et procède au démarrage du conteneur, démarrant effectivement le serveur de base de données MariaDB sur le port 3306.
La commande expose également le port au monde extérieur afin que vous puissiez vous connecter à la base de données, par exemple, à partir de votre ordinateur de développement.
Préparation d'une base de données de démonstration pour Analytics
Ce que vous venez d'installer vous permet d'utiliser le moteur de stockage MariaDB ColumnStore lorsque vous créez une table. Par exemple:
CREATE TABLE some_table( ... column definitions here ... ) ENGINE=ColumnStore;
Cela indique à la base de données MariaDB d'utiliser le moteur ColumnStore pour stocker les données en colonnes. Ce moteur est conçu pour la mise à l'échelle du Big Data et peut traiter des pétaoctets de données, vous évitant ainsi de définir et de gérer des index. Cela le rend idéal pour les requêtes ad hoc sur de très grands ensembles de données.
Vous pouvez toujours utiliser le moteur InnoDB par défaut adapté aux charges de travail transactionnelles si nécessaire. Omettez simplement l'option ENGINE . Vous pouvez joindre des tables qui utilisent ColumnStore avec des tables qui utilisent InnoDB dans une seule instruction SQL.
Vous pouvez également utiliser la réplication entre un nœud transactionnel (InnoDB) et un nœud analytique (ColumnStore) pour permettre des charges de travail hybrides de traitement transactionnel-analytique (HTAP).
La meilleure façon d'expérimenter ColumnStore consiste à l'essayer à l'aide d'un ensemble de données existant.
Vérifiez ce qui charge 5 millions de lignes dans une table que vous pouvez utiliser pour exécuter des requêtes analytiques et voir par vous-même les performances de ColumnStore.