安然写字的地方

Doris

Doris 介绍

介绍中,Doris可以支持到在线场景业务中很高的并发请求,很好奇是如何做到了

查阅了一些资料,关于支撑高并发请求,可以分为两部分

  • 第一,要解决单一查询所占用的资源开销的问题。比如一个查询需要发送到一百台机器去查询,它的扇出特别大,并发是肯定很低的。所以我们会通过分区裁剪,分桶裁剪等,尽量把一个查询限制在某一台机器上,甚至是某一个数据分片上。这样单个查询的资源开销足够的小,那整个集群的整体的并发支持就会很高。
  • 第二,如果是在数据湖上的这种高频发查询的话,其实本质上还是会回归到关于远端存储 IO 的一些问题上来。也就是尽量去减少小 IO 的远端查询或者通过缓存来解决热数据查询,因为 remote IO 的 overhead 是没法彻底根除的。它跟远端存储的网络,访问的特性都有关系。所以说本质上还是要通过一些 cache 和 buffer 特性来去消除这些远端存储的 IO 的次数以达到一个高并发的效果。