Выбор ответа Middle Производительность и память спрашивают часто обновлено

Когда помогает тип category

Вопрос

Для какой колонки перевод в category даст наибольшую экономию памяти?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: city: 30 млн строк, 200 уникальных городов. category хранит словарь уникальных значений и короткие целые коды.

Варианты ответа

  1. city: 30 млн строк, 200 уникальных городовправильный ответ
  2. email: 30 млн строк, почти все значения уникальны
  3. amount: 30 млн строк, числа float64
  4. created_at: 30 млн строк, даты заказов

Разбор

category хранит словарь уникальных значений и короткие целые коды. При 200 уникальных значениях на 30 млн строк экономия огромная. Если почти все значения уникальны, словарь будет размером с колонку плюс коды: станет только хуже. Числа и даты и так хранятся компактно, их ужимают другими способами.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.