Гость
Map
Форумы / Informix [игнор отключен] [закрыт для гостей] / перенести данные из 1 чанка в другой / 23 сообщений из 23, страница 1 из 1
24.01.2012, 10:30
    #37628370
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
Добрый день,

с информиксом работаю не очень давно,поэтому спрошу может быть глупый вопрос,но ткните плиз в доку или где найти ответ.

У меня есть dbspace с 4 чанками, раньше 1,2,3 чанки были заполнены,сейчас оттуда почти все данные выбросили,т.е. они почти пустые.
Можно ли как-нибудь перенести все данные с 4,3,2 чанка в 1,например,а лишние удалить,потому что база распухла ужасно.



спасибо большое за любую помощь
...
Рейтинг: 0 / 0
24.01.2012, 11:07
    #37628428
Тан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeV,

Если чанки пустые, их можно удалить.
Если не пустые, надо сначала обнаружить, что именно там лежит, и потом уже смотреть, можно ли это удалить/перенести
...
Рейтинг: 0 / 0
24.01.2012, 11:13
    #37628443
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeVлишние удалить,потому что база распухла ужасно
Логика в чём? Вы хотите удалить неиспользуемые чанки одного дбспейс, чтобы создать на освободившемся месте для другого?
...
Рейтинг: 0 / 0
24.01.2012, 13:06
    #37628646
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
АнатоЛой,

да,я хочу удалить неиспользуемые,потому что необходимо создать чанки для другого пространства,а по месту ограничен.

может быть просто взять и создать таблицу как свою же копию,тогда он начнет сначала заполнять 1 чанк,а потом уже второй и т.д...и после того,как создал таблицу,старую дропнуть и удалить чанк.

может быть есть какой-то механизм?
...
Рейтинг: 0 / 0
24.01.2012, 13:27
    #37628705
Khod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeV,

Перезалить базу.
...
Рейтинг: 0 / 0
24.01.2012, 14:04
    #37628800
onstat-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeVАнатоЛой,

да,я хочу удалить неиспользуемые,потому что необходимо создать чанки для другого пространства,а по месту ограничен.

может быть просто взять и создать таблицу как свою же копию,тогда он начнет сначала заполнять 1 чанк,а потом уже второй и т.д...и после того,как создал таблицу,старую дропнуть и удалить чанк.

может быть есть какой-то механизм?


Создать новое пространство нужного обьема,
сделать alter fragment.... in ... в новое пространство
для таблиц из освобождаемого.
...
Рейтинг: 0 / 0
24.01.2012, 14:48
    #37628917
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
onstat-,

насколько это безопасно делать при работающей продакшн базе?

мне кажется,что это не очень надежно
...
Рейтинг: 0 / 0
24.01.2012, 17:34
    #37629405
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeV, достаточно безопасно с точки зрения целостности.
Вопрос только во времени на который таблица станет недоступна для запросов (зависит от размеров отдельно взятой таблицы), и как отреагирует на это время конкретно взятое ПО.
...
Рейтинг: 0 / 0
25.01.2012, 09:05
    #37630129
Тан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
Alter fragment может быть веселой штукой, если таблица большая.
А в 11.50 можно shrink сделать.
...
Рейтинг: 0 / 0
25.01.2012, 10:54
    #37630250
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
ТанAlter fragment может быть веселой штукой, если таблица большая.

1. LudeV, это к тому что не помешало бы оценить размеры таблиц

ТанА в 11.50 можно shrink сделать.
2. LudeV, а это к тому, что мало кто помнит что в предыдущем вопросе Вы упоминали 11.50 FC6, да и не факт, что в данном случае у вас верся сервера та же...

А shrink таки должен помочь, если чанки действительно заняты только пустыми экстентами...
...
Рейтинг: 0 / 0
25.01.2012, 12:36
    #37630478
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
АнатоЛой,

версия на этом сервере 11.70 FC3

фрагменты таблиц занимают от 6 до 32Гб,поэтому изменять alter fragment не стоит,да и столько данных перегонять очень долго,а сервер может быть недоступен только лишь 6часов,не больше - этот вариант отпадает

А вот про shrink идея хорошая,но я пока не очень понял ее смысл(

Эта функция вернет в табличное пространство пустые экстенты,но размер БД не уменьшится и чанки удалить я не смогу.
Если у меня первый чанк занят на 20%,а остальное удалено,то он мне просто освободит те самые 80%,но данные со второго чанка сюда не засунет же..В итоге у меня в первом будет часть данных и во втором тоже.

При удалении через delete место остается зарезервированным за этими записями,и занимается оно новыми записями только после того как закончится свободное место,а эта функция позволяет создать некий отчет,согласно которому информикс будет заполнять эти экстенты сразу при добавлении новых строк.

все я верно понял?

спасибо большое за разъяснение
...
Рейтинг: 0 / 0
25.01.2012, 14:04
    #37630720
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeV, функции достаточно новые, лично у меня практического опыта их использования ещё нет :(.

К сожалению, в документации repack, shrink и defragment упоминаются только в связи с compress, который вы вряд ли решитесь использовать.
Ни одна из них не готовит отчёт, поэтому я не совсем понял ваши фразу об отчёте.
Для просмотра, что у вас творится в чанках используйте "oncheck -pe", "oncheck -pt", "oncheck -pT", systabnames, sysextents.
http://publib.boulder.ibm.com/infocenter/idshelp/v117/topic/com.ibm.admin.doc/ids_admin_0626.htm
http://publib.boulder.ibm.com/infocenter/idshelp/v117/topic/com.ibm.admin.doc/ids_admin_0631.htm


согласно:
http://publib.boulder.ibm.com/infocenter/idshelp/v117/topic/com.ibm.admin.doc/ids_admin_1251.htm

repack - по идее должен переписать строки на свободное место внутри одного "фрагмента". Являются ли таковым удалённые строки - на 100% неизвестно. Переезжают ли они при этом из одного экстента в другой - или съезжаются только в пределах одного экстента - тоже вопрос.

shrink - если в экстенте есть пустое место в конце экстента - отрежет у экстента это место.

defragment - посливает экстенты в один!

на тему defragment информации в доке тоже немного, но таки есть:
Feature

SQL API

onstat -g defrag
...
Рейтинг: 0 / 0
25.01.2012, 14:09
    #37630730
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
АнатоЛойна тему defragment информации в доке тоже немного
Больше на русском
и оригинал на английком . Оно? :)
...
Рейтинг: 0 / 0
25.01.2012, 14:27
    #37630801
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
...
Рейтинг: 0 / 0
25.01.2012, 15:47
    #37631029
Ikir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeVфрагменты таблиц занимают от 6 до 32Гб,поэтому изменять alter fragment не стоит,да и столько данных перегонять очень долго,а сервер может быть недоступен только лишь 6часов,не больше - этот вариант отпадает


Сомнительно.
За 6 часов можно Терабайт лопатой перекидать.
...
Рейтинг: 0 / 0
25.01.2012, 19:17
    #37631568
Тан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeV,

repack + shrink вам помогут, их можно и без сжатия использовать.
Правда, неизвестно, куда именно repack переложит данные.
И его можно запускать при работающих пользователях, если мне память не изменяет.
Вы бы посмотрели, что в полупустых чанках лежит
...
Рейтинг: 0 / 0
26.01.2012, 16:24
    #37633300
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
Тан,

repack данные из 1 чанка не переложил в другой (
...
Рейтинг: 0 / 0
26.01.2012, 16:27
    #37633307
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
Тан,

прошу прощения,поторопился.

данные перенеслись в первый чанк только после repack+shrink.


Спасибо большое!
...
Рейтинг: 0 / 0
26.01.2012, 16:48
    #37633376
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
вот только интересно: после перемещения данных индекс остается работоспособным?

ведь rowid наверное поменяется
...
Рейтинг: 0 / 0
26.01.2012, 17:20
    #37633466
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
Тан,

вот какая интересная штука: если я делаю это на таблице без индекса - все получается и данные переносятся,а когда делаю на таблице с индексом - данные переносятся,а место, занимаемое индексом, так и остается в старом чанке.

Приходится удалять индекс,а после этого пересоздавать его заново.


Подскажите мысли почему так?
...
Рейтинг: 0 / 0
27.01.2012, 09:36
    #37634392
Тан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeVТан,

вот какая интересная штука: если я делаю это на таблице без индекса - все получается и данные переносятся,а когда делаю на таблице с индексом - данные переносятся,а место, занимаемое индексом, так и остается в старом чанке.

Приходится удалять индекс,а после этого пересоздавать его заново.

Подскажите мысли почему так?
индекс - отдельный объект, хранится независимо от таблицы.
repack и shrink на индексы не действуют, их надо перестраивать
...
Рейтинг: 0 / 0
27.01.2012, 11:05
    #37634587
LudeV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
Тан,

спасибо большое.

самый лучший вариант удалить и создать заново или сделать какой-нибудь rebuild?
...
Рейтинг: 0 / 0
27.01.2012, 11:49
    #37634682
Тан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенести данные из 1 чанка в другой
LudeVТан,

спасибо большое.

самый лучший вариант удалить и создать заново или сделать какой-нибудь rebuild?
Если индекс поддерживает констрейнты, то я бы сделала alter fragment. Но для этого нужна эксклюзивная блокировка.
А так - можно пересоздать drop online, create online
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / перенести данные из 1 чанка в другой / 23 сообщений из 23, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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