metaclass: (Default)
[personal profile] metaclass
В результате запроса 150000 записей.
Размер временного файла для результата запроса, созданного Firebird - около 2Гб. Этот же результат, экспортированный в CSV - 5 мб.
13 килобайт на запись что ли, во временном файле. И фетч медленный как капец.
Надо, что-ли, во внутренности этого файла заглянуть будет как-нибудь, что ж там такое.
PS: при увеличении количества записей в запросе в 10 раз размер файла становится 2.2 гб. Сплошной wtf.
PPS: да это вообще абсурд - оно пишет во временный файл в три раза больше, чем читает с диска.

Date: 2013-04-24 12:47 am (UTC)
From: [identity profile] fraks-nsk.livejournal.com
По идее надо просто переписать запрос что бы группировка была по индексу или что бы при сортировке натуралом было минимум полей, остальные приджойнить потом.

Date: 2013-04-24 06:22 am (UTC)
From: [identity profile] metaclass.livejournal.com
Не, тут конкретно все поля нужны, и индекса нет (входные данные - несколько таблиц), без вариантов.

Date: 2013-04-24 06:30 am (UTC)
From: [identity profile] fraks-nsk.livejournal.com
Скинь мне на мыло DDL и запрос, у и в идеале - чуток данных на которых можно опираться.
Не встречался еще с такой ситуацией когда ничего кроме как пилить сервер сделать нельзя.

Date: 2013-04-24 06:38 am (UTC)
From: [identity profile] metaclass.livejournal.com
Сервер пилить не надо, надо алгоритм расчетов модифицировать.
За данные мне безопасники клиента оторвут голову :)

Date: 2013-04-24 06:50 am (UTC)
From: [identity profile] fraks-nsk.livejournal.com
Реальных данных мне не надо, просто такие что бы были похожи и можно было с тобой получаемые цифры обсуждать.

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

Date: 2013-04-24 07:08 am (UTC)
From: [identity profile] metaclass.livejournal.com
В данном случае клиентом будет сервер приложений, живущий рядом с FB.
В общем, там все равно надо переделывать, т.к. количество данных линейно растет со временем, поэтому нужно заменить на хранимые агрегаты и отслеживание изменений по ним.

Конкретно с этим запросом на данный момент ничего не сделаешь - он выгребает и сортирует 2 гб данных из двух таблиц соединенных джоином.

Date: 2013-04-24 06:34 am (UTC)
From: [identity profile] fraks-nsk.livejournal.com
мыло fraks собака sibverk точка ru

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 7th, 2025 08:15 pm
Powered by Dreamwidth Studios