Запитання з тегом «query-performance»

Питання щодо підвищення продуктивності та / або ефективності запитів до бази даних.

4
Чи краще розділити великий запит на кілька менших запитів?
Є ситуації, які вимагають, щоб дійсно великий запит об'єднав кілька таблиць разом із заявами про підбір, щоб отримати бажані результати. Моє запитання: чи варто розглянути можливість використання декількох менших запитів та ввести логічні операції в прикладний рівень, запитуючи БД у кількох викликах, або краще, щоб їх було за один раз? …

1
Небажана Nest Loop проти Hash Приєднуйтесь до PostgreSQL 9.6
У мене проблеми з плануванням запитів PostgreSQL 9.6. Мій запит виглядає приблизно так: SET role plain_user; SELECT properties.* FROM properties JOIN entries_properties ON properties.id = entries_properties.property_id JOIN structures ON structures.id = entries_properties.entry_id WHERE structures."STRUKTURBERICHT" != '' AND properties."COMPOSITION" LIKE 'Mo%' AND ( properties."NAME" LIKE '%VASP-ase-preopt%' OR properties."CALCULATOR_ID" IN (7,22,25) ) …

3
Запит на 100 разів повільніше в SQL Server 2014, рядок Spool Count Spool оцінюють винуватця?
У мене є запит, який працює в SQL Server 2012 за 800 мілісекунд і займає близько 170 секунд у SQL Server 2014 . Я думаю, що я звузив це до поганої оцінки кардинальності для Row Count Spoolоператора. Я читав трохи про операторів котушки (наприклад, тут і тут ), але все …

2
Як зробити DISTINCT ON швидшим у PostgreSQL?
У мене є таблиця station_logsв базі даних PostgreSQL 9.6: Column | Type | ---------------+-----------------------------+ id | bigint | bigserial station_id | integer | not null submitted_at | timestamp without time zone | level_sensor | double precision | Indexes: "station_logs_pkey" PRIMARY KEY, btree (id) "uniq_sid_sat" UNIQUE CONSTRAINT, btree (station_id, submitted_at) Я …

1
Повільний порядок роботи на SQL Server
У своїй програмі у мене є запит, який виконує пошук у таблиці "файли". Таблиця "файли" розділена на "f". "Створена" (див. Визначення таблиці і має ~ 26 мільйонів рядків для клієнта 19 ("f". "Cid = 19). Справа в тому, якщо я роблю цей запит: SELECT "f"."id" AS "FileId" , "f"."name" AS …

3
Емуляція визначеної користувачем скалярної функції таким чином, що не перешкоджає паралелізму
Я намагаюся зрозуміти, чи існує спосіб, як обдурити SQL Server, щоб використовувати певний план для запиту. 1. Навколишнє середовище Уявіть, що у вас є деякі дані, якими можна ділитися між різними процесами. Отже, припустимо, у нас є деякі результати експериментів, які займають багато місця. Потім для кожного процесу ми знаємо, …


2
Чи можу я відновити цей запит, щоб змусити його паралельно працювати?
У мене є запит, який триває близько 3 годин для запуску на нашому сервері - і це не використовує переваги паралельної обробки. (близько 1,15 млн записів dbo.Deidentified, 300 записів у dbo.NamesMultiWord). Сервер має доступ до 8 ядер. UPDATE dbo.Deidentified WITH (TABLOCK) SET IndexedXml = dbo.ReplaceMultiWord(IndexedXml), DE461 = dbo.ReplaceMultiWord(DE461), DE87 = …

1
Як я можу змусити скалярну ОДС оцінюватись лише один раз у запиті?
У мене є запит, який повинен відфільтрувати результат скалярної АДС. Запит повинен бути надісланий як одне твердження (тому я не можу призначити результат UDF локальній змінній), і я не можу використовувати TVF. Мені відомо про проблеми з ефективністю, спричинені скалярними АДС, які включають примушування послідовно виконувати весь план, надмірні обсяги …

1
продуктивність postgres_fdw повільна
Наступний запит на іноземному ринку займає близько 5 секунд для виконання на 3,2 мільйона рядків: SELECT x."IncidentTypeCode", COUNT(x."IncidentTypeCode") FROM "IntterraNearRealTimeUnitReflexes300sForeign" x WHERE x."IncidentDateTime" >= '05/01/2016' GROUP BY x."IncidentTypeCode" ORDER BY 1; Коли я виконую той самий запит у звичайній таблиці, він повертається за .6 секунд. Плани виконання досить різні: Нормальна …

1
Як оптимізувати запит, щоб він спочатку шукав один індекс, а потім інший індекс
У мене є два набори вимірювань Землі за супутниковими даними, кожен з полями часу (mjd - середня юліанська дата) та географічними положеннями (GeoPoint, просторовий), і я шукаю збіги між двома наборами, щоб їх час відповідав порогу 3 години (або .125 днів) та їх відстань в межах 200 км один від …

2
Ефективний спосіб порівняння двох великих наборів даних у SQL
В даний час я порівнюю два набори даних, які містять унікальні StoreKey/ProductKeyкомбінації. 1-й набір даних має унікальні StoreKey/ProductKeyкомбінації для продажів з початку січня 2012 року до кінця травня 2014 року (результат = 450 К рядків). Другий набір даних має унікальні StoreKey/ProductKeyкомбінації: продажі починаються з червня 2014 року до сьогодні (результат …

4
Робота з CXPACKET чекає - встановлення порогу вартості для паралелізму
Як наступне моє попереднє запитання щодо усунення неполадок, пов’язаних з парфумерією на сайті Sharepoint , мені було цікаво, чи зможу я щось зробити щодо того, як чекає CXPACKET. Я знаю, що рішенням колінного ривка є вимкнути весь паралелізм, встановивши MAXDOP на 1 - це звучить як погана ідея. Але інша …

3
Чому сукупний запит значно швидше з пунктом GROUP BY, ніж без одного?
Мені просто цікаво, чому сукупний запит працює так швидше з GROUP BYпропозицією, ніж без жодного. Наприклад, цей запит займає майже 10 секунд SELECT MIN(CreatedDate) FROM MyTable WHERE SomeIndexedValue = 1 Хоча ця займає менше секунди SELECT MIN(CreatedDate) FROM MyTable WHERE SomeIndexedValue = 1 GROUP BY CreatedDate У CreatedDateцьому випадку є …

5
Підвищити швидкість видалення для SQL Server
У нас величезна виробнича база даних, її розмір становить близько 300 ГБ. Чи є якийсь підхід до підвищення ефективності запиту на видалення? Зараз швидкість видалення становить від 1-10 к в хвилину, для нас це дуже повільно.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.