马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
Doris 2.x 安装及使用
简介
Apache Doris 是一款基于 MPP 架构的高性能、实时的分析型数据库,以高效、简朴、统一的特点被人们所熟知,仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的点查询场景,也能支持高吞吐的复杂分析场景。基于此,Apache Doris 可以或许较好的满意报表分析、即席查询、统一数仓构建、湖仓一体等使用场景,用户可以在此之上构建大屏看板、用户举动分析、AB 实行平台、日志检索分析、用户画像分析、订单分析等应用。
该方案并非官方推荐的自己制作镜像模式,正规模式及方案请查看官网:
https://doris.incubator.apache.org/zh-CN/docs/2.0/install/source-install/compilation-with-docker
预备环境及文件
官方要求修改内核参数
- sudo sysctl -w vm.max_map_count=2000000
- sysctl vm.max_map_count
复制代码 下载 doris 及 mysql 连接工具
doris 2.16 地址::https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-2.1.6-bin-x64.tar.gz
mysql 客户端地址: https://doris-build-hk.oss-cn-hongkong.aliyuncs.com/mysql-client/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
根据自己的要求下载 doris 对应版本就可。
拉取 doker 环境,使用官方 2.0 的环境皆适配 doris 不同版本
- # cf-workers-docker-io1-ai1.pages.dev 是个人地址
- docker pull cf-workers-docker-io1-ai1.pages.dev/apache/doris:build-env-for-2.0 /bin/bash
复制代码 上传至宿主机
- # 创建文件目录
- mkdir /opt/install
- # window 使用工具上传,linux 可以使用 scp 上传
- scp /opt/install/xxx.tar root@x.x.x.x:/opt/install/
复制代码 安装及摆设
构建 docker 环境
- # 9030 为 doris 数据库地址,8030 为数据库管理页面 web 端口,可修改为其他
- docker run -d -it --name=doris -p 9030:9030 -p 8030:8030
- cf-workers-docker-io1-ai1.pages.dev/apache/doris:build-env-for-2.0
- /bin/bash
复制代码 复制文件至 docker 中并进入容器解压
- docker cp /opt/install/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz doris:/opt
- docker cp /opt/install/apache-doris-2.1.6-bin-x64.tar.gz doris:/opt
- # 进入容器
- docker exec -it doris /bin/bash
- # 解压文件
- cd /opt
- tar -xvf apache-doris-2.1.6-bin-x64.tar.gz
- tar -xzvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
- # 获取本机容器内网ip地址,需修改到配置文件中。
- hostname -i
复制代码 设置 FE
- cd /opt/apache-doris-2.1.6-bin-x64/fe
- vi conf/fe.conf
- # 在配置文件中找到 priority_networks 后将注释打开,替换为自己的内网 ip
- priority_networks = 自己的内网 ip/24
- # 启动 FE
- ./bin/start_fe.sh --daemon
- # 测试时候成功
- curl http://127.0.0.1:8030/api/bootstrap
复制代码 设置 BE
- cd /opt//apache-doris-2.1.6-bin-x64/be
- vi conf/be.conf
- # 在配置文件中找到 priority_networks 后将注释打开,替换为自己的内网 ip
- priority_networks = 自己的内网 ip/24
- # 启动 FE
- ./bin/start_be.sh --daemon
复制代码 将 be 添加至 fe ,测试 mysql 连接工具的作用就有了
- # 默认配置账号 root 和 admin 都没有密码
- /opt/mysql-5.7.22-linux-glibc2.12-x86_64/bin/mysql -uroot -P9030 -h127.0.0.1 --skip-ssl
- # 将BE节点加入到集群中, 9050 不可更改,为内置端口
- ALTER SYSTEM ADD BACKEND "内网 ip 地址:9050";
- # 显示doris后端详情
- SHOW BACKENDS\G
- # 修改 admin 密码
- SET PASSWORD FOR 'admin'= PASSWORD('你的密码');
复制代码 将 be 及 fe 启动参加自启动文件中,方便 docker restart 时重启 doris
- vim /root/.bashrc
- # 在最后一行加入
- /opt/apache-doris-2.1.6-bin-x64/fe/bin/start_fe.sh --daemon
- /opt/apache-doris-2.1.6-bin-x64/be/bin/start_be.sh --daemon
复制代码 测试及使用
至此,可使用 mysql 工具进行连接,如: navicat 或 mysql 其他工具。
- # 进入客户端
- /opt/mysql-5.7.22-linux-glibc2.12-x86_64/bin/mysql -uroot -P9030 -h127.0.0.1 --skip-ssl
- # 创建测试库
- create database demo;
- use demo;
- # 创建测试表,语法与 mysql 高度相似,并不完全一样
- CREATE TABLE `demo`.`bs_pat_info` (
- `id` BIGINT NOT NULL AUTO_INCREMENT,
- `base_id` VARCHAR(50) NOT NULL COMMENT 'user id',
- `pat_name` VARCHAR(100) NULL DEFAULT NULL,
- `record_time` DATETIME NOT NULL,
- `identify_number` VARCHAR(2000) NULL DEFAULT NULL,
- `address` VARCHAR(2000) NULL DEFAULT NULL,
- `delete_flag` VARCHAR(5) NULL DEFAULT NULL
- ) ENGINE=OLAP
- UNIQUE KEY(`id`)
- DISTRIBUTED BY HASH(`id`) BUCKETS 10
- PROPERTIES (
- "replication_allocation" = "tag.location.default: 1"
- );
- # 插入数据
- INSERT INTO `demo`.`bs_pat_info`(`id`, `base_id`, `pat_name`, `record_time`, `identify_number`, `address`, `delete_flag`) VALUES (27622, '80472151', '俞强', '2024-08-26 08:59:49', '370201196803125600', '聊城市御景王宅3号楼303', '0');
- # 附带 Doris 删除重复数据语句,根据 base_id 分组保留最新一条,删除旧数据
- DELETE FROM bs_pat_info t1 USING (select id from `bs_pat_info` where id not in(select id from (SELECT id, ROW_NUMBER () OVER ( PARTITION BY base_id ORDER BY record_time, id DESC ) AS rn FROM `bs_pat_info`) t where t.rn = 1)) t2 WHERE t1.id = t2.id or delete_flag = '1';
复制代码 Doris 账号及暗码
用户暗码admin空root空
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |