PostgreSQL Antipatterns: куда крутить NULLS

Периодически приходится разбирать случаи внезапного промаха запроса мимо «вроде бы подходящего» индекса — а все дело оказывается в чуть-чуть не той сортировке. Читать далее…

Как защищать границы массива без команды BOUND

Я уже плакался по поводу исключения в x86-64 команд двоично-десятичной арифметики DAA/DAS и плакался по поводу отмены команды проверки целочисленного переполнения INTO. Теперь настала очередь плакаться по поводу выброшенной команды BOUND. Как говорится…

Псс, парень… индекс нужен?

Самый больной вопрос для любого разработчика, которому приходится вычитывать данные из базы: «Как сделать мой запрос быстрее?». Классический ответ — необходимо создать подходящий индекс. Но куда именно его стоит «накатывать», да и как вообще он должен …

Как мы оптимизировали i-запросы, а нашли неточности в документации Django

В современных веб-приложениях большинство запросов к базе данных пишется не на сыром SQL, а с использованием объектно-реляционного отображения (ORM). Оно автоматически генерирует SQL-запросы по привычному объектно-ориентированному коду. Однако эти запр…

PostgreSQL: занимательный пример работы индексов, планировщика запросов и магии

В начале месяца я прочитал доклад про индексы в базах данных для Saint P Ruby Community и буквально через несколько дней жизнь не замедлила подкинуть мне показательный пример работы индексов, планировщика баз данных и важности обновления СУБД.Итак, дан…

Запросы в PostgreSQL: 4. Индексное сканирование

Я уже рассказал об этапах выполнения запросов и о статистике и перешел к способам доступа к данным. В прошлый раз темой статьи было последовательное сканирование, а сегодня поговорим о сканировании индексном.Прежде чем погружаться в детали индексного д…

Укрощаем Manticoresearch

Manticoresearch это Open Source проект, форк проекта sphinxsearch от Андрея Аксенова и его команды. Проект позиционирует себя как открытое высокопроизводительное решение для полнотекствого поиска. Судя по бенчмаркам (правда от самих создателей Мантикор…

[Перевод] Поиск среди 10000 GitHub репозиториев на Postgres (используя только MacBook)

Привет!  Меня зовут Никита Галушко, я R&D-разработчик в Lamoda. Специально для Хабра я сделал вольный перевод интересной статьи “Postgres regex search over 10,000 GitHub repositories (using only a Macbook)”. Ее автор провел эксперимент: с…

Базы данных: большой обзор типов и подходов. Доклад Яндекса

Это конспект лекции Татьяны Денисовой — бэкенд-разработчика в Яндекс.Учебнике. Вы узнаете, какие бывают базы данных, какие их особенности важно помнить, как в работе с данными учитывать характеристики системы и планы масштабирования, в какую из тем нуж…