реклама
разместить

PostgreSQL – короткий динамический индекс

Как сделать короткий (частичный) динамический (покрывающий плавающее/скользящее окно данных) индекс для большой таблицы.

Использование короткого индекса может ускорить запросы. Индекс создается параллельно основному. Коротким он называется потому, что в него попадает ограниченный набор данных (в примере ниже это записи не старше 7 дней).

Пример …

CREATE TABLE test ( created_at timestamptz ); CREATE FUNCTION your_index_low_value() RETURNS timestamptz AS $$ SELECT CURRENT_DATE - 7 $$ -- не старше 7 дней LANGUAGE SQL IMMUTABLE; CREATE INDEX your_index ON test(created_at) WHERE created_at >= your_index_low_value();

Теперь самое главное – как сделать индекс динамическим, для этого необходимо сделать job, который будет раз в сутки запускать вот такую команду …

REINDEX INDEX CONCURRENTLY your_index;

Готово. Индекс перестраивается достаточно быстро, к тому же его перестроение не блокирует транзакции. Даже если с ним что-то случится – не страшно, основной индекс всегда подстрахует. Все запросы к таблице test будут отдавать предпочтение этому индексу (проверить надо обязательно), если он подходит под условия запроса. Функция обязательно должна быть IMMUTABLE и возвращать тот же тип данных, что и поле, с которым она сравнивается.

Небольшое неудобство состоит в том, что в условии запроса, для сравнения с полем, на которое поставлено ограничение, можно использовать только константу или IMMUTABLE функцию.

Обратите внимание, что короткие индексы не всегда дадут солидный профит, уточняйте эффект в практическом тесте.

реклама
разместить
Начать дискуссию
Как внедрить искусственный интеллект в бизнес и не слить бюджет? Гайд для предпринимателей

Искусственный интеллект сейчас на хайпе: одни компании он ускоряет, другие – рушит. Одни внедряют его стратегически, другие – просто потому, что «так надо». В итоге часть бизнеса выигрывает, а часть теряет деньги и время. Чтобы этого не произошло с вами, я подготовил чёткий гайд – как внедрять ИИ в бизнес правильно.

Как внедрить искусственный интеллект в бизнес и не слить бюджет? Гайд для предпринимателей
33
22
11
11
11
реклама
разместить
23 ключевые HR-метрики в 2025 году и как ими пользоваться

Мир меняется стремительно, и вместе с ним меняется рынок труда. Конкуренция за лучшие таланты возрастает, а их удержание становится сложнее.

23 ключевые HR-метрики в 2025 году и как ими пользоваться
99
44
11
Превращение потенциальных клиентов в покупателей: эффективные стратегии
Превращение потенциальных клиентов в покупателей: эффективные стратегии
Динамические места на поиске в Яндекс Директ

В статье рассмотрю возможности и перспективы бета-функционала.

Динамические места на поиске в Яндекс Директ
11
Кратно ускоряем потоки данных

Как правило мы находимся в условиях, когда за короткий срок нужно выдать максимум функциональности, обеспечив при этом должный уровень производительности приложения. И если функциональным требованиям уделяют основное внимание, то вопрос производительности воспринимают как само собой разумеющееся. А что делать, если сроки сжаты до предела, уже имеет…

Как сэкономить деньги и нервы с помощью ИИ-сотрудника: разговор о клиентах и времени
Как сэкономить деньги и нервы с помощью ИИ-сотрудника: разговор о клиентах и времени

Итак, давайте поговорим об одной из тех идей, которая, видимо, кажется слегка сложной, но на самом деле проще, чем кажется. Представьте себе ситуацию, где ваши клиенты получают ответы быстрее, чем успевают написать «Спасибо». Вот буквально за три секунды! Это все благодаря современным технологиям, которые немного напоминают электронного сотрудника,…

1010
22
11
Рассылка с вау-эффектом: как увеличить продажи по своей базе с помощью MMS

Визуальное потребление остается в тренде — убедить аудиторию принять решение о покупке легче через комбинацию текста и изображения. А значит, MMS-рассылка может стать полезным инструментом для увеличения продаж. Например, показатель кликабельности MMS — от 5%, но может достигать 40–60%, рекордных для маркетинговых KPI. Для сравнения: CTR у SMS- и e…

Рассылка с вау-эффектом: как увеличить продажи по своей базе с помощью MMS
Кейс “Как сэкономить 100 000 на подборе сотрудника”
Кейс “Как сэкономить 100 000 на подборе сотрудника”

Найти сильного сотрудника - задачка не из лёгких. Сильные кандидаты либо вчера получили оффер, либо уже заняты работой. Наша цель - найти лучшего из лучших при минимальных вложениях.

11
[]