Apache Doris安装与使用

社区推荐是自己编译,官网在这里,过程相当简单,就一句话 sh build.sh,但是在编译过程中容易遇到各种失败,例如Failed to download DataTables.zip during the compilation of the third-party library就需要更改下载数据源,更改完这个可能还有其他问题,这里就用已编译版本了,如果坚持要自己编译可以看这个大神的博客

Doris架构也很简单,分成FE(front end)和BE(back end):

FE 的磁盘空间主要用于存储元数据,包括日志和 image。通常从几百 MB 到几个 GB 不等

BE 的磁盘空间主要用于存放用户数据,总磁盘空间按用户总数据量 * 3(3副本)计算

一、安装

1.下载解压

百度开源社区选择对应的版本,下载解压

 wget https://palo-cloud-repo-bd.bd.bcebos.com/baidu-doris-release/DORIS-0.14.7-release-binary.tar.gz

tar -xvzf DORIS-0.14.7-release-binary.tar.gz

2.启动

(1)启动FE

先在FE目录下创建文件夹doris-meta,不然会报错退出

mkdir  /data/doris/fe/doris-meta

然后到fe的bin目录启动 ./start_fe.sh --daemon ,如果成功的话,jps有进程

有其他问题可以查看fe目录下log里面的fe.log,

例如我遇到端口占用问题,到fe的conf文件夹下更改一下端口就好了

[HttpServer$HttpServerThread.run():240] Fail to start FE query http server[port: 8030]

(2)连接FE

mysql -h 10.190.11.2 -P 9030 -uroot

注意这里的ip是内网ip哈,如果不知道的,输入ifconfig看一下。
然后在SQL界面添加BE

ALTER SYSTEM ADD BACKEND "10.190.11.2:9050";

然后退出。

(3)启动BE

在be文件夹下面创建storage文件夹 mkdir  /data/doris/be/storage

到be文件夹的bin目录 ./start_be.sh --daemon

(4)验证

重新连接

mysql -h 10.190.11.2 -P 9030 -uroot

SHOW PROC '/backends';

看一下Alive那边是不是true,不是的话看看日志。

3.访问网页端

输入ip:8030可以访问web端

这里查看表结构信息,日志、活动的链接,管理起来比较方便 

二、使用

1.使用其实就是各种SQL的事情了。比如建个库,建个表

CREATE TABLE table1
(
    stat_time datetime,
    cnt bigint 
)
DISTRIBUTED BY HASH(stat_time) BUCKETS 10
PROPERTIES("replication_num" = "1");

2.导入mysql数据

方式一:通过FLINK CDC实时同步Mysql数据到Doris

方式二:通过外部表方式导入

Doris通过ODBC协议可以访问外部表,从而让它具有访问各种数据库的能力。具体可以参考这里

2.1安装mysql odbc驱动

驱动直接去官网下载就好了,先安装UnixODBC再安装官网的ODBC,不然会报错

yum install unixODBC -y

rpm -ivh mysql-connector-odbc-8.0.26-1.el8.x86_64.rpm

2.2配置BE的ODBC信息

vim /opt/doris/be/conf/odbcinst.ini

[MySQL Driver]
 Description     = ODBC for MySQL
 Driver          = /usr/lib64/libmyodbc8a.so
 FileUsage       = 1

配置完成重启BE

2.4 Doris使用ODBC访问mysql表

 CREATE EXTERNAL TABLE `ext_mysql` (
   `id` int,
   `name` char(20) 

 ) ENGINE=ODBC
 COMMENT "ODBC"
 PROPERTIES (
 "host" = "10.190.11.2",
 "port" = "3306",
 "user" = "root",
 "password" = "123456",
 "database" = "zh",
 "table" = "flink_test",
 "driver" = "MySQL Driver",  --注意这里的名称和odbcinst.ini里的mysql[]里的名称一致
 "odbc_type" = "mysql"
 );

然后select * from ext_mysql看看有没有成功

三、报错解决:

1如果遇到报错 connect refuse可以到be的log下面看be.info具体报错信息:

 File descriptor number is less than 60000. Please use (ulimit -n) to set a value equal or greater than 60000
W0702 10:53:45.039664 1465806 storage_engine.cpp:174] check fd number failed, error: Internal error: file descriptors limit is too small
W0702 10:53:45.039690 1465806 storage_engine.cpp:103] open engine failed, error: Internal error: file descriptors limit is too small

处理方法:

ulimit -n 65535

或者修改配置文件: /etc/security/limits.conf, 添加

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

2如果遇到报错

ERROR 2003 (HY000): Can't connect to MySQL server on '10.190.11.2:9030' (111) 可以到fe的log 文件夹看到具体报错:

INFO (UNKNOWN 192.168.49.1_9010_1624978186116(-1)|1) [Catalog.waitForReady():804] wait catalog to be ready. FE type: UNKNOWN. is ready: false

处理方法:

Master节点的FE的配置文件fe.conf文件添加metadata_failure_recovery = true

然后重启fe之后再把这句话注释掉

具体可以看这里

参考:Apache Doris 文档(201812)
 

<think>好的,我现在需要帮助用户了解如何安装Apache Doris。首先,我得回忆一下自己之前学过的相关知识,或者查找一些资料确保步骤正确。用户可能对Doris不太熟悉,所以需要分步骤详细说明,同时注意用中文,避免专业术语过多导致理解困难。 首先,我应该介绍Apache Doris是什么,让用户有个基本认识。然后进入安装前的准备,比如系统要求、依赖环境,比如Java、CPU、内存、磁盘这些。可能需要提到支持的操作系统,如CentOS、Ubuntu等。 接下来,安装步骤大概分为几个部分:下载解压、配置FE和BE、启动服务、集群部署(如果需要)、验证安装。每个部分都需要详细说明,特别是配置文件的部分,用户可能会在这遇到问题,比如需要修改哪些参数,如何修改。 需要注意的常见问题可能包括端口冲突,比如8030、9030等是否被占用;硬件资源不足,比如内存不够导致启动失败;防火墙设置,需要开放相关端口。此外,如果用户需要集群部署,要说明如何添加多个FE和BE节点,如何通过MySQL客户端进行验证。 可能用户还会问如何快速体验,这时候可以推荐使用Docker方式,虽然不适合生产,但方便测试。另外,后续的配置调优和监控也是用户可能关心的,但安装部分需要先讲清楚。 需要检查是否有遗漏的步骤,比如环境变量设置,或者权限问题,比如目录的读写权限。还有,启动顺序是否有要求,比如先启动FE再启动BE。另外,提醒用户查看日志文件,以便排查启动失败的原因。 最后,确保语言口语化,结构清晰,分点说明,避免大段文字。可能需要用示例代码块展示命令和配置修改,但用户要求使用$...$格式,所以要注意转换。例如,命令行代码前加上适当的标记,但根据系统指令,数学表达式才需要用$符号,其他代码块可能用反引号。 总结一下,回答的结构应该是: 1. 简介Apache Doris 2. 安装前准备 3. 安装步骤(单节点) 4. 集群部署(可选) 5. 验证安装 6. 快速体验方式(Docker) 7. 注意事项和常见问题 需要确保每个步骤清晰,命令准确,特别是配置文件的具体修改位置和参数。可能还需要给出官网链接,方便用户查阅最新文档。同时,提醒用户根据实际环境调整配置,如JVM内存设置、存储路径等。</think>以下为Apache Doris安装指南,采用分步说明注意事项结合的方式,适合新手快速部署: --- ### 一、Apache Doris简介 Apache Doris 是一款高性能、实时分析型MPP数据库,支持$10^{3}$~$10^{4}$节点规模的PB级数据,常用于实时报表、即席查询等场景,兼容MySQL协议。 --- ### 二、安装前准备 1. **系统要求** - 推荐Linux系统(CentOS 7+/Ubuntu 18.04+) - JDK 8+(建议OpenJDK 11) - 内存:建议FE节点8GB+,BE节点16GB+ - 磁盘:BE节点需SSD,预留数据存储空间 2. **依赖检查** ```bash # 检查Java版本 java -version # 关闭防火墙或开放端口(8030, 9030, 9040等) ``` --- ### 三、单节点安装步骤 #### 1. 下载并解压 ```bash # 从官网下载最新稳定版(以2.0.0为例) wget https://doris.apache.org/downloads/downloads.html tar -zxvf apache-doris-2.0.0-bin-x64.tar.gz cd apache-doris-2.0.0 ``` #### 2. 配置Frontend (FE) - **修改FE配置文件** `fe/conf/fe.conf` ```properties priority_networks = 192.168.1.100/24 # 绑定本机内网IP meta_dir = /path/to/doris-meta # 元数据存储路径(需提前创建) ``` - **启动FE** ```bash ./fe/bin/start_fe.sh --daemon ``` #### 3. 配置Backend (BE) - **修改BE配置文件** `be/conf/be.conf` ```properties priority_networks = 192.168.1.100/24 storage_root_path = /path/to/doris-storage # 数据存储路径(需SSD,容量充足) ``` - **启动BE** ```bash ./be/bin/start_be.sh --daemon ``` #### 4. 注册BE节点到FE ```bash # 使用MySQL客户端连接FE mysql -h 127.0.0.1 -P 9030 -uroot # 执行添加BE命令 ALTER SYSTEM ADD BACKEND "192.168.1.100:9050"; ``` --- ### 四、集群部署(扩展) 1. **添加FE节点** - 重复FE安装步骤,启动时指定现有集群: ```bash ./start_fe.sh --helper 192.168.1.100:9030 --daemon ``` 2. **添加BE节点** - 新节点安装BE后,通过MySQL客户端注册: ```sql ALTER SYSTEM ADD BACKEND "new_be_ip:9050"; ``` --- ### 五、验证安装 ```bash # 连接FE查询节点状态 mysql -h 127.0.0.1 -P 9030 -uroot SHOW PROC '/frontends'; -- 查看FE状态 SHOW PROC '/backends'; -- 查看BE状态 ``` --- ### 六、快速体验(Docker方式) ```bash # 拉取官方镜像 docker pull apachedoris/doris:latest # 启动FE和BE容器(详见官网文档) ``` --- ### 注意事项 1. **端口冲突**:确保8030(FE HTTP)、9030(FE MySQL)、9060(BE)等端口未被占用 2. **元数据备份**:生产环境需定期备份`meta_dir`目录 3. **硬件要求**:BE节点磁盘建议RAID 0+SSD,单节点多盘可配置多个`storage_root_path` 4. **常见错误**: - BE注册失败 → 检查FE/BE的`priority_networks`配置是否一致 - 启动报错`java.lang.OutOfMemoryError` → 调整`fe.conf`中的`JAVA_OPTS`内存参数 --- 参考:官方安装文档 https://doris.apache.org/docs/install/
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值