172 похожих чатов

Привет. Мы тут столкнулись с тем, что count(*) с where

отрабатывает долго. В таблице около 6 лямов записей. Кто-то сталкивался с таким? Как решали? Вариант с добавлением в бд поля, которое будет инкрементить при добавлении новой записи - не подходит

Вот, что выводит explain
```
Finalize Aggregate (cost=301225.75..301225.76 rows=1 width=8)
-> Gather (cost=301225.54..301225.75 rows=2 width=8)
Workers Planned: 2
-> Partial Aggregate (cost=300225.54..300225.55 rows=1 width=8)
-> Parallel Seq Scan on tradingbot_logs (cost=0.00..296510.03 rows=1486203 width=0)
Filter: (((event_type)::text <> 'candle_data_received'::text) OR (event_type IS NULL))
JIT:
Functions: 6
" Options: Inlining false, Optimization false, Expressions true, Deforming true"
```

5 ответов

5 просмотров

Все сталкивались. Сделать ничего нельзя, потому что 1) условие у вас такое, что под него подходит больше полтаблицы, поэтому выбранный способ Parallel Seq Scan — правильный 2) даже если подпереть конкретный фильтр индексом, то всё равно надо лазать в таблицу и перепроверять из-за MVCC Вот если вам нужно лишь приблизительное значение — тогда есть способы. Ну и есть способ с подсчётом в триггере, о котором вы упомянули

Ну, добавьте два поля, которых будут инкрементить при добавлении новой записи, делов-то.

Не выходи из комнаты.
не вариант

Тогда страдать. ЗЫ Нет, то есть можно было бы подумать если бы ты нормально поставил задачу. А вот эти все -- не вариант -- ну раз ты такой умный, то думай сам.

Угу. Хотелось бы.

Похожие вопросы

Обсуждают сегодня

Если у меня есть такой класс: Object = {} function Object:new(a_name, a_transform, a_color, a_mesh, a_material, a_shader, a_textures) local private = {} private.n...
Cuarno Vile
4
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
зачем же переименовывать ? чтобы кол-во участников возросло или вдруг IBM от этого снова на свифте начнет кодить ? Я не понимаю что страшного в том что свифт гавно, если это т...
Oleh Nerzh
10
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
здравствуйте. совершаю вот такую вещь: strcpy(line, (char)current_number); где current number — неподписанный шорт, line — массив чаров. ругань следующая: main.c:29:30: error...
Roberto's Ширгозиев
13
@NikaBelurgHR Бот? Ассемблер?
КТ315
11
юзеры Jetpack Compose тут?
Qtless Qtless
8
Добрый день! Подскажите, пожалуйста: какими компетенциями нужно обладать, чтобы претендовать на работу эрланг (отдельная благодарность, если про элексир тоже подскажете) разр...
via ☸️ led
20
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Карта сайта