Doris--基础--2.3--部署--单机部署

Doris–基础–2.3–部署–单机部署


前提

使用hd用户登陆
完成基础环境搭建
	https://blog.csdn.net/zhou920786312/article/details/118212302

1、介绍

1.1、主要内存

  1. 单机部署Doris
  2. 创建数据库、数据表、导入数据及查询

1.2、机器

主机名操作系统版本IPCPU内存硬盘
node01Centos/7.9192.168.187.1018C8G20G

2、公共操作

2.1、下载

https://doris.apache.org/zh-CN/download/

在这里插入图片描述

2.2、上传

cd 
# 创建目录
mkdir doris

在这里插入图片描述
在这里插入图片描述

2.3、解压

cd /home/hd/doris

# 解压到指定目录
tar zxf apache-doris-be-1.1.2-bin-x86_64-noavx2.tar.gz  
tar zxf  apache-doris-fe-1.1.2-bin.tar.gz 

# 重命名
mv apache-doris-be-1.1.2-bin-x86_64-noavx2 be
mv apache-doris-fe-1.1.2-bin fe

# 删除压缩包
rm -rf apache-doris-be-1.1.2-bin-x86_64-noavx2.tar.gz  
rm -rf apache-doris-fe-1.1.2-bin.tar.gz 

2.3、修改主机名(root用户)

hostnamectl set-hostname node01

2.4、设置系统参数(root用户)

vim /etc/security/limits.conf


* soft nofile 65535 
* hard nofile 65535 
* soft nproc  65535 
* hard nproc  65535

nofile 表示 每个进程可以打开的文件数的限制
nproc 表示 每个用户创建的进程数的限制

2.5、时钟同步(root用户)

Doris 的元数据要求时间精度要小于5000ms,所以所有集群所有机器要进行时钟同步,避免因为时钟问题引发的元数据不一致导致服务出现异常。

2.5.1、时间同步

# 安装ntpdate
yum install -y ntpdate

# 时间同步
ntpdate cn.pool.ntp.org

2.5.2、编辑计划任务,每小时做一次同步

[root@node01 ~]# crontab -e

内容

* */1 * * * /usr/sbin/ntpdate   cn.pool.ntp.org

2.5.3、重启crond服务

service crond restart

2.6、关闭交换分区(root用户)

# 临时禁用
swapoff  -a


# 永久禁用,/etc/fstab中注释掉swap那一行。 
sed -i 's/.*swap.*/#&/' /etc/fstab

2.7、配置hosts文件

cat >> /etc/hosts  <<EOF
192.168.187.101   node01
EOF

2.8、重启系统,让配置生效

reboot

3、FE安装

3.1、创建元数据目录

cd /home/hd/doris/fe
mkdir -p  ./data

3.2、修改配置

cd /home/hd/doris/fe/fe/conf
vim fe.conf

修改内容

# 必须配置,特别是当一台机器拥有多个IP地址的时候,我们要为 FE 指定唯一的IP地址。
# 这里假设你的节点 IP 是 192.168.187.101,那么我们可以通过掩码的方式配置为 192.168.187.101/24
# 具体配置可通过 ip a 命令查到
priority_networks=192.168.187.101/24


# 添加元数据目录
# 这里你可以不配置,默认是在你的Doris FE 安装目录下的 doris-meta
# 单独配置元数据目录,需要你提前创建好你指定的目录
meta_dir=/home/hd/doris/fe/data


# 修改JVM参数
JAVA_OPTS="-Xmx8192m -XX:+UseMembar -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xloggc:$DORIS_HOME/log/fe.gc.log.$DATE"

在这里插入图片描述

3.3、启动

# 启动
~/doris/fe/fe/bin/start_fe.sh --daemon

# 停止
~/doris/fe/fe/bin/stop_fe.sh 

 

3.4、查看是否安装成功

3.4.1、方式1

curl http://127.0.0.1:8030/api/bootstrap

在这里插入图片描述

3.4.2、方式2

http://192.168.187.101:8030/login

在这里插入图片描述

默认用户:root
默认密码:无

这是一个 Doris 的管理界面,只能拥有管理权限的用户才能登录,普通用户不能登录。

3.5、通过mysql客户端 连接FE(root)

3.5.1、下载mysql客户端

yum install mysql -y 

3.5.2、连接

mysql -uroot -P9030 -h127.0.0.1

在这里插入图片描述

说明

-uroot:
	1. 是内置的默认用户
	2. 是超级管理员用户
-P9030:
	1. 连接 Doris 的查询端口
	2. 默认端口是 9030
	3. 对应的是fe.conf里的 query_port
-h127.0.0.1:
	1.  FE的IP地址
	2.  如果你忘记 root 密码,可以通过这种方式不需要密码直接连接登录,进行对 root 密码进行重置

3.5.3、查看 FE 运行状态

show frontends\G;

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4、BE安装

4.1、创建数据目录

cd /home/hd/doris/be
mkdir -p  ./data

4.2、修改配置

cd /home/hd/doris/be/be/conf
vim be.conf

修改内容

# 必须配置,特别是当一台机器拥有多个IP地址的时候,我们要为 BE 指定唯一的IP地址。
# 这里假设你的节点 IP 是 192.168.187.101,那么我们可以通过掩码的方式配置为 192.168.187.101/24
# 具体配置可通过 ip a 命令查到
priority_networks=192.168.187.101/24
 


# 添加数据目录(建议放到根目录下)
# 默认目录在 BE安装目录的 storage 目录下
# BE 配置的存储目录必须先创建好
# 如果数据目录有多个,那么使用; 分隔,比如:storage_root_path=/home/hd/doris/be/data,10;/home/hd/doris/be/data2
# 上面的10表示/home/hd/doris/be/data目录的空间最大为10G

storage_root_path=/home/hd/doris/be/data

 

4.4、添加 BE 节点到集群

# 连接FE
mysql -uroot -P9030 -h127.0.0.1

# 执行下面的 SQL,将 BE 添加到集群中
# ALTER SYSTEM ADD BACKEND "be_host_ip:heartbeat_service_port";
ALTER SYSTEM ADD BACKEND "192.168.187.101:9050";

说明

be_host_ip:
	1. BE 的 IP 地址
	2. 和你在 be.conf 里的 priority_networks 匹配
heartbeat_service_port:
	1. BE 的心跳上报端口
	2. 和你在 be.conf 里的 heartbeat_service_port 匹配
	3. 默认是 9050。

4.3、启动

# 启动
~/doris/be/be/bin/start_be.sh --daemon

# 停止
~/doris/be/be/bin/stop_be.sh 

netstat -ntlp

在这里插入图片描述

4.5、查看 BE 运行状态

SHOW BACKENDS\G

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

5、测试(可以不做)

5.1、初始化数据

5.1.1、创建库和表

-- 创建一个数据库
create database demo;

-- 创建数据表
use demo;

CREATE TABLE IF NOT EXISTS demo.expamle_tbl
(
    `user_id` LARGEINT NOT NULL COMMENT "用户id",
    `date` DATE NOT NULL COMMENT "数据灌入日期时间",
    `city` VARCHAR(20) COMMENT "用户所在城市",
    `age` SMALLINT COMMENT "用户年龄",
    `sex` TINYINT COMMENT "用户性别",
    `last_visit_date` DATETIME REPLACE DEFAULT "1970-01-01 00:00:00" COMMENT "用户最后一次访问时间",
    `cost` BIGINT SUM DEFAULT "0" COMMENT "用户总消费",
    `max_dwell_time` INT MAX DEFAULT "0" COMMENT "用户最大停留时间",
    `min_dwell_time` INT MIN DEFAULT "99999" COMMENT "用户最小停留时间"
)
AGGREGATE KEY(`user_id`, `date`, `city`, `age`, `sex`)
DISTRIBUTED BY HASH(`user_id`) BUCKETS 1
PROPERTIES (
    "replication_allocation" = "tag.location.default: 1"
);

在这里插入图片描述

5.1.2、插入数据

insert into demo.expamle_tbl values(10000,'2017-10-01','北京',20,0,'2017-10-01 06:00:00',20,10,10);
insert into demo.expamle_tbl values(10001,'2017-10-01','北京',30,1,'2017-10-01 17:05:45',2,22,22); 
insert into demo.expamle_tbl values(10002,'2017-10-02','上海',20,1,'2017-10-02 12:59:12',200,5,5); 
insert into demo.expamle_tbl values(10003,'2017-10-02','广州',32,0,'2017-10-02 11:20:00',30,11,11); 
insert into demo.expamle_tbl values(10004,'2017-10-01','深圳',35,0,'2017-10-01 10:00:15',100,3,3); 



insert into demo.expamle_tbl values(10004,'2017-10-03','深圳',35,0,'2017-10-03 10:20:22',11,6,6);  
insert into demo.expamle_tbl values(10000,'2017-10-01','北京',20,0,'2017-10-01 07:00:00',15,2,2); 


在这里插入图片描述
在这里插入图片描述

5.2、查询分析

根据我们自己的需求对数据进行查询分析了

select * from expamle_tbl;
select * from expamle_tbl where city='上海';
select city, sum(cost) as total_cost from expamle_tbl group by city;

在这里插入图片描述

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值