SelectDB Enterprise
Enterprise Manager
使用
24.x 系列

Cluster Manager for Apache Doris 24.x 使用指南

概览

不同于 23.x 系列的历史版本的SSH 互信方式,Doris Manager 24.x 版本管控使用Agent方式,Agent和Server之间直接使用HTTP协议通信,可以结合SSL加密数据,保证安全性。

主要功能

Cluster Manager for Apache Doris(以下简称 Doris Manager)提供的主要功能如下:

  • 部署集群 :通过 Doris Manager 在物理机、虚拟机部署 Apache Doris 或 SelectDB Doris 集群。
  • 接管集群 :将现有的 Apache Doris 或 SelectDB Doris 集群接管到 Doris Manager 进行运维、监控。
  • 集群详情 :查看集群的运行状态、详情、连接信息。
  • 集群扩缩 :对 FE、BE 节点进行扩容、缩容。
  • 集群升级 :对集群版本进行升级,提供全量停服升级和在线滚动升级,可根据业务场景选择适合的升级方式。
  • 集群重启 :对整个集群、FE、BE 以及节点进行重启操作,重启集群支持滚动和全量重启。
  • 节点详情 :查看节点的实时状态以及机器信息。
  • 参数配置 :支持节点自定义编辑配置文件,单个节点支持查看所有的运行参数。
  • 监控告警 :查看监控指标、设置告警规则,并支持通过邮件、聊天软件、Webhook 等方式进行告警通知。
  • 日志查看 :支持查看、查询 FE、BE 各节点的日志,方便离线排查集群问题。
  • 任务审计 :支持查看每个任务的详细信息,包括操作时间、操作人、操作内容等信息。
  • 集群巡检 :支持手动或定期一键检查机器状况、集群运行状态,及时发现并定位性能瓶颈,并提供修复建议。
  • WebUI :支持查看数据库中的数据以及其信息,还可以进行 SQL 查询、数据导入、权限管理等操作。
  • 其他 :修改集群 root 用户、admin 用户的密码,停止接管集群等。

初始化配置

Doris Manager第一次启动后,访问服务的第一步,是设置 Doris Manager 的管理员账户。管理员账户拥有 Doris Manager 的最高权限,可以进行用户设置、Doris Manager 自身服务配置和升级等操作。其他账户必须以管理员账户的身份添加。

  1. 初始化 Doris Manager 管理员账户

注意:请您牢记设置的管理员用户名密码,在Doris Manager 中只有一个管理员账户的情况下,管理员账户的用户名密码一旦丢失,将不能重置恢复。

  1. 配置服务组件部署信息

创建 Doris Manager 管理员用户后,点击下一步进入服务组件配置页面,填写配置信息。

设置分为两部分,分别是组件配置与安装包配置:

  • 组件配置 : Doris Manager 监控告警服务相关的组件配置。
    • 监控告警服务 :可选项,用于配置 Doris Manager 的监控告警模块,这里会安装 Grafana、Prometheus、Alertmanager,需要在安装 Doris Manager 的机器上选择三个可用的端口。
      • 邮件告警 :配置邮件服务器,随后可以使用告警中的“邮件告警”渠道。
      • 高级配置 :可选项,用于配置代理配置。
        • 代理配置:如果生产环境和外网隔离,可以设置代理发送通知到公网办公通讯软件。
  • 安装包配置 :配置本地的 Doris Core、Doris Manager 安装包存放路径,用于新建、升级集群。
  1. 启动 Doris Manager

完成配置后,点击 启动 Doris Manager

在启动完成后,点击 进入 Doris Manager,将进入管控页面,您可以在管控页面发起 新建集群接管集群 的操作。

用户菜单

服务配置

进入 Doris Manager 后,可以在左下角点击用户的头像,菜单中选择 服务配置 修改配置。修改后,点击 保存并重启 ,Doris Manager 将重启并加载新的配置。

在服务模块,可以看到各个服务的状态,并支持对服务的重启及启停操作。

访问控制

在用户管理,系统管理员可以新建用户,并给他们分配角色。

Doris Manager 内置了三种角色,其权限范围见下表:

角色系统管理集群管理集群查看
SystemAdmin全部全部全部
ClusterAdmin全部全部
ClusterView全部

集群管理是对集群进行运维操作(参数配置、重启、升级等)的权限,拥有集群管理权限一定拥有集群查看权限。

您也可以新建角色,并分配他们的权限范围,例如在图中的 GuideAdmin 角色,拥有对 Guide 集群的管理权限。

修改登录密码

点击左下角的用户头像,选择 修改登录密码 ,可以修改当前用户的登录密码。

升级 Doris Manager

  1. 查看当前版本

点击页面左下角用户信息,可以查看 Doris Manager 当前版本:

2. 下载新版本 Doris Manager 安装包

升级页面会提示目标版本安装包在Doris Manager服务器上的存放路径:

直接登录Doris Manager服务器机器,把新版本的安装包存放进目录。再刷新页面,就可以查看并选择目标版本。

点击升级按钮就可以进入升级页面。

  1. 升级Doris Manager

注意:升级时也会重启webserver组件,所以页面会短暂自动退出,请重新登录即可。

切换语言

点击左下角的用户头像,选择 切换语言 ,可以切换到英文版本。

集群新建

部署集群

通过 Doris Manager 能在物理机、虚拟机部署 Apache Doris 或 SelectDB Doris 集群,并自动完成集群的安装和配置。在部署过程中,用户可以自定义集群的规模、节点数量等,以满足不同的业务需求。

部署完成后,Doris Manager 将提供集群的连接信息,方便用户快速接入和使用。

环境配置

首先部署方式选择 新建集群 ,在 环境配置 中设置集群名称 ,选择要部署的版本并设置数据库 root 用户密码。

当前,Doris Manager 支持部署 1.2.1 版本以上的 SelectDB Doris 以及 Apache Doris 集群。

注意:集群部署的版本类型必须和 Manager 版本类型保持一致,举例:如果您部署的集群版本是 x64 类型,Manager也需要部署对应的 x64 版本。反之,如果您部署的集群版本是 arm 类型,Manager 也需要部署 arm 版本。

主机注册

通过 Manager 部署集群时,需要在管控机器上部署Agent进行主机注册,您可以参考 Agent 安装指引 在目标主机上部署。如果您想了解详细的主机注册流程,见部署文档。

部署完成后输入 Agent 端口及 IP 信息(支持 IPV4 和 IPV6 的方式),Doris Manager 会自动检测主机的 Agent 状态。

注意:

  1. 集群中所有主机的 Agent 端口必须保持一致。
  2. 一台主机只允许部署一个集群。

FE 配置

在 FE 配置中对 FE 节点 的端口、角色、部署目录等进行配置,具体说明如下:

  • 通用配置:代表所有的 FE 节点使用的各端口、部署目录、元数据存储目以及日志目录的配置,系统给出了一个默认值,您可以依据机器环境情况进行修改。
  • FE 节点:从成功完成注册的主机中选择节点 ,指定节点的角色,FE Follower 建议为奇数个,展开自定义配置,可以对 FE 节点的各端口、优先级网络、部署目录、元数据存储目录以及日志目录进行修改。

部署时 Doris Manager 会对主机的机器环境进行检查,只有检查的机器环境为正常,才能继续进行部署。机器环境检查异常,错误类型会有以下几种情况:

  • 机器的配置不满足 Doris 部署的条件,如交换分区未关闭、最大打开文件数小于 65535 、透明大页面未关闭、虚拟内存区域数量不符合要求,您可以按照 Doris Manager 给出的提示来进行修改。
  • 端口被占用,您可以更改选择未被使用的端口。
  • 对部署路径的检查,您需要保证部署目录的空间大于 20 G,并且所在目录是否有权限以及是否被占用。

BE 配置

在 BE 配置中对 BE 节点 的端口、角色、部署目录等进行配置,具体说明如下:

  • 通用配置:代表所有的 BE 节点使用的各端口、部署目录、数据存储目录、日志目录以及外表缓存的配置,系统给出了一个默认值,您可以依据机器环境情况进行修改。
  • BE 节点:从成功完成注册的主机中选择节点,普通 BE 节点角色为 标准 (Hybrid Node) ,这类节点既能做 SQL 查询, 又有 Tablet 数据存储管理。展开自定义配置,可以对 BE 节点的各端口、部署目录、数据存储目录、日志目录及外表缓存进行修改。如有需要也可以添加计算节点,角色为计算 (Compute Node),用于专门处理数据湖这类远程的联邦查询,只能做 SQL 查询,它不会保存任何数据。

其他配置

在其他配置中对自动拉起及表名大小写是否敏感进行配置,具体说明如下:

  • 高级配置
    • 开启自动管控模式,Doris Manager 会在机器上为 Doris 进程设置自动拉起守护。如果您不希望 Doris Manager 干预,可以选择关闭自动模式。
    • 表名大小写敏感,设置lower_case_table_names的值来指定集群的表名大小写是否敏感。

点击部署集群,Doris Manager 会进行集群部署,您可以在新建集群页面看到详细的部署流程及进展。

在部署成功后,您将看到集群的访问信息,以及初始化的 admin 用户密码,您可以复制保存这些信息。 Doris Manager 不保存用户的密码,这些密码信息仅在这里出现一次。

您可以在集群详情看到数据库的连接信息,但不会看到密码信息。

接下来点击 进入集群 ,即可进入 Doris Manager 查看、运维集群。

接管集群

将现有的 Apache Doris 集群托管到 Doris Manager 进行运维、监控。您只需提供现有集群的相关信息,如集群地址、登录凭证等,Doris Manager 即可自动接管集群,实现对集群的统一管理。

接管后,您可以通过 Doris Manager 对集群进行运维操作,如监控、扩缩容、重启等,同时可以查看集群的运行状态、监控指标等信息,帮助用户更好的了解和管理集群。

环境配置

在接管集群配置页中,输入集群名,填入要接管集群的任意一个 FE 节点 IP、HTTP 端口、JDBC 端口、数据库root用户密码及 Agent 端口。

注意: 接管集群的各个主机同样需要提前部署 Agent ,进行主机注册。

节点配置

如果成功连接上了集群,则可以看到集群 FE、BE 节点的信息,这里 Doris Manager 会检查节点的 Agent 状态、机器环境及节点状态情况,如果有异常,请先恢复后再继续集群接管。

同时您也可以指定自动管控模式,选择是否为 Doris 进程设置自动拉起守护。最后,点击 接管集群 以完成接管。

Doris Manager 会自动完成集群接管,这个阶段大概需要 5 分钟。

您可以保留集群的连接信息,Doris Manager 在接管集群时,不会修改、获取您的集群中的用户密码。

集群运维

集群总览

在集群总览,您可以查看当前集群的运行状态,以及 FE(Frontend)和 BE(Backend)节点的存活状态以及数据库与数据量等信息。您也可以在集群详情找到集群的链接访问方式。

在集群总览,您可以对整个集群或者全部 FE、BE 节点进行重启、扩缩容。

在集群管理的左上角,可以切换选择不同的集群,同时在这里可以查看到集群的版本信息。

节点详情

查看 FE(Frontend)、 BE(Backend)节点的状态、端口及版本等信息。

另外在 BE 节点,您可以给 BE 节点设置标签,标签相同的节点组成一个资源组。

主机详情

主机指标包含 Agent 状态、部署模块、 CPU、内存、磁盘、网络等,运行指标会实时刷新,频率是 5s/次。您可以点击对应指标标题旁的排序按钮,发现集群中有瓶颈的节点。

集群扩缩容

在集群页面的右上角,您可以进入集群扩缩容功能,对 FE、BE 进行 扩容、缩容操作。

通过 Manager 扩容节点时,扩容的节点必须是部署 Agent 并注册成功的节点,如果扩容下拉选择节点为空,可以下拉选择添加主机,进入添加主机页面注册。

在添加主机页面,可以参考 Agent 安装指引在目标主机上部署,新添加的主机的 Agent 端口需要与集群其他节点保持一致。

部署完成后输入 IP 信息(支持 IPV4 和 IPV6 的方式),Doris Manager 会自动检测主机的 Agent 状态。

主机添加成功之后,即可在扩容页面下拉选择注册成功的主机。扩容的节点和新部署一样同样支持配置端口、部署目录等信息。

确认扩容节点信息后,即可进入集群扩容页面查看扩容的进展情况。

重启集群

在集群模块的右上角,可以进行重启操作。您可以单独重启 FE、BE,也可以重启整个集群。

重启集群可以选择滚动重启或者全量重启,如果您希望依次重启节点,则选择滚动重启,如果您希望快速重启,则选择全量重启。

点击重启后,会进入重启任务并展示任务日志。

配置

编辑配置

Doris Manager 支持通过对配置文件的修改来修改对应参数,您可以在集群模块点击右上角的下拉菜单中的 参数配置 ,在参数配置页面对 FE 或 BE 参数做单个节点或多个节点的修改。

如果您批量修改多个节点配置,所有节点的配置会被覆盖为相同的内容,如需定制部分节点配置,请逐一修改节点配置。修改后可以选择重启模式来重启集群使配置生效。

注意:端口及路径配置无法在此处修改。

Doris Manager 会对参数配置做基础的类型校验,如参数值类型校验异常会给出提醒。

如果修改配置选择的是滚动重启,则在配置变更任务的详情页面,可以进行配置变更的终止操作,终止操作仅停止等待变更的节点,当前正在运行中的任务将继续进行。

修改历史

在参数配置页面,可以点击修改历史,查看节点参数的历史修改记录。

参数的修改历史记录了节点的修改状态、发起者以及修改时间,同时您可以查看修改前后的版本对比情况。

配置查看

在节点列表页面,您可以查看每个节点的运行参数,这里会展示所有的运行参数值。

集群升级

Doris Manager 支持对集群进行版本升级,提供全量停服升级和在线滚动升级两种升级模式。您可以在集群详情页,点击右上角下拉菜单中的 集群升级 ,选择目标升级版本及升级模式进行集群的升级操作。

注意 升级时备份数据为可选项,如果您的集群数据量大时备份耗时会比较久,期间服务不可用,如果您不勾选备份,升级不支持回滚。

当前,Doris Manager 支持升级 1.2.1 版本以上的 Apache Doris 及 SelectDB Doris 集群。对集群版本的升级有版本类型和版本号的相关限制,限制情况如下表所示:

当前版本目标版本
1.2.1~1.2.71.2.8
1.2.4~1.2.82.0.*
2.0.*2.1.*
2.1.*3.0.*(存算一体模式)

发起升级操作之后,可以在集群升级页面看到详细的升级流程和进展情况。首先会进行安装包的下载分发,分发完成后,即可开始正式的升级操作。

全量停服升级支持回滚,全量停服升级之后,您可以检查升级完成的集群,如果发现异常可以进行回滚操作。

在线滚动升级过程中可以先进行单台升级,单台升级完成后,再滚动升级所有节点。

同时在滚动升级所有节点过程中,也支持暂停升级,暂停升级仅停止等待升级的任务,当前正在运行中的任务将继续进行。

如果滚动升级过程中,发现异常,可以进行回滚操作,一旦发起回滚,则会回滚当前所有升级完成的节点。

回滚完成后,该次升级任务结束,如需继续升级,可以再次发起新的升级任务。

集群监控

监控

Doris Manager 提供了丰富的预制监控指标,帮助您实时了解集群的运行状况。

监控指标说明:

分类指标名称指标描述
Cluster OverviewFE Node集群 FE 总节点数
FE Not Alive集群掉线的 FE 节点数
Used Capacity集群中 BE 的已使用空间
BE Node集群 BE 总节点数
BE Not Alive集群掉线的 BE 节点数
Total Capacity集群中 BE 可用存储空间
FE JVM Heap Use Rate集群中 FE 的 jvm heap 使用率
BE Compaction Score每个 BE 的 compaction score
Load Rows Rate单位时间内的数据导入情况
QPS不同 FE 的 qps 情况
99th Latency不同 FE 的 99 分位查询延时
Host MonitorCPU Used Rate节点的 cpu 使用率
Mem Usage节点的内存使用大小
Mem Used Rate节点的内存使用率
I/O Util单位时间内的磁盘 io util 情况
DIsk Used Rate磁盘空间已用百分比
Disk Write Throughput磁盘写能力的吞吐情况
Disk Read Throughput磁盘读能力的吞吐情况
Network Outbound Traffic网关的 Outbound 流量
Network Inbound Traffic网关的 inbound 流量
Query StatisticRPS单位时间内的不同 FE 的请求
QPS不同 FE 的 qps
99th Latency99 分位的查询延时
Query Percentile查询延时(不同分位)
Query Error [1m]1 min 内的查询失败率
Connections每个 FE 的连接数
JobsBroker Load JobBroker load 任务状态分布
Insert Load JobInsert 任务状态分布
Routine Load JobRoutine load 任务状态分布
Spark Load JobSpark load 任务状态分布
Broker Load TendencyBroker load 任务情况
Insert Load TendencyInsert 任务情况
Routine Load TendencyRoutine load 任务情况
Spark Load TendencySpark load 任务情况
SC Job正在运行的 schema change 任务数
Report Queue Sizemaster 节点的 Report Queue Size
Rollup Job正在运行的 rollup 任务数
TransactionsTxn Begin/Success on FEFE 上发起的 txn 和成功的 txn 总数
Txn Failed/Reject on FE单位时间内,BE 的 txn 的 failed 率和 reject 率
Publish Task on BEBE 上 publish task 得总数
Txn Status on FE不同状态的 txn 的数量
Txn Load Bytes/Rows rate单位时间内导入的数据的行数和大小
FEMax Replayed Journal IDFE 的 Journal ID
Edit Log SizeFE 的 edit log 大小
Image WriteFE 的 image write 次数
Image PushFE 的 image push 次数
Image CounterFE 的 image write 和 push 的次数
Image CleanFe image 清理成功和失败的情况
Edit log CleanFe edit log 清理成功和失败的情况
BDBJE WriteBDBJE 的 99 分位写入延时
BDBJE Read单位时间内 BDBJE 的读
JVM HeapFe jvm heap 使用情况
Scheduling Tablets数据均衡或者恢复过程中需要被调度的 tablet 数量
JVM Old GCOld Gc
JVM Young GCYoung gc
JVM OldJvm old size
JVM YoungJvm young size
FE Collect Compaction ScoreFE 搜集到的每个 BE 的 compaction score
JVM Non HeapFE 的 jvm 的 non heap 使用情况
JVM ThreadsJvm 的 thread 数量
BEDisk UsageBE 的磁盘空间使用率
BE FD CountBE 上 fd 的使用情况
BE Thread NumBE 的 thread 分布情况
Tablet Meta Read单位时间内 BE 的元数据读取情况
Tablet Meta Write单位时间内 BE 的元数据写入情况
Tablet DistributionBE 上 tablet 的分布情况
BE Compaction Base单位时间内 BE 做 base compaction 任务的速率
BE Compaction Cumulate单位时间内 BE 做 cumulative compaction 任务的速率
BE Push Bytes单位时间内 BE push_request_write 的数据大小
BE Push Rows单位时间内 BE push_request_write 的行数
BE Scan BytesBE 单位时间内扫描的数据大小
BE Scan RowsBE 单位时间内扫描的数据行数
BE TasksFinish Task Report每个 BE 上 task 完成的总数
Push Task每个 BE 上执行成功的 push task 得任务数量
Push Task Cost Time每个 BE 上执行 push task 得耗时
DeleteBE 上执行 delete 任务的总数
Base CompactionBE 上执行 base_compaction 任务的总数
Cumulative CompactionBE 上执行 cumulative_compaction 任务的总数
CloneBE 上执行 clone 任务的总数
Create RollupBE 上执行 create_rollup 任务的总数
Schema ChangeBE 上执行 schema_change 任务的总数
Create TabletBE 上执行 create_tablet 任务的总数

告警

您可以根据需要设置监控指标的告警阈值,当指标超过阈值时,Doris Manager 将通过邮件、聊天软件、Webhook 等方式发送告警通知,提醒您及时处理潜在问题。当您使用邮件作为告警方式时,您需要在 Doris Manager 的配置文件中配置您的邮件服务器。

同时您可以给告警策略指定告警等级,根据等级配置不同的通知方式,另外也可以选择是否在告警恢复的时候发送通知。

集群初始化时,Doris Manager 按照最佳实践内置了默认告警模版,在新建告警策略的时候可以选择模版中的指标进行快捷配置。

同时在告警策略内置了两类模版,根据指标的告警等级分为紧急和警告两类模版,您可以根据模版进行快捷配置。

在列表页可以查看现有告警策略,以及其告警历史情况。如果您有多个集群,可以给一个集群配置好告警策略之后,选中所需的告警策略,通过导出导入的方式,快捷应用到其他集群上。

告警机器人的配置方法

在使用告警机器人时,请保证您可以联通公网。

企业微信

配置方式:填写机器人 Webhook

1、打开企业微信群,在群聊中选择添加群机器人,「新建」一个机器人

2、为机器人命名

3、复制 Webhook

飞书

配置方式:填写机器人 Webhook

添加飞书群聊机器人并获取 Webhook 的方式:

1、打开飞书,进入群聊后,选择群聊-设置-群机器人

2、添加机器人-自定义机器人

3、点击添加

4、获取 Webhook

钉钉

配置方式:填写机器人 webhook

添加钉钉机器人获取 webhook 的方式参见 自定义机器人接入 (opens in a new tab)

1、在钉钉群中找到群设置

2、选择智能群助手

3、选择添加机器人

4、选择添加 自定义 机器人

5、进行安全配置,选择关键词,输入 Alert

6、复制 Webhook

Webhook

Webhook的方式表示用户可以自定义一个API,把API服务的完整URL提供给Manager,由Manager向API发送告警,用户的API中收到告警后,可以做任何其他处理。

用户API的详细需求举例:

API 方法:POST

API URL格式举例:如http://172.20.17.107:8004/doris/alert (opens in a new tab)

API 收到的 Manager 后台发送的 body 体内容举例为:

{
    "alertContent":"[cluster_guide]testrule1\n时间:2023-12-15 17:32:56\n集群:cluster_guide\n规则名称:testrule1\n报警内容:FE Alive小于50.0\n",
    "alertInfo":"FE Alive小于50.0",
    "alertName":"testrule1",
    "cluster":"cluster_guide",
    "time":"2023-12-15 17:32:56"
}

集群日志

日志作为排查问题的工具,是 Manager 必备的功能。Doris 的日志以文件形式存在,Doris Manager 独立于集群之外,这样能方便您在集群不可用时仍能访问日志排查问题。

进入日志模块,您首先要在左上角选择节点与日志选择完成后,可以在右侧预览日志。

在查看地址时,您可以选择从日志文件的尾部或头部查看,分别对应右上角的 Tail/Head 选项。

同时,您也可以对日志内容进行查询,查询时,可以选择查询内容是否是大小写敏感,以及是否严格匹配。通过查询框右侧的上下按钮,您可以定位页面中的匹配项目。

Doris Manager 并不会一次性将日志加载进前端,而是按需加载。但在查询时,Doris Manager 会尽量从全文检索匹配项。您可以在左侧找到全部的查询结果,并通过点击条目的方式,快速定位到匹配项在日志中的具体位置。

任务审计

随着业务的发展,对任务执行和责任追溯的监管需求日益增强。历史任务的审计功能成为管控工具中不可或缺的一部分,它能够帮助管理者追溯任务的执行过程、记录每个任务从发起到完成的完整生命周期。

Doris Manager 的任务审计模块记录了每个任务的详细信息,包括任务类型、ID、模块、状态、发起者、执行进度、开始时间及结束时间。

同时在列表里选择具体的任务,可以查看该任务的执行详情,任务详情中记录了任务执行的每个步骤的 websever 日志。

同时,你也可以在每个步骤下查看节点维度的执行日志。

集群巡检

Doris Manager 内置了可能对集群稳定、运行效率产生影响的巡检项,支持对集群进行一键巡检。

巡检的异常状态分为三类:

  • 执行失败:在执行过程中,没有成功的返回结果,可能由权限、机器环境设置、集群可用性导致。
  • 警告:该类状态的巡检项可能对集群的健康运行产生重大影响,您可以点开 查看建议 了解如何进行修复。
  • 提示:该类状态的巡检项可能对集群的健康运行产生一定影响或者带来潜在风险,您可以点开 查看建议 了解如何进行修复。

同时,您还可以通过点击 导出 ,将巡检报告以 PDF 下载到本地。

巡检支持配置定期巡检,您可以开启定期巡检,按需配置巡检周期及巡检通知。

集群设置

您可以在设置中修改集群名、数据库 root 用户密码、数据库 admin 用户密码以及停止托管集群。

集群 WebUI

Doris Manager 在左侧导航栏中提供了便捷的 WebUI 访问入口。在 WebUI 中,用户可以查看数据库中的数据以及其信息,还可以进行 SQL 查询、数据查看、权限管理、导入任务管理等操作。

© 2023 北京飞轮数据科技有限公司 京ICP备2022004029号 | Apache、Apache Doris 以及相关开源项目名称均为 Apache 基金会商标