Индексирование и масштабирование
5.12 Индексирование и масштабирование
Система записи — один управляемый инстанс Postgres (Neon) с обычными B-tree индексами; разработку и продакшен обслуживают отдельные ветки. Представительные классы индексов:
| Таблица | Индекс | Использование |
|---|---|---|
receipts | пользователь + время загрузки | Список чеков пользователя |
receipts | продавец + время загрузки | История продавца |
receipt_line_items | канонический продукт | Чтение истории цен |
price_epoch_observations | epoch + индекс листа | Чтение epoch и доказательства включения |
contribution_point_events | пользователь + время создания | Запросы баланса |
merchants | налоговый номер + страна (уникальный, частичный) | Разрешение идентичности продавца |
Партиционирование receipts и receipt_line_items по времени и перенос старых данных в более дешёвый аналитический слой — варианты масштабирования на случай, когда объём этого потребует; текущий объём обслуживается одним инстансом и обычным индексированием. Конкретная настройка движка остаётся во внутреннем операционном слое.