Учебники

Apache Presto — Установка

В этой главе объясняется, как установить Presto на ваш компьютер. Давайте пройдемся по основным требованиям Presto,

  • Linux или Mac OS
  • Java версия 8

Теперь давайте продолжим следующие шаги для установки Presto на ваш компьютер.

Проверка установки Java

Надеюсь, вы уже установили Java версии 8 на своем компьютере прямо сейчас, поэтому вы просто подтвердите это с помощью следующей команды.

$ java -version 

Если Java успешно установлена ​​на вашем компьютере, вы можете увидеть версию установленной Java. Если Java не установлена, выполните следующие шаги, чтобы установить Java 8 на свой компьютер.

Скачать JDK. Загрузите последнюю версию JDK, перейдя по следующей ссылке.

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

Последняя версия — JDK 8u 92, а файл — «jdk-8u92-linux-x64.tar.gz». Пожалуйста, загрузите файл на свой компьютер.

После этого распакуйте файлы и перейдите в определенный каталог.

Затем установите альтернативы Java. Наконец Java будет установлен на вашем компьютере.

Установка Apache Presto

Загрузите последнюю версию Presto, перейдя по следующей ссылке,

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

Теперь последняя версия «presto-server-0.149.tar.gz» будет загружена на ваш компьютер.

Извлечь файлы tar

Извлеките файл tar, используя следующую команду —

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

Настройки конфигурации

Создать каталог данных

Создайте каталог данных вне каталога установки, который будет использоваться для хранения журналов, метаданных и т. Д., Чтобы его было легко сохранить при обновлении Presto. Это определяется с помощью следующего кода —

$ cd  
$ mkdir data

Чтобы просмотреть путь, по которому он расположен, используйте команду «pwd». Это местоположение будет назначено в следующем файле node.properties.

Создать каталог «etc»

Создайте каталог etc внутри установочного каталога Presto, используя следующий код —

$ cd presto-server-0.149 
$ mkdir etc

Этот каталог будет содержать файлы конфигурации. Давайте создадим каждый файл один за другим.

Свойства узла

Файл свойств узла Presto содержит конфигурацию среды, специфичную для каждого узла. Он создается внутри каталога etc (etc / node.properties) с использованием следующего кода —

$ cd etc 
$ vi node.properties  

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

После внесения всех изменений сохраните файл и выйдите из терминала. Здесь node.data — это путь к указанному выше каталогу данных. node.id представляет уникальный идентификатор для каждого узла.

JVM Config

Создайте файл «jvm.config» в каталоге etc (etc / jvm.config). Этот файл содержит список параметров командной строки, используемых для запуска виртуальной машины Java.

$ cd etc 
$ vi jvm.config  

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

После внесения всех изменений сохраните файл и выйдите из терминала.

Свойства конфигурации

Создайте файл «config.properties» внутри каталога etc (etc / config.properties). Этот файл содержит конфигурацию сервера Presto. Если вы настраиваете один компьютер для тестирования, сервер Presto может функционировать только как процесс координации, как определено с помощью следующего кода:

$ 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

Вот,

  • координатор — главный узел.

  • node-scheduler.include-координатор — позволяет планировать работу на координаторе.

  • http-server.http.port — указывает порт для HTTP-сервера.

  • query.max-memory = 5GB — максимальный объем распределенной памяти.

  • query.max-memory-per-node = 1GB — максимальный объем памяти на узел.

  • discovery-server.enabled — Presto использует службу Discovery для поиска всех узлов в кластере.

  • discovery.uri — URI для сервера Discovery.

координатор — главный узел.

node-scheduler.include-координатор — позволяет планировать работу на координаторе.

http-server.http.port — указывает порт для HTTP-сервера.

query.max-memory = 5GB — максимальный объем распределенной памяти.

query.max-memory-per-node = 1GB — максимальный объем памяти на узел.

discovery-server.enabled — Presto использует службу Discovery для поиска всех узлов в кластере.

discovery.uri — URI для сервера Discovery.

Если вы настраиваете Presto-сервер с несколькими машинами, Presto будет выполнять функции как координации, так и рабочего процесса. Используйте этот параметр конфигурации для тестирования сервера Presto на нескольких компьютерах.

Конфигурация для координатора

$ 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 

Конфигурация для работника

$ 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

Свойства журнала

Создайте файл «log.properties» внутри каталога etc (etc / log.properties). Этот файл содержит минимальный уровень журнала для именованных иерархий регистратора. Это определяется с помощью следующего кода —

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

Сохраните файл и выйдите из терминала. Здесь используются четыре уровня регистрации, такие как DEBUG, INFO, WARN и ERROR. Уровень журнала по умолчанию — INFO.

Свойства каталога

Создайте каталог «каталог» внутри каталога etc (etc / catalog). Это будет использоваться для монтажа данных. Например, создайте файл etc / catalog / jmx.properties со следующим содержимым, чтобы подключить соединитель jmx в качестве каталога jmx —

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

Начать Престо

Presto можно запустить с помощью следующей команды:

$ bin/launcher start 

Тогда вы увидите ответ, похожий на этот,

Started as 840

Run Presto

Чтобы запустить сервер Presto, используйте следующую команду —

$ bin/launcher run

После успешного запуска сервера Presto вы можете найти файлы журналов в каталоге «var / log».

  • launcher.log — этот журнал создается модулем запуска и подключается к потокам stdout и stderr сервера.

  • server.log — это основной файл журнала, используемый Presto.

  • http-request.log — HTTP-запрос, полученный сервером.

launcher.log — этот журнал создается модулем запуска и подключается к потокам stdout и stderr сервера.

server.log — это основной файл журнала, используемый Presto.

http-request.log — HTTP-запрос, полученный сервером.

На данный момент вы успешно установили параметры конфигурации Presto на своем компьютере. Давайте продолжим шаги по установке Presto CLI.

Установите Presto CLI

Интерфейс Presto CLI предоставляет интерактивную оболочку на основе терминала для выполнения запросов.

Загрузите интерфейс Presto CLI, перейдя по следующей ссылке:

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

Теперь «presto-cli-0.149-executetable.jar» будет установлен на вашем компьютере.

Запустить CLI

После загрузки Presto-Cli скопируйте его в папку, из которой вы хотите запустить. Это местоположение может быть любым узлом, который имеет сетевой доступ к координатору. Сначала измените имя файла Jar на Presto. Затем сделайте его исполняемым с помощью команды chmod + x, используя следующий код —

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

Теперь выполните CLI, используя следующую команду,

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

Вы увидите следующий ответ,

 presto:default>

Теперь введите на своем терминале команду «jps», и вы увидите запущенные демоны.

Стоп Престо

Выполнив все исполнения, вы можете остановить сервер Presto, используя следующую команду: