dataroaring commented on code in PR #2745:
URL: https://github.com/apache/doris-website/pull/2745#discussion_r2272696385


##########
i18n/zh-CN/docusaurus-plugin-content-docs/current/compute-storage-decoupled/file-cache-rw-compute-group-best-practice.md:
##########
@@ -0,0 +1,175 @@
+---
+{
+    "title": "读写分离场景下缓存优化最佳实践",
+    "language": "zh-CN"
+}
+---
+
+在使用 Apache Doris 的存算分离架构时,特别是部署了多个计算组(Compute Group)来实现读写分离的场景下,查询性能高度依赖于 File 
Cache 的命中率。当只读计算组(Read-Only Compute Group)的缓存未命中(Cache 
Miss)时,需要从远端对象存储拉取数据,会导致查询延迟(Query Latency)显著增加。
+
+本文档旨在详细阐述如何通过缓存预热及相关配置,有效减少因 **Compaction** 和 **数据导入(Data 
Ingestion)**以及**Schema Change等**常见场景引起的缓存未命中问题,从而保障只读集群的查询性能稳定性。
+
+## 核心问题:新数据版本(Rowset)引发的缓存失效
+
+在 Doris 中,无论是后台的 Compaction / Schema Change 还是前台的数据导入,都会生成新的数据文件集合(Rowset)。这些新 
Rowset 在负责写入的计算组(Write-Only Compute Group)的节点上,其数据会默认被写入本地的 File Cache 
中,因此该计算组的查询性能不受影响。
+
+然而,对于只读计算组而言,当它同步到元数据并感知到这些新 Rowset 的存在时,其本地缓存中并没有这些新数据。此时若有查询需要访问这些新 
Rowset,就会触发缓存未命中,导致性能下降。
+
+为了解决这一问题,核心思路是:**让数据在被查询之前,提前或智能地加载到只读计算组的缓存中。**
+
+## 一、 缓存预热机制概览
+
+缓存预热(Cache Warm-up)是主动将远端存储中的数据加载到 BE 节点的 File Cache 中的过程。Doris 提供以下三种主要的预热方式:
+
+### 1. 主动增量预热 (推荐)
+
+这是一种更为智能和自动化的机制。它通过在写入计算组和只读计算组之间建立预热关系,当写入/Compaction 等事件产生新 Rowset 
时,会主动通知并触发关联的只读计算组进行异步的缓存预热。
+
+**适用场景:**
+
+- 读写分离架构下的核心解决方案,能系统性地解决 Compaction 和数据导入带来的缓存问题。
+- 对数据一致性和查询性能稳定性要求高的场景。
+
+> **[文档链接]**:关于如何配置和使用主动增量预热的详细信息,请参考官方文档 **[FileCache主动增量预热]()**。
+
+### 2. 只读计算组自动预热
+
+这是一种轻量级的自动预热策略。通过在**只读计算组**的 BE 节点上开启配置,使其在感知到新 Rowset 时,自动触发一个异步的预热任务。
+
+**适用场景:**
+
+- 配置简单,作为主动增量预热的替代方案或补充。
+- 对系统配置复杂度要求较低的场景。
+
+**核心配置:** 在只读计算组的 `be.conf` 中设置:
+
+```sql
+enable_warmup_immediately_on_new_rowset = true
+```
+
+### 3. 手工预热

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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to