Як встановити Apache Pinot у Linux

Apache Pinot – це розподілене OLAP-сховище даних, що працює в режимі реального часу та призначене для виконання OLAP-запитів із низькою затримкою. Воно часто використовується в поєднанні з Apache Kafka для отримання та аналізу даних у реальному часі.

У цьому посібнику ми розглянемо кроки, необхідні для встановлення Apache Pinot у системі Linux. Ми розглянемо попередні умови, завантаження та вилучення програмного забезпечення, налаштування конфігурації та запуск служб.

Попередні умови

Перед встановленням Apache Pinot переконайтеся, що ваша система відповідає таким попереднім умовам:

  • Для роботи Apache Pinot потрібен Java Development Kit (JDK) 8 або вище.
  • Apache Pinot використовує Apache Zookeeper для керування кластером.
  • Переконайтеся, що налаштування вашого брандмауера дозволяють використовувати необхідні порти для зв’язку Pinot і Zookeeper.

Крок 1: Встановлення Java в Linux

Якщо у вашій системі не встановлено Java, ви можете завантажити та встановити її з офіційного сайту Oracle.

У більшості дистрибутивів Linux ви можете використовувати менеджер пакетів для встановлення Java. Наприклад, у системах на базі Debian ви можете використовувати таку команду.

sudo apt-get install default-jdk

У системах на базі Red Hat можна використовувати таку команду.

sudo dnf install java-21-openjdk -y

Після завершення встановлення ви можете перевірити версію Java, виконавши таку команду.

java -version

Крок 2: Встановлення Zookeeper у Linux

Zookeeper необхідний Apache Pinot для управління кластером, тому встановіть його за допомогою наступної команди.

sudo apt install zookeeperd         [On Debian-based Systems]
sudo dnf install zookeeperd         [On RHEL-based Systems]

Після встановлення запустіть, увімкніть і перевірте стан служби Zookeeper.

sudo systemctl start zookeeper
sudo systemctl enable zookeeper
sudo systemctl status zookeeper

Крок 3: Встановлення Apache Pinot у Linux

Завантажте останню версію Apache Pinot з офіційного сайту Apache Pinot або скористайтеся наступною командою wget, щоб завантажити її безпосередньо.

wget https://downloads.apache.org/pinot/apache-pinot-1.1.0/apache-pinot-1.1.0-bin.tar.gz

Примітка: За необхідності замініть apache-pinot-1.1.0-bin.tar.gz на останню доступну версію.

Потім розпакуйте скачаний tarball у потрібне місце і налаштуйте змінні оточення для полегшення доступу до двійкових файлів Pinot у файлі .bashrc або .profile.

sudo tar -xvzf apache-pinot-1.1.0-bin.tar.gz -C /opt
echo 'export PINOT_HOME=/opt/apache-pinot-1.1.0-bin' >> ~/.bashrc
echo 'export PATH=$PINOT_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

Крок 4: Запуск служб Apache Pinot

Apache Pinot складається з декількох компонентів, кожен з яких працює як окремий сервіс:

  • Controller: Управляє кластером Pinot і обробляє створення схем і таблиць.
  • Broker: Займається маршрутизацією запитів.
  • Server (сервер): Зберігає та обслуговує дані.
  • Minion: Виконує фонові завдання, такі як ущільнення і згортання даних.

Запустіть кожну службу в окремих вікнах терміналу або як фоновий процес:

Запустіть контролер:

cd $PINOT_HOME
bin/pinot-admin.sh StartController -configFileName conf/pinot-controller.conf

Запустіть брокер:

cd $PINOT_HOME
bin/pinot-admin.sh StartBroker -configFilePath conf/pinot-broker.conf

Запустіть сервер:

cd $PINOT_HOME
bin/pinot-admin.sh StartServer -configFilePath conf/pinot-server.conf

Запустіть міньйона:

cd $PINOT_HOME
bin/pinot-admin.sh StartMinion -configFilePath conf/pinot-minion.conf

Переконайтеся, що всі служби запущені, перевіривши відповідні журнали в каталозі журналів у PINOT_HOME.

Крок 5: Налаштування Apache Pinot

Щоб почати отримувати і запитувати дані, Apache Pinot необхідно налаштувати схему і таблиці.

Створіть каталог для зберігання файлів конфігурації:

sudo mkdir $PINOT_HOME/configs

Створіть файл схеми, наприклад my_schema.json, у каталозі configs.

sudo nano $PINOT_HOME/configs/my_schema.json

Додайте таку конфігурацію схеми.

{
  "schemaName": "mySchema",
  "dimensionFieldSpecs": [
    {
      "name": "myDimension",
      "dataType": "STRING"
    }
  ],
  "metricFieldSpecs": [
    {
      "name": "myMetric",
      "dataType": "LONG"
    }
  ],
  "dateTimeFieldSpecs": [
    {
      "name": "myDateTime",
      "dataType": "LONG",
      "format": "1:MILLISECONDS:EPOCH",
      "granularity": "1:MILLISECONDS"
    }
  ]
}

Потім створіть файл конфігурації таблиці, наприклад my_table.json, у каталозі configs.

sudo nano $PINOT_HOME/configs/my_table.json

Додайте таку конфігурацію таблиці.

{
  "tableName": "myTable",
  "tableType": "REALTIME",
  "segmentsConfig": {
    "timeColumnName": "myDateTime",
    "schemaName": "mySchema",
    "replication": "1"
  },
  "tableIndexConfig": {
    "loadMode": "MMAP"
  },
  "tenants": {},
  "tableRetentionConfig": {},
  "ingestionConfig": {
    "streamIngestionConfig": {
      "type": "kafka",
      "streamConfigMaps": {
        "streamType": "kafka",
        "stream.kafka.topic.name": "myKafkaTopic",
        "stream.kafka.broker.list": "localhost:9092",
        "stream.kafka.consumer.type": "simple",
        "stream.kafka.consumer.prop.auto.offset.reset": "smallest",
        "realtime.segment.flush.threshold.size": "50000"
      }
    }
  },
  "metadata": {}
}

Тепер скористайтеся інструментом адміністратора Pinot, щоб додати конфігурації схеми і таблиць:

bin/pinot-admin.sh AddSchema -schemaFile $PINOT_HOME/configs/my_schema.json -exec
bin/pinot-admin.sh AddTable -tableConfigFile $PINOT_HOME/configs/my_table.json -exec

Крок 6: Перевірка налаштування Apache Pinot

Відкрийте веб-браузер і перейдіть до користувацького інтерфейсу контролера Pinot, щоб переконатися, що вашу схему і таблицю було успішно додано.

http://localhost:9000

Ви можете запитувати дані за допомогою консолі Pinot Query Console, доступної в користувацькому інтерфейсі контролера, або за допомогою інструменту командного рядка Pinot query:

bin/pinot-admin.sh Query -brokerHost localhost -brokerPort 8099 -query "SELECT * FROM myTable LIMIT 10"

Висновок

Встановлення Apache Pinot у системі Linux включає кілька етапів, зокрема встановлення Java і Zookeeper, завантаження і витяг двійкових файлів Pinot, запуск служб Pinot, а також налаштування схеми і таблиць.

Дотримуючись цієї інструкції, ви повинні отримати працюючий екземпляр Apache Pinot, готовий до обробки OLAP-запитів у реальному часі. Для подальшого налаштування та оптимізації зверніться до офіційної документації Apache Pinot.

Поділіться своєю любов'ю

Залишити відповідь

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x