收集云服务器优惠信息
记录云服务器使用心得

Linux系统安装Apache Pinot教程 满足你的数据分析需求

Apache Pinot是一个实时分布式OLAP数据存储,旨在以低延迟响应OLAP查询,它通常与Apache Kafka结合使用,用于实时数据提取和分析。

在本文中,小编主要介绍在Linux系统上安装Apache Pinot所需的步骤,主要包括下载和提取软件、设置配置以及启动服务,一起来看看吧。

先决条件

在安装Apache Pinot之前,请确保系统满足以下先决条件:

  • 需要Java开发工具包(JDK)8或更高版本才能运行。
  • Apache Pinot 使用Apache Zookeeper进行集群管理。
  • 确保设置防火墙允许Pinot和Zookeeper通信所需的端口。

Apache Pinot

步骤1:在Linux中安装Java

如果你的系统上没有安装Java ,可以从Oracle官方网站下载并安装它。

对于大多数Linux发行版,可以使用包管理器来安装Java。例如在基于Debian的系统上,可以使用以下命令:

sudo apt-get install default-jdk

在基于Red Hat的系统上,可以使用以下命令:

sudo dnf install java-21-openjdk -y

安装完成后,可以通过运行以下命令来验证Java版本:

java -version

在Linux中检查Java版本

步骤2:在Linux中安装Zookeeper

Apache Pinot需要Zookeeper来进行集群管理,因此使用以下命令进行安装:

sudo apt install zookeeperd [基于Debian系统] 
sudo dnf install zookeeperd [基于RHEL系统]

安装后,启动、自动启用并验证Zookeeper服务的状态:

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

在Linux中检查Zookeeper

步骤3:在Linux中安装Apache Pinot

从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解压到所需位置,并设置环境变量,以便更轻松地访问.bashrc.profile文件中的Pinot二进制文件。

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:执行数据压缩和汇总等后台任务。

接下来需要在单独的终端窗口或作为后台进程启动每个服务,详细的命令如下所述。

启动Controller:

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

启动Broker:

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

启动Server:

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

启动Minion:

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

在configs目录中创建一个模式文件,例如my_schema.json

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"
    }
  ]
}

接下来,在configs目录中创建一个表配置文件,例如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管理工具添加你的模式和表配置:

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设置

打开Web浏览器并转到Pinot Controller界面以验证你的架构和表是否已成功添加:

http://localhost:9000

在Linux中运行Apache Pinot

另外,你还可以使用控制器UI中提供的Pinot查询控制台或使用Pinot查询命令行工具查询数据:

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

结论

在Linux系统上安装Apache Pinot涉及几个步骤,具体包括安装Java和Zookeeper、下载和提取Pinot二进制文件、启动 Pinot服务以及配置模式和表。

所以,在Linux上安装Apache Pinot之后,我们可以利用其强大的实时分析能力、高性能和扩展性,满足各种数据分析需求,同时借助开源社区的支持和Linux系统的优势,实现更高的成本效益。

赞(0)
网站声明:本文内容由趣云笔记原创,部分资源收集于网络,如有侵权请联系企鹅:2472781824删除。
文章名称:《Linux系统安装Apache Pinot教程 满足你的数据分析需求》
文章链接:https://www.ecscoupon.com/6719.html
本站资源仅供个人学习交流,未经允许不得转载,更不允许用于商业用途。如需转载,请注明来源,感谢理解!