ToB企服应用市场:ToB评测及商务社交产业平台

标题: Doris【部署 01】Linux部署MPP数据库Doris稳固版(下载+安装+毗连+测试) [打印本页]

作者: 羊蹓狼    时间: 2024-6-21 13:09
标题: Doris【部署 01】Linux部署MPP数据库Doris稳固版(下载+安装+毗连+测试)
本次安装测试的为稳固版2.0.8官方文档 https://doris.apache.org/zh-CN/docs/2.0/get-starting/quick-start 这个简短的指南将告诉你怎样下载 Doris 最新稳固版本,在单节点上安装并运行它,包括创建数据库、数据表、导入数据及查询等。

  
1. 环境


当前的环境信息:
  1. # 1.系统版本
  2. cat /proc/version
  3. Linux version 5.10.0-136.12.0.86.oe2203sp1.x86_64 (root@dc-64g.compass-ci) (gcc_old (GCC) 10.3.1, GNU ld (GNU Binutils) 2.37) #1 SMP Tue Dec 27 17:50:15 CST 2022
  4. # 2.JDK
  5. java -version
  6. java version "1.8.0_241"
  7. Java(TM) SE Runtime Environment (build 1.8.0_241-b07)
  8. Java HotSpot(TM) 64-Bit Server VM (build 25.241-b07, mixed mode)
  9. # JAVA_HOME
  10. echo $JAVA_HOME
  11. /usr/local/jdk1.8.0_241
  12. # 3.用户【使用doris用户无法创建文件夹 实例中使用的是root用户】
  13. sudo useradd -m -s /bin/bash doris
  14. sudo passwd doris
复制代码
2. 下载

从 https://doris.apache.org/zh-CN/download 下载相应的 Doris 安装包。

可以通过查察CPU的规格大概使用特定的命令来检测CPU是否支持AVX2指令集。具体方法如下:

需要注意的是,AVX2是一种对处理器性能要求较高的指令集,较旧的CPU大概不支持。假如您的CPU不支持AVX2,那么在运行一些需要该指令集的高性能应用时大概会遇到兼容性标题。
  1. cat /proc/cpuinfo | grep avx2
复制代码
解压重命名:
  1. # 1.下载 Doris 二进制安装包【也可以官网下载】
  2. wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-2.0.8-bin-x64.tar.gz
  3. # 2.解压安装包
  4. tar -zxvf apache-doris-2.0.8-bin-x64.tar.gz
  5. # 3.目录重命名为更为简单的 apache-doris
  6. mv apache-doris-2.0.8-bin-x64 apache-doris
复制代码
3. Doris组件设置

3.1 注意事项

内部默认接口:
Brokerbroker_ipc_port8000FE–>BROKERBE–>BROKERBroker上的thrift server用于吸收请求 3.2 FE


FE 的设置文件为 apache-doris/fe/conf/fe.conf。下面是一些需要关注的核心设置。除了 JAVA_HOME, 需要手动增长,并且指向你的 JDK8 运行环境。别的设置,可以使用默认值,即可支持单机快速体验。
  1. # 1.增加 JAVA_HOME 配置,指向 JDK8 的运行环境。
  2. JAVA_HOME=/usr/local/jdk1.8.0_241
  3. # 2.FE 监听 IP 的 CIDR 网段。默认设置为空,有 Doris 启动时自动选择一个可用网段。如有多个网段,需要指定一个网段,可以类似设置 priority_networks=92.168.0.0/24
  4. priority_networks =
  5. # 3.FE 元数据存放的目录,默认是在 DORIS_HOME 下的 doris-meta 目录。已经创建,可以更改为你的元数据存储路径。
  6. meta_dir = ${DORIS_HOME}/doris-meta
  7. # 4.端口配置
  8. http_port = 8034
  9. rpc_port = 9024
  10. query_port = 9034
  11. edit_log_port = 9014
复制代码
http_port8030FE<–>FE用户<–> FEFE上的http_server端口rpc_port9020BE–>FEFE<–>FEFE上thirt server端标语query_port9030用户<–> FEFE上的mysql server端口edit_log_port9010FE<–>FEFE上bdbje之间通信用的端口
在 apache-doris/fe 下,运行下面命令启动 FE。
  1. # 将 FE 启动成后台运行模式,这样确保退出终端后,进程依旧运行。
  2. ./bin/start_fe.sh --daemon
复制代码
  1. # 查看启动情况
  2. jps -l
  3. # 启动成功
  4. 3709409 org.apache.doris.DorisFE
复制代码
登录 FE Web 页面,地址为IP:8034,首页为:

用户名为root暗码为空,登录后:

3.3 BE

  1. # 设置最大虚拟块的大小
  2. sysctl -w vm.max_map_count=2000000
  3. # 关闭交换空间
  4. swapoff -a
复制代码

BE 的设置文件为 apache-doris/be/be.conf。下面是一些需要关注的核心设置。除了 JAVA_HOME, 需要手动增长,并且指向你的 JDK8 运行环境。别的设置,可以使用默认值,即可支持我们的快速体验。
  1. # 1.增加 JAVA_HOME 配置,指向 JDK8 的运行环境。
  2. JAVA_HOME=/usr/local/jdk1.8.0_241
  3. # 2.BE 监听 IP 的 CIDR 网段。默认设置为空,有 Doris 启动时自动选择一个可用网段。如有多个网段,需要指定一个网段,可以类似设置 priority_networks=192.168.0.0/24
  4. priority_networks =
  5. # 3.BE 数据存放的目录,默认是在 DORIS_HOME 下的 storage 下,默认已经创建,可以更改为你的数据存储路径
  6. storage_root_path = ${DORIS_HOME}/storage
  7. # 4.端口配置
  8. be_port = 9064
  9. webserver_port = 8044
  10. heartbeat_service_port = 9054
  11. brpc_port = 8064
复制代码
be_prot9060FE–>BEBE上thrift server的端口用于吸收来自FE 的请求webserver_port8040BE<–>FEBE上的http server端口heartbeat_service_port9050FE–>BEBE上心跳服务端口用于吸收来自FE的心跳brpc_prot8060FE<–>BEBE<–>BEBE上的brpc端口用于BE之间通信
在 apache-doris/be 下,运行下面命令启动 BE。
  1. # 将 BE 启动成后台运行模式,这样确保退出终端后,进程依旧运行。
  2. ./bin/start_be.sh --daemon
复制代码
  1. # 查看启动情况
  2. jps -l
  3. # 启动成功
  4. 3713696 DorisBE
复制代码
3.4 毗连 Doris FE

3.4.1 使用MySQL的Client

通过 MySQL 客户端来毗连 Doris FE,下载免安装的 MySQL 客户端。
  1. mysql -uroot -P9030 -h127.0.0.1
  2. -- 提示信息
  3. Welcome to the MySQL monitor.  Commands end with ; or \g.
  4. Your MySQL connection id is 2
  5. Server version: 5.7.99 Doris version doris-2.0.8-d083188cdd
复制代码
注意:

在 MySQL 客户端实行类似下面的 SQL,将 BE 添加到集群中
  1. ALTER SYSTEM ADD BACKEND "be_host_ip:heartbeat_service_port";
复制代码
注意:

在 MySQL 客户端,实行类似下面的 SQL,为 root 和 admin 用户设置新暗码
  1. mysql> SET PASSWORD FOR 'root' = PASSWORD('doris-root-password');
  2. Query OK, 0 rows affected (0.01 sec)
  3. mysql> SET PASSWORD FOR 'admin' = PASSWORD('doris-admin-password');
  4. Query OK, 0 rows affected (0.00 sec)
复制代码
root 和 admin 用户的区别:
root 和 admin 用户都属于 Doris 安装完默认存在的 2 个账户。其中 root 拥有整个集群的超级权限,可以对集群完成各种管理操作,比如添加节点,去除节点。admin 用户没有管理权限,是集群中的 Superuser,拥有除集群管理相关以外的所有权限。发起只有在需要对集群举行运维管理超级权限时才使用 root 权限。
3.4.2 使用FE WEB


4. 建库建表

4.1 毗连 Doris

  1. -- 使用 admin 账户连接 Doris FE
  2. mysql -uadmin -P9030 -h127.0.0.1
复制代码
提示:假如是在 FE 的同一台呆板上的 MySQL 客户端毗连 127.0.0.1, 不需要输入暗码。
4.2 建数据库和数据表

  1. create database demo;
  2. use demo;
  3. create table mytable
  4. (
  5.   k1 TINYINT,
  6.   k2 DECIMAL(10, 2) DEFAULT "10.05",
  7.   k3 CHAR(10) COMMENT "string column",
  8.   k4 INT NOT NULL DEFAULT "1" COMMENT "int column"
  9. )
  10. COMMENT "my first table"
  11. DISTRIBUTED BY HASH(k1) BUCKETS 1
  12. PROPERTIES ('replication_num' = '1');
复制代码


4.3 导入数据

4.3.1 使用接口导入

将以下示例数据,保存在当地的 data.csv:
  1. 1,0.14,a1,20
  2. 2,1.04,b2,21
  3. 3,3.14,c3,22
  4. 4,4.35,d4,23
复制代码
通过 Stream Load 方式将上面保存到文件中的数据导入到刚才创建的表里。
  1. curl --location-trusted -u admin:admin_password -T data.csv -H "column_separator:," http://127.0.0.1:8030/api/demo/mytable/_stream_load
复制代码

实行成功之后我们可以看到下面的返回信息:
  1. {
  2. "TxnId": 30,
  3. "Label": "a56d2861-303a-4b50-9907-238fea904363",
  4. "Comment": "",
  5. "TwoPhaseCommit": "false",
  6. "Status": "Success",
  7. "Message": "OK",
  8. "NumberTotalRows": 4,
  9. "NumberLoadedRows": 4,
  10. "NumberFilteredRows": 0,
  11. "NumberUnselectedRows": 0,
  12. "LoadBytes": 52,
  13. "LoadTimeMs": 206,
  14. "BeginTxnTimeMs": 13,
  15. "StreamLoadPutTimeMs": 141,
  16. "ReadDataTimeMs": 0,
  17. "WriteDataTimeMs": 7,
  18. "CommitAndPublishTimeMs": 42
  19. }
复制代码

4.3.2 使用Navicat毗连并导入






4.4 查询数据

在 MySQL 客户端中,实行如下 SQL,可以查询到刚才导入的数据:
  1. mysql> select * from mytable;
  2. +------+------+------+------+
  3. | k1   | k2   | k3   | k4   |
  4. +------+------+------+------+
  5. |    1 | 0.14 | a1   |   20 |
  6. |    2 | 1.04 | b2   |   21 |
  7. |    3 | 3.14 | c3   |   22 |
  8. |    4 | 4.35 | d4   |   23 |
  9. +------+------+------+------+
  10. 4 rows in set (0.01 sec)
复制代码

5. 制止 Doris

  1. # 停止 FE 在 apache-doris/fe 下,运行下面命令停止 FE。
  2. ./bin/stop_fe.sh
  3. # 停止 BE 在 apache-doris/be 下,运行下面命令停止 BE。
  4. ./bin/stop_be.sh
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4