نصب Apache Pinot

How to Install Apache Pinot in Linux

آموزش نصب و پیکربندی Apache Pinot در لینوکس

Apache Pinot یک پایگاه‌داده توزیع‌شده بلادرنگ برای پردازش تحلیلی برخط (OLAP) است که به منظور پاسخ‌گویی به پرسش‌های OLAP با تأخیر پایین طراحی شده است. این سامانه اغلب همراه با Apache Kafka برای دریافت و تحلیل بلادرنگ داده‌ها به کار می‌رود.

این راهنما مراحل نصب Apache Pinot بر روی یک سیستم عامل لینوکس را به شما آموزش خواهد داد. ما به بررسی پیش‌نیازها، دانلود و استخراج نرم‌افزار، پیکربندی تنظیمات، و راه‌اندازی سرویس‌ها خواهیم پرداخت.

پیش‌نیازها:

پیش از نصب Apache Pinot، اطمینان حاصل کنید که سیستم شما شرایط زیر را دارا باشد:

  • Apache Pinot برای اجرا به Java Development Kit (JDK) نسخه ۸ یا بالاتر نیاز دارد.
  • Apache Pinot از Apache Zookeeper برای مدیریت خوشه استفاده می‌کند.
  • اطمینان حاصل کنید که تنظیمات فایروال شما، پورت های لازم برای برقراری ارتباط بین Pinot و Zookeeper را مجاز می‌سازد.

مرحله ۱: نصب Java در لینوکس

اگر جاوا روی سیستم شما نصب نشده است، می توانید آن را از وب سایت رسمی اوراکل دانلود و نصب کنید.

برای اکثر توزیع های لینوکس، می توانید از مدیر بسته برای نصب Java (جاوا) استفاده کنید. به عنوان مثال، روی سیستم های مبتنی بر دبیان، می توانید از دستور زیر استفاده کنید.

sudo apt-get install default-jdk

پ.ن
آیا نیاز به سرور مجازی ایران دارید؟ لطفا بر روی لینک اون کلیک کنید! اگر نیاز به وی پی اس ایران با آی پی تمیز و بدون محدودیت دارید کلیک کنید.
 
در سیستم های مبتنی بر رد هت، می توانید از دستور زیر استفاده کنید.

sudo dnf install java-21-openjdk -y

پس از اتمام نصب Java، می‌توانید با اجرای دستور زیر نسخه جاوا را تایید کنید.

java -version
برسی نصب Java در
نسخه جاوا را در لینوکس بررسی کنید

مرحله 2: نصب زوکیپر (Zookeeper) در لینوکس

زوکیپر برای مدیریت خوشه توسط آپاچی پینوت ضروری است، بنابراین آن را با استفاده از دستور زیر نصب کنید.

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
نصب زوکیپر
نصب زوکیپر را در لینوکس بررسی کنید.

مرحله ۳: نصب Apache Pinot در لینوکس

آخرین نسخه آپاچی پینوت را از وب سایت رسمی آپاچی پینوت دانلود کنید یا برای دانلود مستقیم از دستور wget زیر استفاده کنید.

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

در مرحله بعد، فایل tarball دانلود شده را در یک مکان دلخواه استخراج کنید و متغیرهای محیطی را برای دسترسی راحت‌تر به فایل‌های باینری پینوت در فایل.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

مرحله ۴: راه‌اندازی سرویس‌های آپاچی پینوت

آپاچی پینوت از چندین جزء تشکیل شده است که هر کدام به عنوان یک سرویس جداگانه در حال اجرا هستند و اینها عبارتند از:

  • Controller:مدیریت خوشه Pinout را بر عهده دارد و وظیفه ایجاد (Schema) و جدول‌ها را انجام می‌دهد.
  • Broker: مسئول مسیریابی درخواست‌ها (Query Routing) است.
  • Server: داده‌ها را ذخیره کرده و برای درخواست‌ها (Queries) ارائه می‌دهد.
  • Minion: وظایف پس‌زمینه‌ای مانند فشرده سازی داده ها و خلاصه سازی (Roll-up) داده‌ها را انجام می‌دهد.

هر سرویس را در یک پنجره ترمینال جداگانه یا به عنوان یک فرایند پس‌زمینه اجرا کنید.

کنترلر را با استفاده از دستور زیر راه‌اندازی کنید:

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.

مرحله ۵: پیکربندی Apache Pinot

Apache Pinot برای شروع فرایند دریافت و پرس‌وجو از داده‌ها، نیازمند یک طرحواره (schema) و پیکربندی جدول است. یک دایرکتوری برای ذخیره فایل‌های پیکربندی خود ایجاد کنید.

sudo mkdir $PINOT_HOME/configs

یک فایل Schema، به‌عنوان مثال my_schema.json، در دایرکتوری پیکربندی ایجاد کنید:

sudo nano $PINOT_HOME/configs/my_schema.json

برای اضافه کردن پیکربندی Schema، فایل 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 در دایرکتوری پیکربندی ایجاد کنید:

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 برای افزودن پیکربندی‌های Schema و جدول استفاده کنید:

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

مرحله ۶: بررسی راه اندازی Apache Pinot

یک مرورگر وب را باز کرده و به رابط کاربری کنترلر Pinot بروید تا بررسی کنید که Schema و جدول شما به درستی اضافه شده‌اند.

http://localhost:9000

اجرا و نصب Apache Pinot
اجرای Apache Pinot در لینوکس

می‌توانید داده‌ها را با استفاده از رابط کاربری جستجو (Query Console) موجود در UI کنترلر Pinot یا با استفاده از ابزار خط فرمان جستجوی Pinot جستجو کنید:

bin/pinot-admin.sh Query -brokerHost localhost -brokerPort 8099 -query "SELECT * FROM myTable LIMIT 10"
نتیجه گیری:

نصب Apache Pinot بر روی یک سیستم لینوکس شامل مراحل مختلفی است، از جمله نصب Java و Zookeeper، دانلود و استخراج باینری‌های Pinot، راه‌اندازی سرویس‌های Pinot، و پیکربندی Schema و جدول‌ها.

با دنبال کردن این راهنما، باید یک نمونه در حال اجرای Apache Pinot داشته باشید که آماده پاسخگویی به پرس‌وجوهای OLAP بلادرنگ است. برای سفارشی‌سازی و بهینه‌سازی‌های بیشتر، به مستندات رسمی Apache Pinot مراجعه کنید.

5/5 - (536 امتیاز)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت توسط reCAPTCHA و گوگل محافظت می‌شود حریم خصوصی و شرایط استفاده از خدمات اعمال.

The reCAPTCHA verification period has expired. Please reload the page.