Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Разница в размере бекапов / 15 сообщений из 15, страница 1 из 1
21.02.2018, 13:32
    #39605481
AVSONE
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
Есть версия БД sql 2005, полученная в виде bak файла. И версия поднятая из txt. После поднятия таблицы индексируются.

Поверхностное сравнение (подсчет строк и select * from db1..table except select * from db2..table показывает что базы одинаковые.
Поля типа txt никак не сравниваются.

После некоей обработки полученные результаты в выгрузке также одинаковы.

После бекапа обеих баз bak файлы имеют размер 8 и 5 гб.

за счет чего может быть разница в размерах?
...
Рейтинг: 0 / 0
21.02.2018, 13:37
    #39605486
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
AVSONEИ версия поднятая из txt.
...
Поля типа txt никак не сравниваются.

какие еще txt?
...
Рейтинг: 0 / 0
21.02.2018, 13:44
    #39605498
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
awesome :)
...
Рейтинг: 0 / 0
21.02.2018, 14:06
    #39605520
AVSONE
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
Yasha123,


поля типа text. Вторая база поднималась из текстового файла
...
Рейтинг: 0 / 0
21.02.2018, 14:12
    #39605530
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
AVSONEВторая база поднималась из текстового файла
что означает "поднималась из текстового файла"?
из бэкапа мне понятно, это restore database ... from disk = ....
из текстового файла как выглядит птоцесс?
...
Рейтинг: 0 / 0
21.02.2018, 14:14
    #39605532
Дедушка
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
AVSONEПосле бекапа обеих баз bak файлы имеют размер 8 и 5 гб.из чего вы там что подняли не важно если в итоге у вас 2 базы которые вы потом бэкапите.

1. после всех ваших телодвижений с этими базами и до их бэкапирования размеры их какие (размеры баз и их журналов)
2. бэкапите потом как, фулл?
...
Рейтинг: 0 / 0
21.02.2018, 14:18
    #39605537
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
Дедушкаиз чего вы там что подняли не важно если в итоге у вас 2 базы которые вы потом бэкапите.

почему это неважно?
может "из текстового файла" это скриптом и с инсертами данных.
и что в этих инсертах, нам неизвестно.
у него же там нтексты.
вот может они и не перенеслись скриптами.
число строк ок, то же, ну а данные?
таблицы надо было сравнивать через sp_spaceused хотя бы.
а то мало ли, половина полей пуста, а число строк одно и то же
...
Рейтинг: 0 / 0
21.02.2018, 14:47
    #39605560
Разница в размере бекапов
AVSONEYasha123,


поля типа text. Вторая база поднималась из текстового файла
Тип TEXT (NTEXT, IMAGE) - вполне конкретная хрень. Которая именно что отдельно хранится относительно других типов данных.
С источником "Текстовый файл" тип данных "TEXT" связан примерно как квадратный корень с фетровой шляпой.

А в bak какие типы данных?
...
Рейтинг: 0 / 0
21.02.2018, 15:07
    #39605570
fhil
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
AVSONE,

для db1, db2

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT OBJECT_NAME(sp.[object_id]) ,[total_pages] = SUM(sau.[total_pages])
FROM sys.allocation_units sau with (nolock)
INNER JOIN sys.partitions sp with (nolock)
	ON (sau.[type] in (1,3) AND sau.[container_id] = sp.[hobt_id]) OR (sau.[type] in (2) AND sau.[container_id] = sp.[partition_id])
INNER JOIN sys.objects so with (nolock)
	ON so.[object_id] = sp.[object_id] AND so.[is_ms_shipped]=0
GROUP BY sp.[object_id]
ORDER BY SUM(sau.[total_pages]) desc
...
Рейтинг: 0 / 0
21.02.2018, 17:19
    #39605657
AVSONE
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
Yasha123AVSONEВторая база поднималась из текстового файла
что означает "поднималась из текстового файла"?
из бэкапа мне понятно, это restore database ... from disk = ....
из текстового файла как выглядит птоцесс?

create db , create table , bulk insert, index... . Примерно так. Производитель баз заявляет что их скрипт и текстовые версии дают легитимный результат. Те данные должны быть идентичными поднятым из бинарного бекапа. Поэтому sql 2005 вычеркивают из списка поддерживаемых версий. Остается только текстовая версия.
...
Рейтинг: 0 / 0
21.02.2018, 17:27
    #39605664
AVSONE
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
ДедушкаAVSONEПосле бекапа обеих баз bak файлы имеют размер 8 и 5 гб.из чего вы там что подняли не важно если в итоге у вас 2 базы которые вы потом бэкапите.

1. после всех ваших телодвижений с этими базами и до их бэкапирования размеры их какие (размеры баз и их журналов)
2. бэкапите потом как, фулл?

1 -не смотрел.
2. - да .
...
Рейтинг: 0 / 0
21.02.2018, 18:24
    #39605711
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
AVSONE
create db , create table , bulk insert, index... .
это называется "перенесли базу(структуру) скриптами".
а данные как переносили?
bulk insert -- данные заливали из файлов?
студия не генерит балки, она обычные инсерты генерит.
а файлы как заливали, с формат-файлами?
поди накосячено на переносе текстов
...
Рейтинг: 0 / 0
21.02.2018, 22:42
    #39605846
nvv
nvv
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
Сдались вам эти бэкапы. Сравните для начала базы. Файлы, таблицы, записи, размеры, структуру наконец... Разница будет сразу видна.
...
Рейтинг: 0 / 0
22.02.2018, 10:22
    #39605986
Тяп-ляп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
Количество страниц с данными разное в этих БД.
fhil уже дал скрипт для проверки.
...
Рейтинг: 0 / 0
23.02.2018, 10:09
    #39606463
AVSONE
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в размере бекапов
fhilAVSONE,

для db1, db2

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT OBJECT_NAME(sp.[object_id]) ,[total_pages] = SUM(sau.[total_pages])
FROM sys.allocation_units sau with (nolock)
INNER JOIN sys.partitions sp with (nolock)
	ON (sau.[type] in (1,3) AND sau.[container_id] = sp.[hobt_id]) OR (sau.[type] in (2) AND sau.[container_id] = sp.[partition_id])
INNER JOIN sys.objects so with (nolock)
	ON so.[object_id] = sp.[object_id] AND so.[is_ms_shipped]=0
GROUP BY sp.[object_id]
ORDER BY SUM(sau.[total_pages]) desc



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
table1	222505	380002
table2	136367	187967
table3	68087	86602
table4	19815	23510
table5	14818	15282
table6	5861	5833
table7	1109	3268
table8	787	513
table9	17	17

спасибо за скрипт. Буду дальше разбираться
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Разница в размере бекапов / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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