Перейти к содержанию

Real-time fraud detection

Раздел 05 · Редакционный стандарт

Тип материала — референсная архитектура. HYPOTHETICAL — схемы и операции. INFERENCE — инженерные рекомендации и критерии выбора. Внешние контракты ограничены источниками ниже.

Бизнес-задача

Принять решение до денежного эффекта при неполных и запаздывающих признаках.

Требования

Разложить deadline на routing, feature fetch и inference. Определить policy деградации по риску. Сохранять model version и reason codes.

Поток данных и владение состоянием

flowchart LR
 A["Transaction ingress"] --> B["Kafka"]
 B --> C["Streaming features"]
 C --> D["Redis projection"]
 D --> E["Decision service"]

Input log и decision journal владеют своими фактами. Redis хранит serving state.

Транзакционные границы

Decision record хранит provenance. Ledger отдельно защищает расход. Engine checkpoint и Redis commit отделены.

Порядок и идемпотентность

Окна по event time. Dedup до counter update. Поздние события корректируют признаки без переписывания старого решения.

Нормальная последовательность

sequenceDiagram
 participant A as Transaction ingress
 participant B as Kafka
 participant C as Streaming features
 participant D as Redis projection
 A->>B: Publish transaction event
 B->>C: Apply unique event to event-time window
 C-->>B: Return versioned feature snapshot
 B->>D: Update Redis serving generation

Отказ и восстановление

sequenceDiagram
 participant B as Kafka
 participant C as Streaming features
 participant E as Recovery operator
 B->>C: Redis restore lags engine progress
 Note over B,C: Outcome becomes uncertain
 E->>C: Rebuild feature generation from durable input
 E->>B: Resume from verified boundary

После Redis loss перестроить generation и переключить после проверки completeness. Для stale features применить утверждённую degraded policy.

Сверка

Сравнить input coverage и features на одном cut. Labels анализировать с их задержкой.

Протокол решения. Для каждой попытки храните request ID, feature window end, generation, model version, outcome и причину fallback. Если события пришли вне порядка, в первую очередь восстановите окно признаков. Обработка новых событий может продолжаться с ранее опубликованной полной generation по согласованной policy. Допустимость stale read зависит от риска и максимальной задержки. По результатам offline replay сравнивайте решения на одинаковых версиях features и модели.

Наблюдаемость

Feature age, fallback rate, skew и drift.

Безопасность и применимость требований

Минимизировать PII. Ограничить доступ к model evidence.

Альтернативы и trade-offs

Sync gate защищает до эффекта, async monitoring имеет более свободный latency budget.

Вопросы на собеседовании

Можно ли доказать полноту Redis checkpoint-ом? Для этого нужна отдельная сверка serving state.

Первичные источники