关于 stream loader 和 group commit 的两个问题

Viewed 41

我遇到了一些问题,有人能帮我解答下吗,我使用的是 doris 3.0.4 版本

  1. 在一个 8C 64G 的存算一体集群中,我使用 doris stream load 对 1000 个表导入数据,每个表都在不同 db 下,每次 stream load 请求只携带了一条 1k 大小的数据,每个导入都是独立的线程,相对于 1000 个并发。此时我发现,QPS 只能达到 100 左右,其他的请求会进入 pending 直到 read time out. 我的问题是,是不是有 BE 配置能提升 stream load 的 qps 呢,还是说 stream load 不适合这种多个 table 同时导入的场景呢
  2. group commit 在多 table 导入时 cpu 负载特别高,把我的集群 CPU 直接打满了,我看占用 CPU 特别高的线程是 Scan_normal 和 Pipe_normal。我的测试集是 10 个并发导入的 stream load 请求,分别写入到不同的表,每次请求体只带了 1 条数据。 group commit 是不是也合适多 table 并发导入场景呢,还是说我的用法不对呢
1 Answers

1.你的stream load是怎么提交的?这时候集群的资源压力如何?pending状态怎么获取的?
2.Scan_normal和Pipe_normal占用高的话,这时候有查询吗?这两块查询线程