Имя: Пароль:
1C
 
Сжатие базы данных
0 Простенький вопросик
 
01.06.20
06:40
Есть база УПП 1,7 тб, создал новую базу из выгрузки DT получилось 700гб. Можно ли средствами SQL получить аналогичный результат? Если да, что что там надо настроить или запустить?
1 Простенький вопросик
 
01.06.20
06:50
модель восстановления простая
2 ДенисЧ
 
01.06.20
06:51
Вообще-то 700ГБ из 1.7 ТБ - это ничего особенного.
3 Простенький вопросик
 
01.06.20
06:52
(2)
Когда диск под базу данных 2тб пора задуматься. В такой ситуации разница есть.
4 ДенисЧ
 
01.06.20
06:56
"Когда диск под базу данных 2тб пора" ... бежать.
Если у тебя такие объёмы БД и такой диск - ничего хорошего не светит
5 MyNick
 
01.06.20
07:00
Интересно, сколько длился процесс?
6 Простенький вопросик
 
01.06.20
07:05
(5)
Процесс чего? dt файл создавался 15 часов, прогружался в чистую базу 30 часов, хотя скл-ными средствами база восстанавливается за 2 часа.
7 Простенький вопросик
 
01.06.20
07:08
А базу данных на заводе 10 лет ведут, никаких обрезаний ни разу не делали, все 10 лет так и доступны
8 Bigbro
 
01.06.20
07:24
так dt это же архивный формат уже. платформа жмет данные при выгрузке.
а SQL работает с нормальными таблицами.
хотите аналогичный результат берите bak от SQL и архивируйте - получится сравнимого размера файл.
или вам хочется рабочую базу сжать? сомнительная идея.
9 Простенький вопросик
 
01.06.20
07:34
Ну есть же всякие методы, вроде этого http://catalog.mista.ru/public/114634/
Но там тоже все начинается с выгрузки dt
10 Bigbro
 
01.06.20
07:56
видел эту статью, методика вроде как рабочая, ну тут уж как говорится на свой страх и риск.
как мне кажется цена дискового пространства сейчас намного ниже цены специалиста, услуги которого могут потребоваться, если что-то пойдет не так.
11 Галахад
 
гуру
01.06.20
07:59
Хм. Я думал есть ограничения на размер dt.
12 Nikoss
 
01.06.20
08:25
(0) так 700гб это ДТ? или всетаки новая база?
13 Kigo_Kigo
 
01.06.20
08:29
Интересно, скотлько *.ldf весит, может просто надо лог файлы подрезать?
14 NorthWind
 
01.06.20
08:31
(13) да обычно это настраивают при запуске базы
15 NorthWind
 
01.06.20
08:37
(0) нет. DT не рассчитан на скоростную выборку, он рассчитан только на хранение и развертывание. За счет этого выигрыш в размере.
Если вам нужна скоростная выборка данных, формат будет другой и размер тоже.
16 Kigo_Kigo
 
01.06.20
08:45
(14) Когда я пришел в новую контору, в которой не я скуль настраивал, логу было отведено все пространство, и он его успешно занимал...
17 Bigbro
 
01.06.20
08:46
я тоже сначала подумал про размер dt в 700 Гб и слегка охренел. видимо действительно размер базы после развертки.
тогда начать с бэкапа и шринка.
после серьезной реструктуризации БД сильно пухнет.
18 ЛЮС
 
01.06.20
08:50
Сначала посмотреть на место занимаемое таблицами до и после восстановления. Может это нулевые итоги (при разворачивании из ДТ они пересчитываются). Может это индексы.
19 vde69
 
01.06.20
08:53
(0) щринк работает?
20 ДенисЧ
 
01.06.20
09:12
(16) "логу было отведено все пространство, и он его успешно занимал..."
Это нормальное поведение скуля.
21 Ёпрст
 
01.06.20
09:27
(9) не угадал, давно есть скрипты, где самим скулем все можно сделать, без выгрузки в dt. Читай там же, на нимфостарте, есть пара решений
22 VladZ
 
01.06.20
09:42
(0) Делай периодически шринк на SQL.

Но, в любом случае, проблему нужно решать комплексно:
1. Объем дискового пространства нужно увеличивать.
2. Шринк настроить на автоматическую работу.
23 Александр_
Тверь
 
01.06.20
10:59
(0) Начиная с MS SQL 2016 в Standard редакции доступна опцция сжатия таблиц БД (ранее было доступно только в Enterprise версии).
Данная опеция позволяет прозрачно для приложения сжимать таблицы. ОЧЕНЬ полезный инструмент. Лично я работал с базой 1.5 ТБ и удалось ну очень существенно снизить нагрузку на дисковую подсистему и увеличить про
24 Александр_
Тверь
 
01.06.20
10:59
изводительность.
25 Александр_
Тверь
 
01.06.20
11:04
Одной из особенностью работы со сжатыми таблицами на уровне SQL - это то, что и в буферном пуле данные хранятся в сжатом виде. В моем случае, вместо одной таблицы на 90 ГБ в память стало влезать 6 больших таблиц. Мои тесты показали (в конкретно моем случае, это важно!) снижение нагрузки на дисковую подсистему до 40 (!!) раз. Увеличение производительности по некоторым операциям до 10 раз. Снижение размера базы примерно в 2 раза (не все таблицы сжимал, основаня задача была - работа с производительнстью). Ну и много другого еще. Рекомендую проанализировать возможность использования данного инструмента, если база достаточно большая.
26 Александр_
Тверь
 
01.06.20
11:10
При этом потери на CPU я замерить не смог, все было на уровне статистической погрешности. Для тестов/анализа использовал zabbix, Аннализ длинных запросов Гилева и инструменты MS SQL
27 mistеr
 
01.06.20
11:18
(0) >Можно ли средствами SQL получить аналогичный результат?

А зачем, с какой целью? Места на диске жалко?
28 Bigbro
 
01.06.20
11:20
на всякий случай напомню что бэкапы - наше все...
чтобы не появилась рядом тема "как восстановить сжатую SQL базу" ))
29 Lama12
 
01.06.20
11:27
(0)Купите диск и не экономьте на туалетной бумаге.
"Сжатие" базы выйдет дороже. Вообще не вижу смысла сжимать базы, если регламентные процедуры успеваете сделать в отведенное время.
30 mistеr
 
01.06.20
11:31
(28) Можно подумать, что несжатую восстанавливать проще...
31 impulse9
 
01.06.20
11:32
(3) если диск 2 ТБ а база 1,7 ТБ, пора писать служебку на покупку нового диска/рэйда. Снимай с себя ответственность за будущее падение базы
32 ДенисЧ
 
01.06.20
11:54
(25) Это сильно зависит от содержимого таблиц. Если у тебя там сплошные гуйды, то не поможет. Если много длиннннннннных строк - тогда да.
33 H A D G E H O G s
 
01.06.20
13:09
(25) Это работает, если питекантропы вытаскивают все из таблицы сканами. Когда запросы написаны верно, это не работает.

Ну, в принципе, хороший инструмент, если ты не можешь п^&*ить металлической табуреткой утырков.
34 Конструктор1С
 
01.06.20
13:15
В дтшнике, скорее всего, нет индексов, только таблицы. Отсюда и существенная разница в размере. К тому же скл умеет оккупировать место жесткого диска про запач
35 Конструктор1С
 
01.06.20
13:18
Собственно, в наше время 1.7 Тб это копейки. У школьников-геймеров жесткие диски по 4-8 Тб
36 ДенисЧ
 
01.06.20
13:19
(33) Ага. Есть строка "наименование продукта". И поиск по ней идёт по ПОДОБНО. Кого будем табуретками?
37 Простенький вопросик
 
01.06.20
13:35
(35)
Не все же такие умные, тут критичные проблемы 5-минутного исправления в 1с с 2012 года висят, а вы про диск начинаете. Я вас умоляю )