TGViewer
Сохранёнки программиста Сохранёнки программиста @prog_stuff · 6.52K subscribers
Post #3058 188
Ускорение строковых агрегаций в DuckDB через таблицу измерений

SQL-гайд по замене повторяющихся строк числовыми ключами показывает, как сократить обработку текста при группировке. Таблица измерений хранит каждое название один раз вместе с ключом: запрос считает группы по числам и возвращает названия после агрегации.

Пример построен на 380 959 записях об остановках поездов и 537 названиях станций. Для них хватает двухбайтового USMALLINT. Ключи назначаются в алфавитном порядке, поэтому сортировка по ключу сохраняет порядок названий. LEFT JOIN сохраняет строки без станции, с NULL вместо ключа.

Для инженеров данных разобраны два варианта: сохранить ключи в основной таблице или соединять её со справочником при каждом запросе. Первый требует переписать таблицу один раз; второй оставляет обработку строк при каждом соединении.

#производительность #гайды
More from @prog_stuff
  1. Oct 9, 2026Адаптивное разбиение HashJoin в Bolt: меньше повторных выгрузок на диск При соединении таб…
  2. Oct 8, 2026Детерминированные тесты TigerBeetle: проверки внутри реплик Обстоятельный разбор тестирова…
  3. Oct 8, 2026Автоматизация обслуживания ScyllaDB в Discord: устройство задач и сценариев Инженерный раз…
  4. Oct 7, 2026Как изолировать медленного WebSocket-клиента При блокирующей отправке клиент, который не у…
  5. Oct 7, 2026Как подготовить Rails-код к параллельной работе через Ractor Глубокий разбор адаптации Rai…
  6. Oct 6, 2026Почему BPF LPM trie замедляется с ростом таблицы префиксов Обстоятельный разбор сбоя Cloud…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →