惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Threatpost
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Security Affairs
N
News and Events Feed by Topic
T
Tenable Blog
P
Proofpoint News Feed
W
WeLiveSecurity
Simon Willison's Weblog
Simon Willison's Weblog
Google DeepMind News
Google DeepMind News
C
CERT Recently Published Vulnerability Notes
Help Net Security
Help Net Security
I
Intezer
T
Threat Research - Cisco Blogs
S
Secure Thoughts
C
Cyber Attacks, Cyber Crime and Cyber Security
L
Lohrmann on Cybersecurity
AWS News Blog
AWS News Blog
Google Online Security Blog
Google Online Security Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Know Your Adversary
Know Your Adversary
Project Zero
Project Zero
The Hacker News
The Hacker News
Security Archives - TechRepublic
Security Archives - TechRepublic
T
Tor Project blog
N
News | PayPal Newsroom
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Hacker News - Newest:
Hacker News - Newest: "LLM"
A
Arctic Wolf
Forbes - Security
Forbes - Security
O
OpenAI News
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Security Latest
Security Latest
P
Palo Alto Networks Blog
S
Schneier on Security
S
Securelist
C
Cybersecurity and Infrastructure Security Agency CISA
H
Heimdal Security Blog
V
Vulnerabilities – Threatpost
www.infosecurity-magazine.com
www.infosecurity-magazine.com
博客园_首页
T
Troy Hunt's Blog
Latest news
Latest news
Recent Announcements
Recent Announcements
MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
L
LINUX DO - 热门话题
M
MIT News - Artificial intelligence
N
Netflix TechBlog - Medium
V
Visual Studio Blog
H
Hacker News: Front Page

博客园 - Rickie

DeepSeek-V3 解读:优化效率与规模 一步一步构建RAG智能问答系统 Milvus向量数据库入门实践 LangChain轻松入门和开发实践 Hugging Face 轻松入门 PyTorch深度学习零基础入门 Spring Security OAuth2+JWT开发实践 Spring Security开发实践 Redis 7.x 入门和开发实战 RedisInsight :Redis 官方可视化工具 Hadoop v3.1 大数据技术快速入门 《Apache RocketMQ 深入浅出》系列文章 Kafka v2.3 快速入门与实践 Apache Doris 轻松入门和快速实践 COLA 4.x和DDD项目实践精粹 阿里开源COLA 4.0源码编译和部署过程 Java实体映射工具MapStruct 与BeanUtils性能比较 阿里DDD项目最佳实践-COLA 架构总览 Java实体映射工具MapStruct详解
一步一步编译最新版Apache Doris 0.15版本的详细过程
Rickie · 2021-12-04 · via 博客园 - Rickie

Apache Doris 于 2021 年 11 月 29 日迎来了 0.15.0 Release 版本的正式发布!有 99 位 Contributor 为 Apache Doris 提交了近 700 项优化和修复。在 0.15.0 Release 版本中,增加了诸多新功能,对 Apache Doris 的查询性能、易用性、稳定性方面等进行了全面优化。

本文将详细演示如何一步一步完成编译最新版Apache Doris 0.15版本。

一、下载Docker开发编译镜像

针对不同的Doris版本,需要下载对应的镜像版本。当前,Doris最新release版本是0.15.0。

选择该版本对应的docker开发编译镜像,如图所示。针对不同的 Doris 版本,需要下载对应的镜像版本。

Apache doris 0.15.0 版本选择使用apache/incubator-doris:build-env-1.4.2 编译。

执行如下命令下载docker镜像:

docker pull apache/incubator-doris:build-env-1.4.2

二、下载Apache Doris源码

当前Apache Doris最新release版本为 0.15.0,如图所示:

(1)下载doris源码

创建doris目录(mkdir doris-0.15),然后下载doris源码:

wget https://dlcdn.apache.org/incubator/doris/0.15.0-incubating/apache-doris-0.15.0-incubating-src.tar.gz

执行过程如下所示:

[root@centos-103 ~]# mkdir doris-0.15

[root@centos-103 ~]# cd doris-0.15

[root@centos-103 doris-0.15]#wget https://dlcdn.apache.org/incubator/doris/0.15.0-incubating/apache-doris-0.15.0-incubating-src.tar.gz

(2)解压

执行如下命令进行源码包解压:

tar vxf apache-doris-0.15.0-incubating-src.tar.gz

解压完成之后,如下所示:

[root@centos-103 doris-0.15]# ls

apache-doris-0.15.0-incubating-src  apache-doris-0.15.0-incubating-src.tar.gz

三、启动Docker容器

需要做两个目录映射,一个是maven的repository目录,一个是doris源码目录,避免容器挂了之后之前下载或编译的内容丢失。

Docker启动命令如下所示:

docker run -it -v /root/.m2:/root/.m2 -v /root/doris-0.15/apache-doris-0.15.0-incubating-src:/root/doris-0.15/apache-doris-0.15.0-incubating-src apache/incubator-doris:build-env-1.4.2

在 build-env-1.4.2 的docker镜像中,同时包含了 OpenJDK 8 和 OpenJDK 11,并且默认使用 OpenJDK 11 编译。

可以使用 java -version 命令查看,如上图所示。

请确保编译使用的 JDK 版本和运行时使用的 JDK 版本一致,否则会导致非预期的运行错误。你可以使用在进入编译镜像的容器后,使用以下命令切换默认 JDK 版本:

切换到 JDK 8:

$ alternatives --set java java-1.8.0-openjdk.x86_64

$ alternatives --set javac java-1.8.0-openjdk.x86_64

$ export JAVA_HOME=/usr/lib/jvm/java-1.8.0

切换到 JDK 11:

$ alternatives --set java java-11-openjdk.x86_64

$ alternatives --set javac java-11-openjdk.x86_64

$ export JAVA_HOME=/usr/lib/jvm/java-11

由于我们的运行时为JDK 8,因此切换到JDK 8环境。

四、编译Doris

现在准备妥当了,可以开始编译Apache Doris源码包了。

在进入docker容器之后,进入到/root/doris-0.15/apache-doris-0.15.0-incubating-src 源码映射目录中,执行编译命令。

sh build.sh

开始漫长的编译过程 ... 编译过程有点慢。

编译之后输出至output目录,有3个子目录:be、fe、udf,只需要拷贝output目录到其他服务器即可。

[root@c7738df1c0f4 apache-doris-0.15.0-incubating-src]# ls output

be  fe  udf

退出Docker 容器,然后可以将output目录中的所有内容拷贝到另一个目录中,如/root/doris-0.15,命令如下所示:

cp -r output/* /root/doris-0.15

output目录下,拷贝出来就是可以安装了。