powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
18 сообщений из 18, страница 1 из 1
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907046
Фотография leonix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смысл в том, чтобы часто используемые данные были размещены на быстрых дисках и редкоиспользуемые были на медленных дисках.
Можно ли так сделать?
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907056
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leonix,

файловые группы
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907060
iiyama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
subj leonix,
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907061
Фотография leonix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Пошёл читать.
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907093
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leonix,

Да, тема стара как мир
Как один из вариантов - на кластерных таблицах пересоздать кластерный индекс (WITH DROP_EXISTING) на новой файловой группе, содержащей файлы, расположенные физически на нужных томах - что физически перенесет таблицы в новое расположение.

В некластерных таблицах-кучах - так же можно временно создать кластерный индекс (без PRIMARY KEY) - с той же последовательностью действий, потом индекс удалить. Данные при этом так же физически останутся в нужном месте. Но тут нужно посмотреть - что уникальный некластерный индекс, который создастся в результате кластерного без PRIMARY ключа, - для внутреннего соблуюдения уникальности - стоит по полю, где нет дубликатов, либо создать временно некий суррогатный ключ (к примеру - ID IDENTITY(1,1))

Либо так же есть втупую вариант - вначале заскриптовать на создание текущую таблицу, поменяв вручную файловую группу с PRIMARY на НОВУЮ и так же указать временное имя таблицы, запустить скрипт, что повлечет за собой создание новой таблицы,
а потом залить в нее данные из старой:
INSERT INTO [scheme].[new_table]
SELECT * FROM [scheme].[old_table]

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

Profit!

P.S. - лучше вначале всегда потестить, сразу в PROD не надо такое на всякий :)
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907095
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyMisha,

Это относится к варианту, когда горячие-теплые-холодные данные лежат в отдельных таблицах, безусловно.
Т.е. - мы переносим таблицы целиком.
В случае, если вертикально в 1й физической таблице лежат данные "всей степени теплоты" - то да, только секционирование самое практичное
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907096
Фотография leonix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyMisha, Спасибо!
Надо целиком таблицы. Скорее всего буду пересоздавать кластерный индекс. Буду пробовать на копии.
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907097
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyMisha

Как один из вариантов - на кластерных таблицах пересоздать кластерный индекс (WITH DROP_EXISTING) на новой файловой группе, содержащей файлы, расположенные физически на нужных томах - что физически перенесет таблицы в новое расположение.

при этом блобы останутся там, где и были
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907157
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123,

Вот блобы у меня лично опыта не было, надо курить мануалы :)
А как вы с этим справлялись?
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907184
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyMisha
Yasha123,

Вот блобы у меня лично опыта не было, надо курить мануалы :)
А как вы с этим справлялись?


textimage_on
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907269
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLex
PsyMisha
Yasha123,

Вот блобы у меня лично опыта не было, надо курить мануалы :)
А как вы с этим справлялись?


textimage_on

только это опция create table, не create index.
поэтому ещё раз: при обычном ребилде кластерного на другую ФГ блобы останутся в прежней ФГ
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907273
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123
msLex
пропущено...


textimage_on

только это опция create table, не create index.
поэтому ещё раз: при обычном ребилде кластерного на другую ФГ блобы останутся в прежней ФГ

Я в курсе



Кстати, в справке написано, что это свойство нельзя использовать, при создании таблиц без lob полей.
Так же его нельзя указывать при alter table. Т.е. в ситуации, когда lob поле добавляется в таблицу после создания, это опцию никак нельзя указать. Только пересоздавать полностью таблицу.
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907289
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLex
...
Только пересоздавать полностью таблицу.

вот именно
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907297
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123
поэтому ещё раз: при обычном ребилде кластерного на другую ФГ блобы останутся в прежней ФГ
а если поменять файлгруппу таблицы, разве BLOB-ы не переместятся?
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907299
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg
Yasha123
поэтому ещё раз: при обычном ребилде кластерного на другую ФГ блобы останутся в прежней ФГ
а если поменять файлгруппу таблицы, разве BLOB-ы не переместятся?
А вообще да, если сделать перенос таблицы в функцию секционирования, то БЛОБ-ы нормально переносятся, а вот если просто в файлгруппу, то не переносятся...
Удивительно...
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907306
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg,

помнится была хорошая статья what about move lob data или как то так.

там в целом описывалось две концепции как мигрировать LOB и все было сильно завязанно на используемой версии и редакции сервера, поддерживал ли он online ребилды или нет.
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907426
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
felix_ff
alexeyvg,

помнится была хорошая статья what about move lob data или как то так.

там в целом описывалось две концепции как мигрировать LOB и все было сильно завязанно на используемой версии и редакции сервера, поддерживал ли он online ребилды или нет.
О, спасибо, нашёл, Kimberly Tripp и Paul Randal: https://www.itprotoday.com/what-about-moving-lob-data

А то я помню, что не должно получаться, но у меня всегда переносилось, я же с секционированными таблицами работаю...
...
Рейтинг: 0 / 0
Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
    #39907461
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg

Kimberly Tripp и Paul Randal


Оо, ну это вообще звёздные ребята, особенно последний. Он же в Microsoft вообще работал и писал, в частности саму DBCC CHECKDB
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Можно ли разбить базу на файлы и жестко привязать таблицы к определенным файлам?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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