Logo

Блог разработчика Ильи О. 👨‍💻

ВсеPostgreSQLSQL

Как запустить несколько экземпляров Redis

Несмотря на то, что Redis поддерживает несколько баз данных, каждую БД удобнее хранить в отдельном экземпляре Redis, чтобы она имела свой собственный файл с дампом и отдельный конфиг. Чтобы реализовать это, можно запускать Redis либо в различных...

Как запустить несколько экземпляров Redis

Как создать свой почтовый сервер (часть 2)

В первой части данной статьи мы говорили про теоретическую часть, как работает Postfix и Dovecot. Если вы ее пропустили, я настоятельно рекомендую с ней ознакомиться, чтобы понять основы. Иначе, если что-то не будет работать, вы не будете знать как это...

Как создать свой почтовый сервер (часть 2)

Миграции и декларативное управление схемой

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

Миграции и декларативное управление схемой

Как получить N строк для каждой группы в SQL

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

Как получить N строк для каждой группы в SQL

Как лучше хранить диапазоны дат в PostgreSQL

В некоторых случаях необходимо хранить в базе данных диапазон дат (например, брони номеров в гостинице, события в календаре). В последствии, обычно, требуется найти записи в базе, у которых диапазон дат пересекается с указанным. Например, вывести все...

Как лучше хранить диапазоны дат в PostgreSQL

Сравнение индексов в PostgreSQL для поиска по тексту (часть 1)

При создании сервиса мне потребовалось реализовать поиск по разным сущностям (компаниям, сообщениям, документам и др). Каждая сущность имеет свою длину строки, по которой нужно производить поиск. Например, компания имеет короткое название (в среднем...

Сравнение индексов в PostgreSQL для поиска по тексту (часть 1)