Apache Presto - Installazione

Questo capitolo spiegherà come installare Presto sulla macchina. Esaminiamo i requisiti di base di Presto,

  • Linux o Mac OS
  • Java versione 8

Ora, continuiamo i seguenti passaggi per installare Presto sul tuo computer.

Verifica dell'installazione di Java

Si spera che tu abbia già installato Java versione 8 sul tuo computer in questo momento, quindi devi solo verificarlo utilizzando il seguente comando.

$ java -version

Se Java è installato correttamente sulla tua macchina, potresti vedere la versione di Java installata. Se Java non è installato, seguire i passaggi successivi per installare Java 8 sulla macchina.

Scarica JDK. Scarica l'ultima versione di JDK visitando il seguente collegamento.

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

L'ultima versione è JDK 8u 92 e il file è "jdk-8u92-linux-x64.tar.gz". Scarica il file sulla tua macchina.

Successivamente, estrai i file e spostati nella directory specifica.

Quindi imposta le alternative Java. Infine Java verrà installato sulla tua macchina.

Installazione di Apache Presto

Scarica l'ultima versione di Presto visitando il seguente link,

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

Ora l'ultima versione di "presto-server-0.149.tar.gz" verrà scaricata sul tuo computer.

Estrai file tar

Estrai il file tar file utilizzando il seguente comando:

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

Impostazioni di configurazione

Crea una directory "dati"

Creare una directory dei dati al di fuori della directory di installazione, che verrà utilizzata per archiviare registri, metadati e così via, in modo che possa essere facilmente conservata durante l'aggiornamento di Presto. È definito utilizzando il codice seguente:

$ cd  
$ mkdir data

Per visualizzare il percorso in cui si trova, utilizzare il comando "pwd". Questa posizione verrà assegnata nel successivo file node.properties.

Crea la directory "ecc"

Creare una directory ecc all'interno della directory di installazione di Presto utilizzando il codice seguente:

$ cd presto-server-0.149 
$ mkdir etc

Questa directory conterrà i file di configurazione. Creiamo ogni file uno per uno.

Proprietà nodo

Il file delle proprietà del nodo Presto contiene la configurazione ambientale specifica per ogni nodo. Viene creato all'interno della directory etc (etc / node.properties) utilizzando il seguente codice:

$ cd etc 
$ vi node.properties  

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

Dopo aver apportato tutte le modifiche, salva il file e chiudi il terminale. Quinode.data è il percorso della posizione della directory dei dati creata sopra. node.id rappresenta l'identificatore univoco per ogni nodo.

Configurazione JVM

Creare un file "jvm.config" nella directory etc (etc / jvm.config). Questo file contiene un elenco di opzioni della riga di comando utilizzate per avviare Java Virtual Machine.

$ cd etc 
$ vi jvm.config  

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

Dopo aver apportato tutte le modifiche, salva il file e chiudi il terminale.

Proprietà di configurazione

Crea un file "config.properties" nella directory etc (etc / config.properties). Questo file contiene la configurazione del server Presto. Se stai configurando una singola macchina per il test, il server Presto può funzionare solo come processo di coordinamento come definito utilizzando il codice seguente:

$ 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

Qui,

  • coordinator - nodo master.

  • node-scheduler.include-coordinator - Consente la pianificazione del lavoro sul coordinatore.

  • http-server.http.port - Specifica la porta per il server HTTP.

  • query.max-memory=5GB - La quantità massima di memoria distribuita.

  • query.max-memory-per-node=1GB - La quantità massima di memoria per nodo.

  • discovery-server.enabled - Presto utilizza il servizio Discovery per trovare tutti i nodi nel cluster.

  • discovery.uri - l'URI al server Discovery.

Se si configura un server Presto su più macchine, Presto funzionerà sia come processo di coordinamento che come processo di lavoro. Utilizzare questa impostazione di configurazione per testare il server Presto su più macchine.

Configurazione per coordinatore

$ 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

Configurazione per Worker

$ 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

Proprietà registro

Creare un file "log.properties" nella directory etc (etc / log.properties). Questo file contiene il livello di registrazione minimo per le gerarchie di logger denominate. È definito utilizzando il codice seguente:

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

Salva il file e chiudi il terminale. Qui vengono utilizzati quattro livelli di registro come DEBUG, INFO, WARN ed ERROR. Il livello di registro predefinito è INFO.

Proprietà del catalogo

Creare una directory "catalog" all'interno della directory etc (etc / catalog). Questo verrà utilizzato per il montaggio dei dati. Ad esempio, creaetc/catalog/jmx.properties con i seguenti contenuti per montare il file jmx connector come il catalogo jmx -

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

Avvia Presto

Presto può essere avviato utilizzando il seguente comando,

$ bin/launcher start

Quindi vedrai la risposta simile a questa,

Started as 840

Esegui Presto

Per avviare il server Presto, utilizzare il seguente comando:

$ bin/launcher run

Dopo aver avviato con successo il server Presto, è possibile trovare i file di registro nella directory "var / log".

  • launcher.log - Questo registro viene creato dal programma di avvio ed è connesso ai flussi stdout e stderr del server.

  • server.log - Questo è il file di registro principale utilizzato da Presto.

  • http-request.log - Richiesta HTTP ricevuta dal server.

A partire da ora, hai installato correttamente le impostazioni di configurazione di Presto sulla tua macchina. Continuiamo i passaggi per installare Presto CLI.

Installa Presto CLI

La CLI di Presto fornisce una shell interattiva basata su terminale per l'esecuzione di query.

Scarica la CLI di Presto visitando il seguente link,

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

Ora "presto-cli-0.149-executable.jar" sarà installato sulla tua macchina.

Esegui CLI

Dopo aver scaricato il presto-cli, copialo nella posizione da cui desideri eseguirlo. Questa posizione può essere qualsiasi nodo che abbia accesso di rete al coordinatore. Per prima cosa cambia il nome del file Jar in Presto. Quindi rendilo eseguibile conchmod + x comando utilizzando il codice seguente:

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

Ora esegui CLI usando il seguente comando,

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

Vedrai la seguente risposta,

presto:default>

Ora digita il comando "jps" sul tuo terminale e vedrai i demoni in esecuzione.

Ferma Presto

Dopo aver eseguito tutte le esecuzioni, è possibile arrestare il server presto utilizzando il seguente comando:

$ bin/launcher stop