Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / alter tablespace / 8 сообщений из 8, страница 1 из 1
23.07.2012, 10:23
    #37888735
jack_nsk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
всем доброго времени суток!

что-то я немного запутался...

некий скрипт автоматически создал пустую базу данных.
в ней все табличные пространства = 16к

в документации есть строка, в которой
автор• Ensure that the software has a temporary table space with a page size of 32K.
насколько я понимаю, мне нужно изменить размер TEMPSPACE1 = 32k
(т.к. судя по выполнению другого скрипта по заливке данных в базу не хватает размера журналу фиксации транзакций)

т.к. в базе существует только один пул IBMDEFAULTBP = 16k
я создал ещё один пул BP3=32k

затем попытался изменить табличное пространство
авторalter tablespace tempspace1 reduce 32 k bufferpool bp3;
выдало ошибку
авторInvalid ALTER TABLESPACE statement for table space "TEMPSPACE1" due to reason "10". SQLCODE=-1763, SQLSTATE=429BC, DRIVER=4.13.111

в какую сторону смотреть ?
...
Рейтинг: 0 / 0
23.07.2012, 12:26
    #37888979
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
Создайте новое tablespace.

Кроме того, лично я подумал бы насчёт порыться бы в скрипте и, поправив его, пересоздать всю базу заново со страницей в 32K. Из паранойи переспросил бы разработчиков - возможно, у них есть какие-то особенные соображения или даже предрассудки (но придётся уважать даже предрассудки, иначе, не дай бог, откажутся сопровождать или ещё что). Но, навскидку, никаких проблем не должно быть, в том числе и с производительностью. В самом деле, у вас просто прибавляются лимиты - можете хранить больше строк, например. Для современного винчестера блок хоть в 16К, хоть в 32К считывается за примерно равное время, поскольку оно уходит на seek time по большей части, т.е. считывание одной строки сильно пострадать не должно (несколько процентов я ни за что не считаю), а на fullscan'ах может быть неплохой выигрыш. На SSD, конечно, может быть и по-другому.
...
Рейтинг: 0 / 0
23.07.2012, 12:46
    #37889017
jack_nsk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
Victor MetelitsaКроме того, лично я подумал бы насчёт порыться бы в скрипте и, поправив его, пересоздать всю базу заново со страницей в 32K.
Виктор, спасибо, уже :)
автор# create database DS14 for dataservices repository
echo ----------------------------------
echo " 4. Create database DS14 for dataservices repository"
echo ----------------------------------
su $db2owner -c "db2 CREATE DATABASE DS14 ALIAS DS14 PAGESIZE 32 K"

Victor Metelitsa Из паранойи переспросил бы разработчиков - возможно, у них есть какие-то особенные соображения или даже предрассудки (но придётся уважать даже предрассудки, иначе, не дай бог, откажутся сопровождать или ещё что).
у разработчиков спросить не получится - они где-то в недрах САПа...
я просто взял свежий дистриб, поставил, словил ошибку - значит поправят месяца через 1,5-2, когда большая рыба из саповских клиентов поймается на этот же крючок
...
Рейтинг: 0 / 0
23.07.2012, 16:13
    #37889392
mustaccio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
Victor MetelitsaДля современного винчестера блок хоть в 16К, хоть в 32К считывается за примерно равное время

Дело не только (и не столько) в эффективности физических операций чтения. Размер страницы влияет также на эффективность буферного пула (фактически вы впустую расходуете 16К памяти, если вам нужна лишь одна запись на странице) и на конкуренцию процессов, устанавливающих защелки (latches) при обновлении страниц буферного пула. В сильно нагруженных системах обработки транзакций, типа процессинга кредитных карт, неоправданное использование слишком больших страниц (например, 32К вместо фактически необходимых 8К) может иметь очень серьезные последствия для общей производительности -- убеждался на собственном опыте.
...
Рейтинг: 0 / 0
23.07.2012, 17:55
    #37889575
jack_nsk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
mustaccio,

в моем случае увеличение pagesize=32k помогло

все мои попытки увеличить tempspace1 не увенчались успехом, выходило сообщение, что табличное пространство системное, поэтому изменить его характеристики невозможно.
в скриптах создания базы данных я не нашел описания создаваемых полей с размером более, чем 16к, например, varchar(32000)

у меня было подозрение, что логи заполнились активной транзакцией и писать больше некуда, но я не помню, где у db2 увеличивается размер логов оперативных журналов. (по крайней мере, в Data Studio я не нашел)
...
Рейтинг: 0 / 0
23.07.2012, 21:13
    #37889742
mustaccio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
jack_nsk,

Я, собственно, комментировал (неявную) идею в сообщении Victor Metelitsa, что можно без существенных последствий для производительности просто создавать все табличные пространства с максимальным размером страницы. Из моего опыта следует, что последствия могут быть весьма заметными.

Изменить размер страницы существующего табличного пространства нельзя, как вы заметили. Я бы на вашем месте просто создал одно системное временное табличное пространство (ТП) с размером страницы 32К, как рекомендует ваш поставщик, оставив другие ТП в покое.

По поводу журналов - см. картинку
...
Рейтинг: 0 / 0
23.07.2012, 22:41
    #37889806
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
mustaccio,

спасибо,
поскольку с DB2 у меня dwh-специфика с крошечным количеством юзеров, про такие вещи я как-то не задумывался.
...
Рейтинг: 0 / 0
24.07.2012, 08:29
    #37889972
jack_nsk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter tablespace
mustaccio,

спасибо за подсказки.
с увеличением размера журналов как-нибудь попробую.
хотя раньше один раз приходилось делать, когда реплицировал базу Lotus Domino в DB2

с влиянием на производительность через увеличение размера страниц я "чуть-чуть" знаком
тут Oracle. Основы стоимостной оптимизации эта тема достаточно хорошо описана, правда я всё никак не могу "на досуге" дочитать книгу... а "досуга" всё не появляется... :(
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / alter tablespace / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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