powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
22 сообщений из 22, страница 1 из 1
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541074
missing.fox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги, собственно, вопрос в сабже.
Заранее спасибо.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541086
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
missing.fox,
ALTER INDEX .. REBUILD / REORGANIZE
подробности в хелпе
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541097
missing.fox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллега, я не проиндекс, я именно про таблицы.
Про индексы весь инет инфой завален )))
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541109
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
missing.fox,

1) создать и удалить кластерный индекс
2) вылить наружу в файл и залить обратно
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541110
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
missing.foxКоллега, я не проиндекс, я именно про таблицы.

Кучу нельзя дефрагментировать. Варианты:
Создайте кластерный индекс\грохните.

Перелейте в новую таблицу, старую грохните.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541112
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
missing.fox, если вам почему-то не нравится через ALTER INDEX, для ALTER TABLE тоже есть опция REBUILD
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541113
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinmissing.foxКоллега, я не проиндекс, я именно про таблицы.

Кучу нельзя дефрагментировать.

да ладно? alter table rebuild не сработает?
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37541267
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShakillpkarklinКучу нельзя дефрагментировать.да ладно? alter table rebuild не сработает?похоже, не то сказал, слово "дефрагментация" в статье сбило с толку, в оригинале просто rebuild
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #37542048
missing.fox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо.
Ответ полностью исчерпывающий, это то, что надо!!!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139561
Scor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые коллеги!

Есть по этой теме такая ситуация:

Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64) Apr 2 2010 15:48:46 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

Таблица без кластерного индекса, 25 ГБ данные 2 ГБ Индексы. Применяю к ней "alter table REBUILD", результат - размер данных 22 ГБ, индексы 1 ГБ. Если "переливаю" данные исходной таблицы в другую аналогичную пустую таблицу, то данные ужимаются до 15(!) ГБ.

Вопрос: это нормально? Операция "alter table REBUILD" не является эквивалентом пересоздания таблицы? Можно ли как-то не переливая данные из таблицы в таблицу сжать ее до 15 ГБ ?

Спасибо.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139566
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScorТаблица без кластерного индекса, 25 ГБ данные 2 ГБ Индексы. Применяю к ней "alter table REBUILD", результат - размер данных 22 ГБ, индексы 1 ГБ. Если "переливаю" данные исходной таблицы в другую аналогичную пустую таблицу, то данные ужимаются до 15(!) ГБ.
Огласите инструмент/способ, которым вы измеряли эти значения ?
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139571
Scor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Стандартный отчет "по размеру верхних 1000 таблиц", смотрю поля "Данные КБ" и "Индексы КБ"
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139630
Scor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть дело в том, что я запускал

ALTER TABLE <Имя таблицы> REBUILD

, а надо было

ALTER TABLE <Имя таблицы> REBUILD PARTITION = ALL
WITH (DATA_COMPRESSION = PAGE) ?

Последнее у меня, правда, не работает, пишет "Сжатие поддерживается только в выпуске SQL Server Enterprise Edition."
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139636
Фотография tpg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Scor...ALTER TABLE <Имя таблицы> REBUILD PARTITION = ALL
WITH (DATA_COMPRESSION = PAGE) ?

Последнее у меня, правда, не работает, пишет "Сжатие поддерживается только в выпуске SQL Server Enterprise Edition."Стандартная редакция не поддерживает ни секционирования, ни сжатия данных.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139658
Гость333
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScorТаблица без кластерного индекса, 25 ГБ данные 2 ГБ Индексы.
Вопрос: это нормально?
Таблица-куча размером 25 Гб, да ещё с индексами — это вряд ли нормально. Есть какие-то причины, по которым на таблице не создан кластерный индекс?
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139788
Scor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
База - хранилище таблиц для 1С, набор и вид индексов там предопределен платформой.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139853
Фотография tpg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScorБаза - хранилище таблиц для 1С, набор и вид индексов там предопределен платформой.Это не значит, что адинэс не умеет просить сервер БД сделать ей кластерный индекс в таблице.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38139914
Scor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В таблицах 1С 8.2 нельзя выбирать (если я не прав, то поправьте, как) наличие/отсутстивие кластерного индекса. Т.е. если вид таблицы - непериодический регистр сведений - то кластерного индекса платформой не предусматривается. Можно, конечно, руками создать.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38141035
Нектотам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Scor,

Если это регистр сведений, то
1. Если конфа нетиповая, то проще всего создать КИ сделав таблицу периодическим регистром сведений. Писать всё одной датой, конечно.
2. Если конфа типовая, значит с большой вероятностью неправильно используется.
3. Если проблема разовая, то можно тупо индекс по измерениям кластерным сделать. Понятно, что при реструктуризации всё слетит, но это меньшее зло.
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38141088
Scor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробовал создать кластерный индекс на таблице "руками" - 0 результата. Мне то надо, чтобы данные сжались, и они могут сжаться то. Перелив в другую таблицу то показал результат 25 ГБ -> 15 ГБ.

Теперь у меня другая мысль. Может не сжимается, так как одна из колонок с типом "image" ? За счет нее в основном планировалось место освободить.

Как думаете?
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38141167
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScorПерелив в другую таблицу то показал результат 25 ГБ -> 15 ГБ.
Команду "перелив" покажите ?
А сравнение структур таблиц тоже?
...
Рейтинг: 0 / 0
Можно ли в MSSQL 2008 дефраментировать таблицу и если да, то как?
    #38141199
Scor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот скрипт создания исходной таблицы:

CREATE TABLE [dbo].[_InfoRg13638](
[_Fld13639_TYPE] [binary](1) NOT NULL,
[_Fld13639_RTRef] [binary](4) NOT NULL,
[_Fld13639_RRRef] [binary](16) NOT NULL,
[_Fld13640] [numeric](10, 0) NOT NULL,
[_Fld13641] [image] NOT NULL,
[_Fld13642RRef] [binary](16) NOT NULL,
[_Fld13643] [datetime] NOT NULL,
[_Fld13644] [binary](1) NOT NULL,
[_SimpleKey] [binary](16) NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

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


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