Apache Presto - Installation

Ce chapitre explique comment installer Presto sur votre machine. Passons en revue les exigences de base de Presto,

  • Linux ou Mac OS
  • Java version 8

Maintenant, continuons les étapes suivantes pour installer Presto sur votre machine.

Vérification de l'installation de Java

J'espère que vous avez déjà installé la version 8 de Java sur votre ordinateur, vous n'avez donc qu'à le vérifier à l'aide de la commande suivante.

$ java -version

Si Java est correctement installé sur votre ordinateur, vous pouvez voir la version de Java installé. Si Java n'est pas installé, suivez les étapes suivantes pour installer Java 8 sur votre machine.

Téléchargez JDK. Téléchargez la dernière version de JDK en visitant le lien suivant.

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

La dernière version est JDK 8u 92 et le fichier est «jdk-8u92-linux-x64.tar.gz». Veuillez télécharger le fichier sur votre machine.

Après cela, extrayez les fichiers et déplacez-vous vers le répertoire spécifique.

Ensuite, définissez des alternatives Java. Enfin Java sera installé sur votre machine.

Installation d'Apache Presto

Téléchargez la dernière version de Presto en visitant le lien suivant,

https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.149/

Maintenant, la dernière version de «presto-server-0.149.tar.gz» sera téléchargée sur votre machine.

Extraire les fichiers tar

Extraire le tar fichier en utilisant la commande suivante -

$ tar  -zxf  presto-server-0.149.tar.gz 
$ cd presto-server-0.149

Paramètres de configuration

Créer un répertoire «data»

Créez un répertoire de données en dehors du répertoire d'installation, qui sera utilisé pour stocker les journaux, les métadonnées, etc., afin qu'il soit facilement préservé lors de la mise à niveau de Presto. Il est défini à l'aide du code suivant -

$ cd  
$ mkdir data

Pour afficher le chemin où il se trouve, utilisez la commande «pwd». Cet emplacement sera attribué dans le fichier node.properties suivant.

Créer le répertoire «etc»

Créez un répertoire etc dans le répertoire d'installation de Presto en utilisant le code suivant -

$ cd presto-server-0.149 
$ mkdir etc

Ce répertoire contiendra les fichiers de configuration. Créons chaque fichier un par un.

Propriétés du nœud

Le fichier de propriétés du nœud Presto contient la configuration environnementale spécifique à chaque nœud. Il est créé dans le répertoire etc (etc / node.properties) en utilisant le code suivant -

$ cd etc 
$ vi node.properties  

node.environment = production 
node.id = ffffffff-ffff-ffff-ffff-ffffffffffff 
node.data-dir = /Users/../workspace/Presto

Après avoir effectué toutes les modifications, enregistrez le fichier et quittez le terminal. Icinode.data est le chemin de l'emplacement du répertoire de données créé ci-dessus. node.id représente l'identifiant unique de chaque nœud.

Configuration JVM

Créez un fichier «jvm.config» dans le répertoire etc (etc / jvm.config). Ce fichier contient une liste d'options de ligne de commande utilisées pour lancer la machine virtuelle Java.

$ cd etc 
$ vi jvm.config  

-server 
-Xmx16G 
-XX:+UseG1GC 
-XX:G1HeapRegionSize = 32M 
-XX:+UseGCOverheadLimit 
-XX:+ExplicitGCInvokesConcurrent 
-XX:+HeapDumpOnOutOfMemoryError 
-XX:OnOutOfMemoryError = kill -9 %p

Après avoir effectué toutes les modifications, enregistrez le fichier et quittez le terminal.

Propriétés de configuration

Créez un fichier «config.properties» dans le répertoire etc (etc / config.properties). Ce fichier contient la configuration du serveur Presto. Si vous configurez une seule machine pour les tests, le serveur Presto ne peut fonctionner que comme processus de coordination tel que défini à l'aide du code suivant -

$ cd etc 
$ vi config.properties  

coordinator = true 
node-scheduler.include-coordinator = true 
http-server.http.port = 8080 
query.max-memory = 5GB 
query.max-memory-per-node = 1GB 
discovery-server.enabled = true 
discovery.uri = http://localhost:8080

Ici,

  • coordinator - nœud maître.

  • node-scheduler.include-coordinator - Permet de planifier le travail sur le coordinateur.

  • http-server.http.port - Spécifie le port du serveur HTTP.

  • query.max-memory=5GB - La quantité maximale de mémoire distribuée.

  • query.max-memory-per-node=1GB - La quantité maximale de mémoire par nœud.

  • discovery-server.enabled - Presto utilise le service Discovery pour trouver tous les nœuds du cluster.

  • discovery.uri - l'URI du serveur Discovery.

Si vous configurez plusieurs serveurs Presto de machines, Presto fonctionnera à la fois comme processus de coordination et de travail. Utilisez ce paramètre de configuration pour tester le serveur Presto sur plusieurs machines.

Configuration pour le coordinateur

$ cd etc 
$ vi config.properties  

coordinator = true 
node-scheduler.include-coordinator = false 
http-server.http.port = 8080 
query.max-memory = 50GB 
query.max-memory-per-node = 1GB 
discovery-server.enabled = true 
discovery.uri = http://localhost:8080

Configuration pour le travailleur

$ cd etc 
$ vi config.properties  

coordinator = false 
http-server.http.port = 8080 
query.max-memory = 50GB 
query.max-memory-per-node = 1GB 
discovery.uri = http://localhost:8080

Propriétés du journal

Créez un fichier «log.properties» dans le répertoire etc (etc / log.properties). Ce fichier contient le niveau de journalisation minimum pour les hiérarchies de journalisation nommées. Il est défini à l'aide du code suivant -

$ cd etc 
$ vi log.properties  
com.facebook.presto = INFO

Enregistrez le fichier et quittez le terminal. Ici, quatre niveaux de journalisation sont utilisés tels que DEBUG, INFO, WARN et ERROR. Le niveau de journal par défaut est INFO.

Propriétés du catalogue

Créez un répertoire «catalogue» dans le répertoire etc (etc / catalog). Ceci sera utilisé pour le montage des données. Par exemple, créezetc/catalog/jmx.properties avec le contenu suivant pour monter le jmx connector comme le catalogue jmx -

$ cd etc 
$ mkdir catalog 
$ cd catalog 
$ vi jmx.properties  
connector.name = jmx

Démarrez Presto

Presto peut être démarré à l'aide de la commande suivante,

$ bin/launcher start

Ensuite, vous verrez la réponse similaire à celle-ci,

Started as 840

Exécutez Presto

Pour lancer le serveur Presto, utilisez la commande suivante -

$ bin/launcher run

Après avoir lancé avec succès le serveur Presto, vous pouvez trouver les fichiers journaux dans le répertoire «var / log».

  • launcher.log - Ce journal est créé par le lanceur et est connecté aux flux stdout et stderr du serveur.

  • server.log - Il s'agit du fichier journal principal utilisé par Presto.

  • http-request.log - Requête HTTP reçue par le serveur.

À partir de maintenant, vous avez installé avec succès les paramètres de configuration Presto sur votre machine. Continuons les étapes pour installer Presto CLI.

Installez Presto CLI

La CLI Presto fournit un shell interactif basé sur un terminal pour exécuter des requêtes.

Téléchargez la CLI Presto en visitant le lien suivant,

https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.149/

Maintenant, «presto-cli-0.149-executable.jar» sera installé sur votre machine.

Exécutez CLI

Après avoir téléchargé le presto-cli, copiez-le vers l'emplacement à partir duquel vous souhaitez l'exécuter. Cet emplacement peut être n'importe quel nœud ayant un accès réseau au coordinateur. Commencez par changer le nom du fichier Jar en Presto. Ensuite, rendez-le exécutable avecchmod + x commande en utilisant le code suivant -

$ mv presto-cli-0.149-executable.jar presto  
$ chmod +x presto

Exécutez maintenant CLI à l'aide de la commande suivante,

./presto --server localhost:8080 --catalog jmx --schema default  
Here jmx(Java Management Extension) refers to catalog and default referes to schema.

Vous verrez la réponse suivante,

presto:default>

Tapez maintenant la commande «jps» sur votre terminal et vous verrez les démons en cours d'exécution.

Arrêtez Presto

Après avoir effectué toutes les exécutions, vous pouvez arrêter le serveur presto à l'aide de la commande suivante -

$ bin/launcher stop