Как устроены миграции БД? Практика реализации миграций Позволяют управлять изменениями схемы БД во времени Фиксируют последовательность изменений DDL Миграции представляют собой версионируемые скрипты для создания,…
Как устроены некластеризованные индексы? База данных использует индекс для поиска записей в таблице Индекс представляет собой самостоятельную структуру, например B-дерево В нём хранятся ключи и ссылки на строки данных…
SQL-инструмент для выполнения аналитических вычислений над набором строк Они анализируют окно строк относительно текущей записи, не объединяя результат в одну строку Границы окна задаются конструкцией OVER(), где…
Поколения (generations) и условия запуска сборщика мусора Поколения — это подход к управлению памятью, при котором объекты распределяются по продолжительности жизни: на молодое (new), старое (old) и, в некоторых…
серверный механизм, позволяющий сохранять состояние между запросами при запуске сессии создаётся уникальный session_id session_id отправляется клиенту через cookie или URL сессионные данные хранятся на сервере: в…
Хранение крупных бинарных данных (BinaryField) в Postgres Для бинарных данных Postgres предоставляет тип bytea его предельный размер составляет примерно 1 ГБ на одну строку для более объемных файлов целесообразно…
Работа с БД/Оптимизация: Применять пагинацию либо потоковое чтение (cursor/stream), разделяя выборку на управляемые части Извлекать только нужные поля, а не всю строку целиком (projection) Выделять память для данных…
SQL и оптимизация запросов Сначала точно определить ключи соединения — PK и FK. Для обязательных связей применять INNER JOIN, а для необязательных — LEFT JOIN. Сокращать объем промежуточных данных, выполняя фильтрацию…
Наиболее важные статус-коды для тестировщиков HTTP-протокол и взаимодействие между клиентом и сервером 200 OK — запрос выполнен успешно 201 Created — ресурс был создан 204 No Content — операция завершена успешно, но…
REST представляет собой архитектурный стиль построения API. К основным HTTP-методам относятся: GET — получение ресурсов POST — создание ресурсов PUT — полная замена ресурса PATCH — частичное изменение ресурса DELETE —…
Какие HTTP-методы используются помимо GET, PUT, POST и PATCH DELETE — удаляет ресурс HEAD — возвращает заголовки без тела ответа OPTIONS — сообщает о поддерживаемых методах TRACE — выполняет диагностический цикл…
Идемпотентность HTTP-методов к идемпотентным относятся: GET, PUT, DELETE, HEAD, OPTIONS, TRACE повторное выполнение запроса не приводит к изменению результата после первого вызова (состояние сервера остается тем же)…