集群结构
BE NODE(backend):存储数据并实际执行SQL。执行结果返回给FE,然后返回给客户。 FE NODE: 操作前台页面。可以执行SQL,查看集群的元数据(分片,机器信息)等。
数据分区(分片)
数据分区是指存在BE节点上的数据跟进分区跟分桶策略将数据划分成一个一个的片,也就是分片。分片好的数据,是doris管理数据的最小单位。也是数据移动跟复制的最小单位。
分区策略
分区是数据分片的第一级策略。 有2种分区类型跟三种分区模式。 分区类型:
range 范围分区
根据数据范围将数据行分到不同分区。
list 列表分区
根据特定值将数据行分到不同分区。 三种分区模式:
手动分区
动态分区
自动分区
可能有脏数据。
分桶策略
分桶是数据分片的第二级策略。将数据在同一个分区内划分成更小的单元。
hash 哈希分桶
通过计算分桶列的 crc32 哈希值并取分桶数的模数,将数据行均匀分布在分片之间
Random 随机分桶
将数据行随机分配给分片。使用 Random Bucketing 时,可以使用 load_to_single_tablet 选项来优化小规模数据的快速写入