You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by GitBox <gi...@apache.org> on 2022/06/01 01:22:14 UTC

[GitHub] [incubator-doris] hf200012 opened a new pull request, #9896: [doc]Doris Basic Concepts Documentation

hf200012 opened a new pull request, #9896:
URL: https://github.com/apache/incubator-doris/pull/9896

   # Proposed changes
   
   Issue Number: close #xxx
   
   ## Problem Summary:
   
   Describe the overview of changes.
   
   ## Checklist(Required)
   
   1. Does it affect the original behavior: (Yes/No/I Don't know)
   2. Has unit tests been added: (Yes/No/No Need)
   3. Has document been added or modified: (Yes/No/No Need)
   4. Does it need to update dependencies: (Yes/No)
   5. Are there any changes that cannot be rolled back: (Yes/No)
   
   ## Further comments
   
   If this is a relatively large or complex change, kick off the discussion at [dev@doris.apache.org](mailto:dev@doris.apache.org) by explaining why you chose the solution you did and what alternatives you considered, etc...
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


[GitHub] [doris] hf200012 closed pull request #9896: [doc]Doris Basic Concepts Documentation

Posted by GitBox <gi...@apache.org>.
hf200012 closed pull request #9896: [doc]Doris Basic Concepts Documentation
URL: https://github.com/apache/doris/pull/9896


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


[GitHub] [incubator-doris] morrySnow commented on a diff in pull request #9896: [doc]Doris Basic Concepts Documentation

Posted by GitBox <gi...@apache.org>.
morrySnow commented on code in PR #9896:
URL: https://github.com/apache/incubator-doris/pull/9896#discussion_r887587797


##########
docs/zh-CN/summary/basic-summary.md:
##########
@@ -26,4 +26,79 @@ under the License.
 
 # Doris 基本概念
 
-(TODO)
\ No newline at end of file
+Apache Doris 是一个基于MPP的现代化、高性能、支持实时的分析型数据库,以极速易用的特性被业内所熟知。仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的店查询场景,也能支持高吞吐的复杂查询场景。
+
+Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上的超大数据集。
+
+Apache Doris可以满足多种数据分析需求,例如固定历史报表,实时数据分析,交互式数据分析和探索式数据分析等。令您的数据分析工作更加简单高效!
+
+基于Apache Doris 用户可以灵活构建包括宽表、星型模型。雪花模型在内的各类数据模型。
+
+Apache Doris 高度兼容 MySQL 协议,支持标准 SQL 语法,用户可以很容易的使用 Apache Doris 和其他系统进行对接,整个系统无外部依赖、提供完整高可用、并且易于运维管理。
+
+以下是 Doris 系统的几个核心概念:
+
+## FE(Frontend)
+
+即 Doris 的前端节点。主要负责接收和返回客户端请求、元数据以及集群管理、查询计划生成等工作。
+
+FE 主要有有三个角色,一个是 leader,一个是 follower,还有一个 observer。leader 跟 follower,主要是用来达到元数据的高可用,保证单节点宕机的情况下,元数据能够实时地在线恢复,而不影响整个服务。
+
+Observer 只是用来扩展查询节点,就是说如果在发现集群压力非常大的情况下,需要去扩展整个查询的能力,那么可以加 observer 的节点。observer 不参与任何的写入,只参与读取。
+
+**主要作用如下:**
+
+- 管理元数据, 执行SQL DDL命令, 用Catalog记录库, 表, 分区, tablet副本等信息。
+- FE高可用部署, 使用复制协议选主和主从同步元数据, 所有的元数据修改操作, 由FE leader节点完成, FE follower节点可执行读操作。 元数据的读写满足顺序一致性。 FE的节点数目采用2n+1, 可容忍n个节点故障。 当FE leader故障时, 从现有的follower节点重新选主, 完成故障切换。
+- FE的SQL layer对用户提交的SQL进行解析, 分析, 改写, 语义分析和关系代数优化, 生产逻辑执行计划。
+- FE的Planner负载把逻辑计划转化为可分布式执行的物理计划, 分发给一组BE。

Review Comment:
   负载 -> 负责?



##########
docs/zh-CN/summary/basic-summary.md:
##########
@@ -26,4 +26,79 @@ under the License.
 
 # Doris 基本概念
 
-(TODO)
\ No newline at end of file
+Apache Doris 是一个基于MPP的现代化、高性能、支持实时的分析型数据库,以极速易用的特性被业内所熟知。仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的店查询场景,也能支持高吞吐的复杂查询场景。
+
+Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上的超大数据集。
+
+Apache Doris可以满足多种数据分析需求,例如固定历史报表,实时数据分析,交互式数据分析和探索式数据分析等。令您的数据分析工作更加简单高效!
+
+基于Apache Doris 用户可以灵活构建包括宽表、星型模型。雪花模型在内的各类数据模型。
+
+Apache Doris 高度兼容 MySQL 协议,支持标准 SQL 语法,用户可以很容易的使用 Apache Doris 和其他系统进行对接,整个系统无外部依赖、提供完整高可用、并且易于运维管理。
+
+以下是 Doris 系统的几个核心概念:
+
+## FE(Frontend)
+
+即 Doris 的前端节点。主要负责接收和返回客户端请求、元数据以及集群管理、查询计划生成等工作。
+
+FE 主要有有三个角色,一个是 leader,一个是 follower,还有一个 observer。leader 跟 follower,主要是用来达到元数据的高可用,保证单节点宕机的情况下,元数据能够实时地在线恢复,而不影响整个服务。
+
+Observer 只是用来扩展查询节点,就是说如果在发现集群压力非常大的情况下,需要去扩展整个查询的能力,那么可以加 observer 的节点。observer 不参与任何的写入,只参与读取。
+
+**主要作用如下:**
+
+- 管理元数据, 执行SQL DDL命令, 用Catalog记录库, 表, 分区, tablet副本等信息。
+- FE高可用部署, 使用复制协议选主和主从同步元数据, 所有的元数据修改操作, 由FE leader节点完成, FE follower节点可执行读操作。 元数据的读写满足顺序一致性。 FE的节点数目采用2n+1, 可容忍n个节点故障。 当FE leader故障时, 从现有的follower节点重新选主, 完成故障切换。
+- FE的SQL layer对用户提交的SQL进行解析, 分析, 改写, 语义分析和关系代数优化, 生产逻辑执行计划。
+- FE的Planner负载把逻辑计划转化为可分布式执行的物理计划, 分发给一组BE。
+- FE监督BE, 管理BE的上下线, 根据BE的存活和健康状态, 维持tablet副本的数量。
+- FE协调数据导入, 保证数据导入的一致性。
+
+## BE(Backend)
+
+Doris 的后端节点。主要负责数据存储与管理、查询计划执行等工作。
+
+Doris 数据主要都是存储在 BE 里面,BE 节点上物理数据的可靠性通过多副本来实现,默认是 3 副本,副本数可配置且可随时动态调整,满足不同可用性级别的业务需求。FE 调度 BE 上副本的分布与补齐。
+
+主要作用如下:
+
+- BE管理tablet副本, tablet是table经过分区分桶形成的子表, 采用列式存储。
+- BE受FE指导, 创建或删除子表。
+- BE接收FE分发的物理执行计划并指定BE coordinator节点, 在BE coordinator的调度下, 与其他BE worker共同协作完成执行。
+- BE读本地的列存储引擎, 获取数据, 通过索引和谓词下沉快速过滤数据。
+- BE后台执行compact任务, 减少查询时的读放大。
+- 数据导入时, 由FE指定BE coordinator, 将数据写入到tablet多副本所在的BE上。
+
+## Doris 元数据
+
+Doris 采用 Paxos 协议以及 Memory + Checkpoint + Journal 的机制来确保元数据的高性能及高可靠。
+
+- 元数据的每次更新,都首先写入到磁盘的日志文件中,然后再写到内存中,最后定期 checkpoint 到本地磁盘上。
+- 相当于是一个纯内存的一个结构,也就是说所有的元数据都会缓存在内存之中,从而保证 FE 在宕机后能够快速恢复元数据,而且不丢失元数据。

Review Comment:
   前后没有因果性。
   是不是拆成两条:
   - 全内存,性能高
   - 持久化+checkpoint,宕机快速恢复



##########
docs/zh-CN/summary/basic-summary.md:
##########
@@ -26,4 +26,79 @@ under the License.
 
 # Doris 基本概念
 
-(TODO)
\ No newline at end of file
+Apache Doris 是一个基于MPP的现代化、高性能、支持实时的分析型数据库,以极速易用的特性被业内所熟知。仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的店查询场景,也能支持高吞吐的复杂查询场景。
+
+Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上的超大数据集。
+
+Apache Doris可以满足多种数据分析需求,例如固定历史报表,实时数据分析,交互式数据分析和探索式数据分析等。令您的数据分析工作更加简单高效!
+
+基于Apache Doris 用户可以灵活构建包括宽表、星型模型。雪花模型在内的各类数据模型。
+
+Apache Doris 高度兼容 MySQL 协议,支持标准 SQL 语法,用户可以很容易的使用 Apache Doris 和其他系统进行对接,整个系统无外部依赖、提供完整高可用、并且易于运维管理。
+
+以下是 Doris 系统的几个核心概念:
+
+## FE(Frontend)
+
+即 Doris 的前端节点。主要负责接收和返回客户端请求、元数据以及集群管理、查询计划生成等工作。
+
+FE 主要有有三个角色,一个是 leader,一个是 follower,还有一个 observer。leader 跟 follower,主要是用来达到元数据的高可用,保证单节点宕机的情况下,元数据能够实时地在线恢复,而不影响整个服务。
+
+Observer 只是用来扩展查询节点,就是说如果在发现集群压力非常大的情况下,需要去扩展整个查询的能力,那么可以加 observer 的节点。observer 不参与任何的写入,只参与读取。
+
+**主要作用如下:**
+
+- 管理元数据, 执行SQL DDL命令, 用Catalog记录库, 表, 分区, tablet副本等信息。
+- FE高可用部署, 使用复制协议选主和主从同步元数据, 所有的元数据修改操作, 由FE leader节点完成, FE follower节点可执行读操作。 元数据的读写满足顺序一致性。 FE的节点数目采用2n+1, 可容忍n个节点故障。 当FE leader故障时, 从现有的follower节点重新选主, 完成故障切换。
+- FE的SQL layer对用户提交的SQL进行解析, 分析, 改写, 语义分析和关系代数优化, 生产逻辑执行计划。
+- FE的Planner负载把逻辑计划转化为可分布式执行的物理计划, 分发给一组BE。
+- FE监督BE, 管理BE的上下线, 根据BE的存活和健康状态, 维持tablet副本的数量。
+- FE协调数据导入, 保证数据导入的一致性。
+
+## BE(Backend)
+
+Doris 的后端节点。主要负责数据存储与管理、查询计划执行等工作。
+
+Doris 数据主要都是存储在 BE 里面,BE 节点上物理数据的可靠性通过多副本来实现,默认是 3 副本,副本数可配置且可随时动态调整,满足不同可用性级别的业务需求。FE 调度 BE 上副本的分布与补齐。
+
+主要作用如下:
+
+- BE管理tablet副本, tablet是table经过分区分桶形成的子表, 采用列式存储。
+- BE受FE指导, 创建或删除子表。

Review Comment:
   是否需要解释一下什么是子表?



##########
docs/zh-CN/summary/basic-summary.md:
##########
@@ -26,4 +26,79 @@ under the License.
 
 # Doris 基本概念
 
-(TODO)
\ No newline at end of file
+Apache Doris 是一个基于MPP的现代化、高性能、支持实时的分析型数据库,以极速易用的特性被业内所熟知。仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的店查询场景,也能支持高吞吐的复杂查询场景。
+
+Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上的超大数据集。
+
+Apache Doris可以满足多种数据分析需求,例如固定历史报表,实时数据分析,交互式数据分析和探索式数据分析等。令您的数据分析工作更加简单高效!
+
+基于Apache Doris 用户可以灵活构建包括宽表、星型模型。雪花模型在内的各类数据模型。
+
+Apache Doris 高度兼容 MySQL 协议,支持标准 SQL 语法,用户可以很容易的使用 Apache Doris 和其他系统进行对接,整个系统无外部依赖、提供完整高可用、并且易于运维管理。
+
+以下是 Doris 系统的几个核心概念:
+
+## FE(Frontend)
+
+即 Doris 的前端节点。主要负责接收和返回客户端请求、元数据以及集群管理、查询计划生成等工作。
+
+FE 主要有有三个角色,一个是 leader,一个是 follower,还有一个 observer。leader 跟 follower,主要是用来达到元数据的高可用,保证单节点宕机的情况下,元数据能够实时地在线恢复,而不影响整个服务。
+
+Observer 只是用来扩展查询节点,就是说如果在发现集群压力非常大的情况下,需要去扩展整个查询的能力,那么可以加 observer 的节点。observer 不参与任何的写入,只参与读取。
+
+**主要作用如下:**
+
+- 管理元数据, 执行SQL DDL命令, 用Catalog记录库, 表, 分区, tablet副本等信息。
+- FE高可用部署, 使用复制协议选主和主从同步元数据, 所有的元数据修改操作, 由FE leader节点完成, FE follower节点可执行读操作。 元数据的读写满足顺序一致性。 FE的节点数目采用2n+1, 可容忍n个节点故障。 当FE leader故障时, 从现有的follower节点重新选主, 完成故障切换。
+- FE的SQL layer对用户提交的SQL进行解析, 分析, 改写, 语义分析和关系代数优化, 生产逻辑执行计划。

Review Comment:
   生产 -> 生成?
   分析和语义分析是不是重复了?



##########
docs/zh-CN/summary/basic-summary.md:
##########
@@ -26,4 +26,79 @@ under the License.
 
 # Doris 基本概念
 
-(TODO)
\ No newline at end of file
+Apache Doris 是一个基于MPP的现代化、高性能、支持实时的分析型数据库,以极速易用的特性被业内所熟知。仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的店查询场景,也能支持高吞吐的复杂查询场景。
+
+Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上的超大数据集。
+
+Apache Doris可以满足多种数据分析需求,例如固定历史报表,实时数据分析,交互式数据分析和探索式数据分析等。令您的数据分析工作更加简单高效!
+
+基于Apache Doris 用户可以灵活构建包括宽表、星型模型。雪花模型在内的各类数据模型。
+
+Apache Doris 高度兼容 MySQL 协议,支持标准 SQL 语法,用户可以很容易的使用 Apache Doris 和其他系统进行对接,整个系统无外部依赖、提供完整高可用、并且易于运维管理。
+
+以下是 Doris 系统的几个核心概念:
+
+## FE(Frontend)
+
+即 Doris 的前端节点。主要负责接收和返回客户端请求、元数据以及集群管理、查询计划生成等工作。
+
+FE 主要有有三个角色,一个是 leader,一个是 follower,还有一个 observer。leader 跟 follower,主要是用来达到元数据的高可用,保证单节点宕机的情况下,元数据能够实时地在线恢复,而不影响整个服务。
+
+Observer 只是用来扩展查询节点,就是说如果在发现集群压力非常大的情况下,需要去扩展整个查询的能力,那么可以加 observer 的节点。observer 不参与任何的写入,只参与读取。
+
+**主要作用如下:**
+
+- 管理元数据, 执行SQL DDL命令, 用Catalog记录库, 表, 分区, tablet副本等信息。
+- FE高可用部署, 使用复制协议选主和主从同步元数据, 所有的元数据修改操作, 由FE leader节点完成, FE follower节点可执行读操作。 元数据的读写满足顺序一致性。 FE的节点数目采用2n+1, 可容忍n个节点故障。 当FE leader故障时, 从现有的follower节点重新选主, 完成故障切换。
+- FE的SQL layer对用户提交的SQL进行解析, 分析, 改写, 语义分析和关系代数优化, 生产逻辑执行计划。
+- FE的Planner负载把逻辑计划转化为可分布式执行的物理计划, 分发给一组BE。
+- FE监督BE, 管理BE的上下线, 根据BE的存活和健康状态, 维持tablet副本的数量。
+- FE协调数据导入, 保证数据导入的一致性。
+
+## BE(Backend)
+
+Doris 的后端节点。主要负责数据存储与管理、查询计划执行等工作。
+
+Doris 数据主要都是存储在 BE 里面,BE 节点上物理数据的可靠性通过多副本来实现,默认是 3 副本,副本数可配置且可随时动态调整,满足不同可用性级别的业务需求。FE 调度 BE 上副本的分布与补齐。
+
+主要作用如下:
+
+- BE管理tablet副本, tablet是table经过分区分桶形成的子表, 采用列式存储。
+- BE受FE指导, 创建或删除子表。
+- BE接收FE分发的物理执行计划并指定BE coordinator节点, 在BE coordinator的调度下, 与其他BE worker共同协作完成执行。
+- BE读本地的列存储引擎, 获取数据, 通过索引和谓词下沉快速过滤数据。

Review Comment:
   nit: 下沉 -> 下推



##########
docs/zh-CN/summary/basic-summary.md:
##########
@@ -26,4 +26,79 @@ under the License.
 
 # Doris 基本概念
 
-(TODO)
\ No newline at end of file
+Apache Doris 是一个基于MPP的现代化、高性能、支持实时的分析型数据库,以极速易用的特性被业内所熟知。仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的店查询场景,也能支持高吞吐的复杂查询场景。
+
+Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上的超大数据集。
+
+Apache Doris可以满足多种数据分析需求,例如固定历史报表,实时数据分析,交互式数据分析和探索式数据分析等。令您的数据分析工作更加简单高效!
+
+基于Apache Doris 用户可以灵活构建包括宽表、星型模型。雪花模型在内的各类数据模型。
+
+Apache Doris 高度兼容 MySQL 协议,支持标准 SQL 语法,用户可以很容易的使用 Apache Doris 和其他系统进行对接,整个系统无外部依赖、提供完整高可用、并且易于运维管理。
+
+以下是 Doris 系统的几个核心概念:
+
+## FE(Frontend)
+
+即 Doris 的前端节点。主要负责接收和返回客户端请求、元数据以及集群管理、查询计划生成等工作。
+
+FE 主要有有三个角色,一个是 leader,一个是 follower,还有一个 observer。leader 跟 follower,主要是用来达到元数据的高可用,保证单节点宕机的情况下,元数据能够实时地在线恢复,而不影响整个服务。
+
+Observer 只是用来扩展查询节点,就是说如果在发现集群压力非常大的情况下,需要去扩展整个查询的能力,那么可以加 observer 的节点。observer 不参与任何的写入,只参与读取。
+
+**主要作用如下:**
+
+- 管理元数据, 执行SQL DDL命令, 用Catalog记录库, 表, 分区, tablet副本等信息。
+- FE高可用部署, 使用复制协议选主和主从同步元数据, 所有的元数据修改操作, 由FE leader节点完成, FE follower节点可执行读操作。 元数据的读写满足顺序一致性。 FE的节点数目采用2n+1, 可容忍n个节点故障。 当FE leader故障时, 从现有的follower节点重新选主, 完成故障切换。
+- FE的SQL layer对用户提交的SQL进行解析, 分析, 改写, 语义分析和关系代数优化, 生产逻辑执行计划。
+- FE的Planner负载把逻辑计划转化为可分布式执行的物理计划, 分发给一组BE。
+- FE监督BE, 管理BE的上下线, 根据BE的存活和健康状态, 维持tablet副本的数量。
+- FE协调数据导入, 保证数据导入的一致性。
+
+## BE(Backend)
+
+Doris 的后端节点。主要负责数据存储与管理、查询计划执行等工作。
+
+Doris 数据主要都是存储在 BE 里面,BE 节点上物理数据的可靠性通过多副本来实现,默认是 3 副本,副本数可配置且可随时动态调整,满足不同可用性级别的业务需求。FE 调度 BE 上副本的分布与补齐。
+
+主要作用如下:
+
+- BE管理tablet副本, tablet是table经过分区分桶形成的子表, 采用列式存储。
+- BE受FE指导, 创建或删除子表。
+- BE接收FE分发的物理执行计划并指定BE coordinator节点, 在BE coordinator的调度下, 与其他BE worker共同协作完成执行。
+- BE读本地的列存储引擎, 获取数据, 通过索引和谓词下沉快速过滤数据。
+- BE后台执行compact任务, 减少查询时的读放大。
+- 数据导入时, 由FE指定BE coordinator, 将数据写入到tablet多副本所在的BE上。
+
+## Doris 元数据
+
+Doris 采用 Paxos 协议以及 Memory + Checkpoint + Journal 的机制来确保元数据的高性能及高可靠。
+
+- 元数据的每次更新,都首先写入到磁盘的日志文件中,然后再写到内存中,最后定期 checkpoint 到本地磁盘上。

Review Comment:
   "都首先写入到磁盘的日志文件中,然后再写到内存中" 这个好像和我们的实现不一致



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org