直接上docker-compose.yml!!!
services:
fe:
image: apache/doris:fe-ubuntu-2.1.7
container_name: doris-fe
hostname: fe
environment:
- FE_SERVERS=fe1:172.30.0.2:9010
- MASTER_FE_IP=172.30.0.2
- FE_ID=1
ports:
- "8030:8030" # FE HTTP端口
- "9020:9020" # FE BRPC端口
- "9030:9030" # MySQL协议端口
- "9010:9010" # FE thrift端口
volumes:
- ./fe-data:/opt/apache-doris/fe/doris-meta # 元数据持久化
- ./fe-log:/opt/apache-doris/fe/log # 日志持久化
networks:
doris-net:
ipv4_address: 172.30.0.2
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8030/api/health"]
interval: 30s
timeout: 10s
retries: 5
be:
image: apache/doris:be-ubuntu-2.1.7
container_name: doris-be
hostname: be
environment:
- FE_SERVERS=fe1:172.30.0.2:9010
- MASTER_FE_IP=172.30.0.2
- BE_ADDR=172.30.0.3:9050
- BE_HEARTBEAT_PORT=9050
- CURRENT_BE_IP=172.30.0.3
- CURRENT_BE_PORT=9050
ports:
- "8040:8040" # 心跳服务端口
- "9050:9050" # BE thrift端口
- "9060:9060" # BE BRPC端口
- "8060:8060" # BE HTTP端口
volumes:
- ./be-data:/opt/apache-doris/be/storage # 数据存储持久化
- ./be-log:/opt/apache-doris/be/log # 日志持久化
networks:
doris-net:
ipv4_address: 172.30.0.3
depends_on:
fe:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8060/api/health"]
interval: 30s
timeout: 10s
retries: 5
networks:
doris-net:
driver: bridge
ipam:
config:
- subnet: 172.30.0.0/24
报错
doris-be | Please set vm.max_map_count to be 2000000 under root using 'sysctl -w vm.max_map_count=2000000'.
解决办法:
# 在宿主机(物理机/虚拟机)执行
sudo sysctl -w vm.max_map_count=2000000
doris-be | Please disable swap memory before installation.
解决办法:
# 在宿主机(物理机/虚拟机)执行
sudo swapoff -a
如果你服务器内存不够大!那!放弃吧,骚年!
Apache Doris(原百度 Palo)的 2.x 和 3.x 是两条不同的版本线,分别面向不同的用户需求和场景。以下是它们的核心差异和定位:
一、版本线定位
版本线 | 2.x(如 2.1.7) | 3.x(如 3.0.0) |
---|---|---|
目标用户 | 稳定生产环境,保守升级需求 | 尝鲜新功能,高性能、云原生场景 |
更新策略 | 长期维护(Bug 修复、安全补丁) | 主版本迭代(新功能、架构升级) |
兼容性 | 向后兼容(无破坏性变更) | 可能包含不兼容改动(需评估升级成本) |
二、核心功能差异
1. 性能优化
- 2.x
侧重稳定性优化,例如查询计划器改进、小范围资源隔离。 3.x
- 向量化引擎增强:全面向量化计算,复杂查询性能提升 2-5 倍。
- Pipeline 执行模型:支持异步流水线执行,降低资源争抢。
- 云原生资源调度:深度集成 Kubernetes,动态扩缩容。
2. 功能特性
- 2.x
成熟功能:物化视图、动态分区、多租户资源组。 3.x
- 湖仓一体:直接查询 Hudi/Iceberg 数据(无需导入)。
- JSON 类型增强:支持 JSONB 存储格式和高效检索。
- Light Schema Change:秒级表结构变更(无需重导数据)。
- 多 Catalog 联邦查询:跨 Doris、MySQL、Elasticsearch 联合分析。
3. 存储与事务
- 2.x
基于 Segment V2 存储格式,支持行级更新(需 Merge-on-Read)。 3.x
- Segment V3 存储:列存压缩率提升 30%,支持 Z-Order 索引。
- 事务优化:悲观锁机制减少并发冲突,写入吞吐提升。
4. 运维与生态
- 2.x
运维工具成熟,兼容 Hadoop/Spark 生态。 3.x
- 自动化运维:智能索引推荐、慢查询自诊断。
- Arrow Flight 协议:高速数据传输(替代 JDBC/ODBC)。
- 多语言 UDF:支持 Java/Python UDF 扩展。
三、是否同时更新?
是,两条版本线会并行更新,但侧重点不同:
- 2.1.7:属于 2.1.x 维护分支,仅修复关键问题,无新功能。
- 3.0:属于 3.x 主版本线,持续迭代新特性和架构升级。
四、如何选择?
场景 | 推荐版本 |
---|---|
生产环境求稳 | 2.1.x |
云原生部署、湖仓分析 | 3.x |
高性能实时报表 | 3.x |
兼容旧生态(Hadoop) | 2.1.x |
五、升级建议
- 测试环境验证:3.x 新功能需充分测试(如向量化引擎对复杂 SQL 的覆盖性)。
- 回滚预案:3.x 的存储格式变更可能导致降级困难。
- 关注社区动态:3.x 仍在快速迭代,部分功能可能不稳定。
如需具体场景的版本对比,建议参考 Apache Doris 官方升级文档。
Doris2.1.7单机部署-dockercompose部署!秒了! by https://oneszhang.com/archives/135.html