INSERT в StarRocks: как три кластера раскрыли цену commit protocol
Сложный
12 мин
Туториал

tl;dr:
Каждая операция INSERT несет фиксированный overhead (в наших тестах 64–99 ms), независимо от количества строк.
Формула: Total_time = N_statements * fixed_overhead + actual_write_time — подтверждена тестами.
1000 single-row INSERT = 64 секунды (Shared-data) или 100 секунд (Shared-Nothing).
Разница не в диске и не в Docker, а в протоколе commit: TxnLog + publish через BRPC против 2PC + publish_version.
В ANALYZE PROFILE commit overhead прячется в разнице TotalTime - ExecutionTime — это FE overhead.
Батчинг нивелирует разницу: при INSERT SELECT оба режима дают ~0.25 с на 1000 строк.