awesome-everything EN
↑ Обратно к восхождению

Data engineering

OLTP vs OLAP: тест с множественным выбором

Суть Тест на синтез по всему юниту OLTP vs OLAP — row store против column store, column pruning, сжатие, векторизация, авария от аналитики на реплике и когда разделять хранилища.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на senior-высоте — в орбите
◷ 12 min

Шесть вопросов, проходящих через весь юнит. Каждый отражает решение, которое вы принимаете на реальном архитектурном ревью, — не определение для пересказа, а компромисс, который надо взвесить, когда дашборд и путь оформления заказа делят одну базу.

Цель

Убедитесь, что вы связываете физический layout, множители column store, режим отказа «аналитика на реплике» и решение о разделении хранилищ — тот синтез, к которому вёл обзорный урок.

Викторина

Запрос считает SUM(total) по 40M строкам orders, у каждой по 50 колонок. Почему column store громит row store именно на этом запросе?

Викторина

Сервис A делает point lookup по id со скоростью 5k req/s; сервис B гоняет агрегат по колонкам тех же данных. Почему один layout не может хорошо обслуживать обоих?

Викторина

На ClickBench из 100M строк ClickHouse хранит данные примерно в 9 GiB там, где Postgres нужно около 100 GiB. Почему column store сжимает настолько лучше и почему это расширяет разрыв в пропускной способности скана, а не просто экономит диск?

Викторина

Дашборд growth-команды гоняет 90-дневный агрегат выручки против прод-реплики Postgres. Checkout p99 прыгает с 40ms до 2s, а replica lag растёт до 90s. Какую первопричину senior назовёт первой?

Викторина

Продукт хочет 90-дневный дашборд выручки. Какую из четырёх архитектур senior выкатит и почему?

Викторина

Команда предлагает HTAP-движок, чтобы обслуживать и транзакции, и аналитику на одной системе, утверждая, что это снимает нужду разделять хранилища. Какова senior-формулировка?

Итог

Сквозная линия юнита — одно решение: паттерн доступа задаёт layout. Point lookup и мелкие записи хотят row store; сканы всей таблицы по нескольким колонкам хотят column store, где pruning (читать ~6% байтов), сжатие 5–10× и векторизованное пакетное выполнение складываются в разрыв 10×–1000×, который не закроет ни один индекс. Классический senior-провал — аналитика на прод-реплике OLTP, где один скан вытесняет горячий buffer cache, конкурирует за I/O и поднимает replica lag. Фикс архитектурный — отдельный колоночный store, кормимый через CDC или ETL, — с принятием небольшой задержки данных ради изолированных хранилища, кэшей и failure domains. HTAP может управлять конкуренцией, но никогда её не отменяет.

Продолжить восхождение ↑OLTP vs OLAP: тест на свободное воспроизведение
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.