成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ARM架構下部署StarRocks3,你學會了嗎?

開發 架構
在科技高速發展的當下,ARM 架構由于其開源性和功耗上的優異表現正在受到越來越多的關注,大數據相關的各種組件也紛紛推出了基于 ARM 架構的版本用于更好的支持用戶體驗。由于 StarRocks3 并無官方的 ARM 版本,通過查詢網上資料也并無詳細完整的相關文檔,所以本文也僅是利用 Docker 鏡像最終實現的部署方案,從運行的結果來看符合預期。

一、什么是 StarRocks

StarRocks 是一款新一代的極速全場景 MPP(Massively Parallel Processing)數據庫,通過向量化、MPP 架構、CBO、智能物化視圖、可實時更新的列式存儲引擎等技術實現的新一代大數據數據庫,同時它兼容 Mysql5.7 的協議,支持標準 SQL 語法,極大降低了使用成本。作為大數據數據庫,StarRocks 支持 Hive 作為外部 catalog 實現與 Hadoop 的直接對接,同時也支持將數據直接存儲用于高效計算。

二、X86 和 ARM

眾所周知,當前 CPU 的主流系統架構分為 X86 架構和 ARM 架構。其中 X86 架構的所有權歸屬于 Intel 公司,而 ARM 架構則是開源的。

X86 架構的系統推出已經近 30 年,在這 30 年來互聯網領域發展飛快,X86 架構也伴隨著互聯網的騰飛經過了高速發展的黃金時期,用戶的應用、軟件配套、軟件開發等工具的配套和兼容都非常成熟,但由于 X86 架構的所有權問題,所有使用該架構的用戶都需向 Intel 公司付費方可使用。

而開源的 ARM 架構在近年來尤為受到關注,面對當前日益復雜的國際環境以及基于 ARM 架構本身在功耗上的優異表現,國內外大量企業自研基于 ARM 架構的服務器芯片,越來越多的應用和軟件配套也適配 ARM 架構。

三、StarRocks 部署

StarRocks 部署需單獨部署 FE 節點和 BE 節點,其中 FE 節點是 StarRocks 的前端節點,負責管理元數據,管理客戶端連接,進行查詢規劃,查詢調度等;BE 節點是 StarRocks 的后端節點,負責數據存儲、SQL 執行等。

當前,由于 StarRocks 的 BE 節點部署強依賴 X86 架構下的 AVX2 指令集(StarRocks 向量化引擎強依賴),所以當前 StarRocks 官方針對 ARM 架構更多的是建議使用 Docker 部署或修改編譯腳本關閉 AVX2 指令集重新打包部署,并未提供官方的穩定版本。針對當前情況以及實際的業務發展需求,我們評估決定使用官方提供的 Docker 鏡像內的配置文件進行 ARM 架構下的部署。

本文的 StarRocks3 部署是基于已搭建完成 Hadoop3 集群條件下進行,若還未搭建 Hadoop 集群,請先搭建 Hadoop 集群再進行后續部署。

3.1 Docker 鏡像內配置文件獲取

使用官方提供的 starrocks/artifacts-centos7:latest 鏡像內文件進行部署。

3.1.1 拉取鏡像

# 拉取鏡像
docker pull starrocks/artifacts-centos7:latest

# 啟動鏡像
docker run -p 9030:9030 -p 8030:8030 -p 8040:8040 --privileged=true -itd --name starrocks-art starrocks/artifacts-centos7

3.1.2 鏡像內文件導出

鏡像內文件均在/release 目錄下

# 進入鏡像內
docker exec -it starrocks-art sh
mkdir starRocks
cp -r be_artifacts/be starRocks/
cp -r fe_artifacts/fe starRocks/
cp -r broker_artifacts/apache_hdfs_broker starRocks/

# 文件壓縮
tar -zcvf starRocks.tar.gz starRocks/

# 文件導出
docker cp artifacts-art:/release/starRocks.tar.gz /usr/local/

3.2 節點部署

部署需要 4 臺機器,1 臺機器部署 FE,3 臺機器部署 BE。接下去以 node01、node02、node03、node04 區分。

StarRocks 文件默認安裝路徑為 /opt/starRocks。

3.2.1 apache_hdfs_borker 配置

替換該目錄下的 hdfs-site.xml 文件。

cp /opt/hadoop3/etc/hadoop/hdfs-site.xml /opt/starRocks/apache_hdfs_borker/

3.2.2 FE 節點部署

在 node01 節點部署 FE,同時在該節點需搭建 Mysql 用于連接測試搭建完成后的 StarRocks。

1、復制 core-site.xml、hdfs-site.xml 和 hive-site.xml 至 /fe/conf 目錄下

cp /opt/hadoop3/etc/hadoop/core-site.xml /opt/starRocks/fe/conf/
cp /opt/hadoop3/etc/hadoop/hdfs-site.xml /opt/starRocks/fe/conf/
cp /opt/hive/conf/hive-site.xml /opt/starRocks/fe/conf/

2、 修改 fe.conf 文件

# 新建 meta 文件夾
cd /opt/starRocks/fe
mkdir meta

vim conf/fe.conf

# 添加
meta_dir=/opt/starRocks/fe/meta
priority_networks=node01/24  
enable_udf=true

3、start_fe.sh 腳本修改

由于 StarRocks3 版本強依賴 JAVA11 以上版本,但搭建的 Hadoop3 集群默認使用 JAVA8 的版本,所以需手動指定 StarRocks3 使用的 JAVA 版本,本文使用 zulu11.66.19-ca-jdk11.0.20.1-linux_aarch64 版本。

# 第一行添加 JAVA_HOME
export JAVA_HOME=/{JAVA 安裝目錄}/zulu11.66.19-ca-jdk11.0.20.1-linux_aarch64

# 第 108 行需手動修改 JAVA_VERSION
JAVA_VERSION=11

4、FE 節點啟動

cd /opt/starRocks/fe/bin
./start_fe.sh --daemon

5、驗證 FE 啟動成功

# 使用 jps 檢查進程,如果沒有 StarRocksFE 進程,可在 /opt/starRocks/log 下查看 fe.log
jps
Jps
StarRocksFE

6、FE 節點日志自動清理

vim /usr/local/bin/auto-del-3-days-ago-log.sh 

#!/bin/sh
find /opt/starRocks/fe/log/ -mtime +3 -name "fe.*" -exec rm -rf {} \;

7、FE 節點服務掛斷拉起腳本

vim /usr/local/bin/monitor_starrocks_fe.sh

#!/bin/sh
pidFE=`ps aux | grep 'StarRocksFE' | grep -v 'grep' | awk '{print $2}'`
if [[ !$pidFE ]];
then
   sh /opt/starRocks/fe/bin/start_fe.sh --daemon
fi

8、bash 賦權及定時任務設置

chmod +x /usr/local/bin/auto-del-3-days-ago-log.sh
chmod +x /usr/local/bin/monitor_starrocks_fe.sh

10 0 * * * /bin/bash /usr/local/bin/auto-del-3-days-ago-log.sh >/dev/null 2>&1
*/2 * * * * /bin/bash /usr/local/bin/monitor_starrocks_fe.sh >/dev/null 2>&1

3.2.3 BE 節點部署

1、替換 starrocks/allin1-ubuntu:latest 鏡像內導出文件的 be 目錄,使用 starrocks/artifacts-centos7:latest 鏡像導出的 be 文件。

2、復制 core-site.xml、hdfs-site.xml 和 hive-site.xml 至 /be/conf 目錄下。

cp /opt/hadoop3/etc/hadoop/core-site.xml /opt/starRocks/be/conf/
cp /opt/hadoop3/etc/hadoop/hdfs-site.xml /opt/starRocks/fe/conf/
cp /opt/hive/conf/hive-site.xml /opt/starRocks/be/conf/

3、修改 be.conf 文件

priority_networks 需修改為各 BE 節點的 ip 地址。

cd /opt/starRocks/be
mkdir data

vim conf/be.conf

priority_networks=node02/24
load_process_max_memory_limit_percent=50
mem_limit=75%
storage_root_path=/opt/starRocks/be/data

4、修改 start_be.sh 文件

cd /opt/starRocks/be/bin

vim start_be.sh
export JAVA_HOME=/{JAVA 安裝目錄}/zulu11.66.19-ca-jdk11.0.20.1-linux_aarch64

5、BE 節點啟動

各個節點需單獨啟動

cd /opt/starRocks/be/bin
./start_be.sh --daemon

6、驗證 BE 啟動成功

ps aux | grep starrocks_be 
# 會看到一個 starrocks_be 的進程,如果沒有可在 /opt/starRocks/be/log 下查看 be.INFO 日志

7、BE 節點日志自動清理

vim /usr/local/bin/auto-del-3-days-ago-log.sh 

#!/bin/sh
find /opt/starRocks/be/log/ -mtime +3 -name "be.*" -exec rm -rf {} \;

8、BE 節點服務掛斷拉起腳本

vim /usr/local/bin/monitor_be.sh

#!/bin/sh
pidBE=`ps aux | grep 'starrocks_be' | grep -v 'grep' | awk '{print $2}'`
if [[ !$pidBE ]];
then
   sh /opt/starRocks/be/bin/start_be.sh --daemon
fi

9、bash 賦權及定時任務設置

chmod +x /usr/local/bin/auto-del-3-days-ago-log.sh
chmod +x /usr/local/bin/monitor_starrocks_be.sh

10 0 * * * /bin/bash /usr/local/bin/auto-del-3-days-ago-log.sh >/dev/null 2>&1
*/2 * * * * /bin/bash /usr/local/bin/monitor_starrocks_be.sh >/dev/null 2

3.3 部署驗證

FE 和 BE 節點均部署完成并啟動完成后,在 FE 節點通過 Mysql 客戶端進行部署驗證及相關設置。

1、驗證 FE 可用

# FE 節點地址,初始無密碼,非 3306 端口需指定地址 127.0.0.1
mysql -h 127.0.0.1 -P9030 -uroot -p

2、添加 BE 節點

以下操作均已完成第一步,成功連接 FE。

# 添加 BE,所有 BE 都添加
ALTER SYSTEM ADD BACKEND "node02:9050";
ALTER SYSTEM ADD BACKEND "node03:9050";
ALTER SYSTEM ADD BACKEND "node04:9050";

# 檢查 BE, 所有 Alive: true,否則 BE 有問題
SHOW PROC '/backends'\G
# 檢查 FE 
show proc '/frontends'\G

# 設置密碼
SET PASSWORD for root = PASSWORD('密碼');

# 按需選擇是否創建初始數據庫,僅用作示例新建 ads 庫
create database ads;

# 按需選擇是否創建 Hive 外部 catalog
CREATE EXTERNAL CATALOG hive
PROPERTIES ("type" = "hive","hive.metastore.uris"="thrift://{hivemetastore}");

# 檢查 catalog
show catalogs;

# 驗證 Hive catalog 使用是否正常

四、總結

本文講解了如何在 ARM 架構下部署 StarRocks3 的詳細步驟。

在科技高速發展的當下,ARM 架構由于其開源性和功耗上的優異表現正在受到越來越多的關注,大數據相關的各種組件也紛紛推出了基于 ARM 架構的版本用于更好的支持用戶體驗。由于 StarRocks3 并無官方的 ARM 版本,通過查詢網上資料也并無詳細完整的相關文檔,所以本文也僅是利用 Docker 鏡像最終實現的部署方案,從運行的結果來看符合預期。

責任編輯:武曉燕 來源: 政采云技術
相關推薦

2022-12-08 19:27:38

2024-01-19 08:25:38

死鎖Java通信

2024-02-04 00:00:00

Effect數據組件

2023-07-26 13:11:21

ChatGPT平臺工具

2023-01-10 08:43:15

定義DDD架構

2023-08-08 08:23:08

Spring日志?線程池

2024-01-02 07:04:23

2024-10-14 09:34:39

vue3通信emit

2023-10-10 11:04:11

Rust難點內存

2024-05-06 00:00:00

InnoDBView隔離

2024-07-31 08:39:45

Git命令暫存區

2023-01-30 09:01:54

圖表指南圖形化

2024-08-06 09:47:57

2022-07-08 09:27:48

CSSIFC模型

2023-12-12 08:02:10

2024-09-09 09:00:12

架構設計算法

2024-01-26 08:24:16

Dalvik架構ART

2024-01-02 12:05:26

Java并發編程

2023-08-01 12:51:18

WebGPT機器學習模型

2023-11-06 07:25:51

Spring配置應用程序
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品国产鲁一鲁一区二区张丽 | 亚洲一区二区三区国产 | 欧美黑人体内she精在线观看 | 91精品国产综合久久久久久蜜臀 | 欧美精品久久久久 | 毛片日韩| 欧美a在线 | 亚洲成人av一区二区 | 羞羞视频一区二区 | 亚洲欧洲精品一区 | 欧美色欧美亚洲另类七区 | 一区二区亚洲 | 日韩中文字幕免费在线观看 | 国产一区二区三区视频免费观看 | 精品视频导航 | 亚洲一区不卡在线 | 亚洲精品国产一区 | 国产精品日韩在线 | 国产高清一二三区 | 日本中文字幕视频 | 日韩精品一区二区三区免费观看 | 国产精品一区在线观看 | av免费网站在线 | 91国产在线视频在线 | 亚洲精品一区二三区不卡 | 视频一区在线观看 | 99免费视频 | 亚洲色在线视频 | 国产精品一区二区在线 | 日本在线观看视频 | 国产激情一区二区三区 | 成人欧美一区二区三区在线播放 | 欧美日韩中文字幕在线 | 狠狠干2020 | 国产成人免费视频网站视频社区 | 欧美中文字幕一区二区三区亚洲 | 国产精品久久久久久吹潮 | 免费在线成人网 | 国产精品入口 | 中文字幕一区在线 | 毛片久久久|