Вопросы с тегом «postgresql-performance»

Проблемы с производительностью запросов PostgreSQL

1
pgAdmin работает крайне медленно при любой удаленной операции
Я запускаю этот запрос из моего локального pgAdmin, подключаясь удаленно к нашему dev-серверу: select * from users order by random() limit 1; он висит на 17 секунд и показывает Total query runtime: 148 ms. 1 row retrieved. он также зависает при любой операции: даже при щелчке правой кнопкой мыши на …

3
Запрос PostgreSQL очень медленный при добавлении подзапроса
У меня есть относительно простой запрос к таблице с 1,5M строк: SELECT mtid FROM publication WHERE mtid IN (9762715) OR last_modifier=21321 LIMIT 5000; EXPLAIN ANALYZE вывод: Limit (cost=8.84..12.86 rows=1 width=8) (actual time=0.985..0.986 rows=1 loops=1) -> Bitmap Heap Scan on publication (cost=8.84..12.86 rows=1 width=8) (actual time=0.984..0.985 rows=1 loops=1) Recheck Cond: ((mtid …

1
как использовать индекс для ускорения сортировки в postgres
Я использую Postgres 9.4. Схема messagesимеет следующую схему: сообщения принадлежат feed_id, и имеет posts_at, также сообщения могут иметь родительское сообщение (в случае ответов). Table "public.messages" Column | Type | Modifiers ------------------------------+-----------------------------+----------- message_id | character varying(255) | not null feed_id | integer | parent_id | character varying(255) | posted_at | timestamp …

1
Медленное время запроса на поиск сходства с индексами pg_trgm
Мы добавили два индекса pg_trgm в таблицу, чтобы включить нечеткий поиск по адресу электронной почты или имени, так как нам нужно найти пользователей по имени или адресам электронной почты, которые были написаны с ошибками при регистрации (например, «@ gmail.con»). ANALYZEбыл запущен после создания индекса. Однако выполнение ранжированного поиска по любому …

1
PostgreSQL - работа с массивом из тысяч элементов
Я ищу, чтобы выбрать строки на основе того, содержится ли столбец в большом списке значений, которые я передаю в виде целочисленного массива. Вот запрос, который я сейчас использую: SELECT item_id, other_stuff, ... FROM ( SELECT -- Partitioned row number as we only want N rows per id ROW_NUMBER() OVER (PARTITION …

1
Влияние кластера на производительность
Я пытаюсь оптимизировать базу данных Postgres 9.2 для ускорения запросов с ограничениями по дате. У меня есть timestampстолбец, но в основном я спрашиваю о каком-то дне, поэтому я создал индекс timestampдля dateанализа: CREATE INDEX foo_my_timestamp_idx ON foo USING btree ((my_timestamp::date) DESC); Теперь, чтобы увеличить производительность, я CLUSTER fooиспользую таблицу, указанную …

3
Ускорить создание частичного индекса Postgres
Я пытаюсь создать частичные индексы для большой (1,2 ТБ) статической таблицы в Postgres 9.4. Мои данные полностью статичны, поэтому я могу вставить все данные, а затем создать все индексы. В этой таблице размером 1,2 ТБ у меня есть столбец, run_idкоторый четко разделяет данные. Мы добились отличной производительности, создав индексы, которые …

2
Оптимизация запросов по диапазону временных отметок (один столбец)
Я использую Postgres 9.3 через Heroku. У меня есть таблица «трафик» с 1M + записями, которая имеет много вставок и обновлений каждый день. Мне нужно выполнить операции SUM по всей этой таблице за разные промежутки времени, и эти вызовы могут занять до 40 секунд, и я хотел бы услышать предложения …

3
Оптимизация ORDER BY в полнотекстовом поисковом запросе
У меня есть большая таблица entitiesс ~ 15M записей. Я хочу найти топ-5 строк, соответствующих «хоккею» в их name. У меня есть полнотекстовый индекс name, который используется:gin_ix_entity_full_text_search_name Запрос: SELECT "entities".*, ts_rank(to_tsvector('english', "entities"."name"::text), to_tsquery('english', 'hockey'::text)) AS "rank0.48661998202865475" FROM "entities" WHERE "entities"."place" = 'f' AND (to_tsvector('english', "entities"."name"::text) @@ to_tsquery('english', 'hockey'::text)) ORDER BY …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.