Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с группировкой / 25 сообщений из 25, страница 1 из 1
28.04.2004, 12:38
    #32500361
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
При группировке таблиц в Firebird 1.5 ( 20- 50 млн записей, на выходе несколько тысяч), команда срубается с сообщением о невозможности писать во временный файл (место на носителе есть). Возможно, размер временного файла не может превышать 2Г.

Вопросы
1. Есть ли выход без группировки таблицы по частям?
2. М.б. кто знает технологию, как интербейз делает группировку, ведь при этом создаются временные файлы превышающие по размеру рабочую базу?
...
Рейтинг: 0 / 0
28.04.2004, 12:44
    #32500378
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Может поможет в firebird.conf изменить параметр:

TempDirectories = c:\temp 100000000;d:\temp 500000000;e:\temp

Best regards,
Dnico.
...
Рейтинг: 0 / 0
28.04.2004, 12:48
    #32500391
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
А не FAT ли у тебя, о вопрошающий?!
...
Рейтинг: 0 / 0
28.04.2004, 12:49
    #32500396
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
В TempDirectories все прописано правильно, может использовать хоть все 50Г.
...
Рейтинг: 0 / 0
28.04.2004, 12:58
    #32500425
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
На диске NTFS
...
Рейтинг: 0 / 0
28.04.2004, 13:07
    #32500456
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
И TEMP на него настроен?
Точно ФАТа нету?
...
Рейтинг: 0 / 0
28.04.2004, 13:08
    #32500459
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Temp на него настроен, фатом даже не пахнет..
...
Рейтинг: 0 / 0
28.04.2004, 13:11
    #32500478
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
И квоты выключены? Или таки включены?
...
Рейтинг: 0 / 0
28.04.2004, 13:13
    #32500484
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Квоты где и на что?
...
Рейтинг: 0 / 0
28.04.2004, 13:16
    #32500491
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Квоты в NTFS, на пространство вестимо.
...
Рейтинг: 0 / 0
28.04.2004, 13:31
    #32500540
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Размер временного файла ограничен 1ГБ, но на их количество ограничений нет, так что должно работать. Виндовые TEMP и TMP обе ссылаются на свободное место?

При отсутствии индекса сервер группирует записи через внешнюю сортировку, отсюда и большие временные файлы (в temp выгружаются все исходные данные предшествующие группировке).

Каков средний размер записи до группировки?
...
Рейтинг: 0 / 0
28.04.2004, 13:32
    #32500546
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Квоты выключены. На данный момент группирую примерно треть базы с файлом размером 6Г, при этом Птица создала временных файлов в сумме на 12Г, чем она занимается :(
...
Рейтинг: 0 / 0
28.04.2004, 13:35
    #32500555
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Bill_ , а может тогда сам запрос напишешь?
А то уж как-то не понятно про 12 Гб ...
Может просто запрос не тянет?

Best regards,
Dnico.
...
Рейтинг: 0 / 0
28.04.2004, 13:49
    #32500619
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
2 dimitr

Средний размер записи около 160 байт.

2 Dnico

Запрос типа

insert into calls_tmp(serv,service,tarif,dir,cnt,dur,amnt,amnt2)
select serv,service,tarif,dir,count(*),sum(dur)/60,sum(amnt),sum(amnt2) from apr03 group by serv,service,tarif,dir;
...
Рейтинг: 0 / 0
28.04.2004, 13:52
    #32500630
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Насчет 12 гиг. Какая размерность полей serv, service, tarif, dir? Например, VARCHAR(2000) занимает места в БД не более, чем реальная длина строки + 2 байта. Во временном файле сортировщика он занимает 2кБ. Намек понятен?
...
Рейтинг: 0 / 0
28.04.2004, 13:56
    #32500649
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
А индекс по полям serv,service,tarif,dir есть ?
Если нет, то сделай ...


Best regards,
Dnico.
...
Рейтинг: 0 / 0
28.04.2004, 14:00
    #32500662
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Индекс тут до лампочки.
...
Рейтинг: 0 / 0
28.04.2004, 14:08
    #32500693
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
2 dimitr

Понятен, есть одно поле varchar(240), которое обычно char(4), спасибо, на будущее учту но сейчас не переделаешь.

2 Dnico

Накладно как то индексы то делать, по времени ничего не выиграю :( .
...
Рейтинг: 0 / 0
28.04.2004, 14:13
    #32500702
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Как так не выигрывает? Почему у меня раз в xxxx групируется быстрее, а у тебя нет выигрыша?

Best regards,
Dnico.
...
Рейтинг: 0 / 0
28.04.2004, 14:28
    #32500746
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Индекс для группировки на таких объемах может заметно ухудшить производительность. Все зависит от эффективности страничного кеша. Правда, от ошибок "невозможности писать во временный файл" можно будет избавиться...
...
Рейтинг: 0 / 0
28.04.2004, 14:36
    #32500775
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Вроде разобрался, спасибо всем. Винда оказывается тоже начинает временные файлы интенсивно писать и они с Птицей самый маленький системный винт выжирают.
...
Рейтинг: 0 / 0
28.04.2004, 14:47
    #32500809
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
dimitr
Вот тут вспомнил одну проблемму.
Вообщем крутил я один запрос с кучей JOIN и заметил, что при использовании
двух разных индексов соответсвенно получалось разное время выполнения.
Так вот загвоздка в том, что по умолчаний использвался "медленный" индекс.
Пришлось создавать дополнительно индекс, чтобы он мог использоваться и не тормозить запрос.
Что тут можно придумать?

Best regards,
Dnico.
...
Рейтинг: 0 / 0
28.04.2004, 14:56
    #32500841
Bill_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Вроде в IBase можно указывать принудительно какой индекс использовать.
...
Рейтинг: 0 / 0
28.04.2004, 15:01
    #32500860
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Стук в подвале. Какой джойн, какие индексы, что есть "медленный" индекс и т.п. Примеры надо готовить для всех таких случаев.
...
Рейтинг: 0 / 0
28.04.2004, 15:02
    #32500863
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с группировкой
Да сейчас уже и не помню ... как натолкнусь, тогда напишу ...

Best regards,
Dnico.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с группировкой / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]