# Контекст и определения

Архитектуры Lambda и Kappa — это два основных подхода к проектированию систем обработки больших данных, которые решают одну и ту же фундаментальную задачу: как обеспечить и актуальность данных (реальное время), и полноту/точность анализа (исторические данные), но делают это принципиально разными способами.

Если привести аналогию с кухней:

* **Lambda** — это большая столовая, где есть повар, который готовит блюда заранее (большими кастрюлями) по проверенным рецептам, и отдельный шеф-повар, который может мгновенно приготовить блюдо под конкретного гостя. Затем официант объединяет их подходы, чтобы дать гостю лучшее.
* **Kappa** — это современный ресторан с открытой кухней, где все блюда готовятся под каждого гостя индивидуально и сразу подаются, но при этом у повара всегда под рукой все ингредиенты и записи, чтобы быстро повторить любое блюдо, если нужно.

Ниже подробно разобраны обе архитектуры.

## Какую задачу решают Lambda и Kappa архитектуры?

Обе архитектуры предназначены для построения **систем обработки данных (data processing systems)**, которые должны соответствовать двум противоречивым требованиям:

1. **Низкая задержка (Low Latency):** Нужно обрабатывать данные по мере их поступления и получать результаты здесь и сейчас (например, для обнаружения мошенничества).
2. **Полнота и точность (Completeness & Accuracy):** Нужно обрабатывать все накопленные исторические данные, чтобы исправлять ошибки, пересчитывать метрики и строить точные отчеты (например, за месяц или год).

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