建议避免的场景
避免在生产集群大规模周期性调度离线/批 ETL 作业(insert into select / create table as select),尤其在同一个集群中同时运行离线、在线业务,离线作业会占用较大资源从而影响在线业务的稳定性与性能。
说明:
建议离线/在线业务通过不同的集群隔离,或提前通过 Spark 完成离线处理后,再将数据写入 Doris。
避免逐条 insert into:Doris 每个 insert into 都是一个事务,逐条写入可能导致并发超过事务上限。
说明:
建议进行攒批,如每个 insert into 几十或上百条数据,以降低写入压力。
1.2内核版本:尽量避免使用复杂数据类型(例如 MAP、ARRAY、STRUCT 等)。
1.2内核版本:对复杂数据类型的支持不够完善,部分写入和查询可能会报错。
建议避免的查询
尽量避免在多列且数据规模较大的表上进行 select * 查询。
避免全局开 profile(这会带来较大的资源开销,因此建议仅对需要的 SQL 语句开启 profile)。
尽量避免多个大表 Join。
说明:
涉及多个大表关联时,建议可转为大表两两 join 并使用 Colocation Join,或使用预聚合表、索引等进行查询加速。
建议避免的功能
1.2内核版本:尽量避免开启 merge_on_write(此功能暂不成熟)。
1.2内核版本:尽量避免开启 Light scheme change(此功能暂不成熟)。
本页内容是否解决了您的问题?