• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Compress Document Data + Ods 51

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Собственно поднимаю тему по сабжу
Так как некая ситуация возникает, которую я не совсем понимаю.
Имеем сервер 8.5.1
Имеем базу содержащую в себе почтовые репорты - всё пришло через почту, аттачей нету, лишь отчеты о том как правильно работает система

Ставим на базе эту галку и компактим:
> lo compact -c toxa\deskmail.nsf
21.01.2010 14:43:46 Informational, document data compression is enabled in database toxa\deskmail.nsf.
21.01.2010 14:45:45 Compacted toxa\deskmail.nsf, 684233K bytes recovered (74%)

А теперь имеем вопросы:
1) из-за чего гиговая база уменьшилась аж в 4 раза?
2) почему если сразу после компакта зайти в такую базу индексировка видов(дата письма, тема письма, размер), содержащего аж 29К документов строится моментально (1-3сек)?

Предположительно ответы:
1) Поле Body подвергается зипповке из-за чего содержащийся внутри текст так сильно ужимается
2) ODS 51 в базе в которой только 4 вида и все документы по форме Memo работает очень шустро

P.S. Собтсвенно плюсы 8.5 я понимаю очень хорошо, но начинаю чувствовать что мне что-то недоговаривают...
 
A

am4

1) из-за чего гиговая база уменьшилась аж в 4 раза?
Индексы видов? Плюс когда база последний раз компактилась копи-стайлом? Была ли изначально в ODS51?

2) почему если сразу после компакта зайти в такую базу индексировка видов(дата письма, тема письма, размер), содержащего аж 29К документов строится моментально (1-3сек)?
Только 4 вида и отсутствие лишних сортировок плюс небольшой размер документов? Какой размер индексов видов после создания?
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Индексы видов? Плюс когда база последний раз компактилась копи-стайлом? Была ли изначально в ODS51?
база компактилась(cnfqkjv) прямо до этой операции и изначально была уже создана в ODS51
поэтому это не индексы видов, хотя может они изза компресса дата имеют уже иную струкруту?
 
A

am4

не индексы видов, хотя может они изза компресса дата имеют уже иную струкруту?
Это врядли, упоминаний об изменении структуры индексов видов не было, размер в ODS51 не меняется и от компрессии не зависит.
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
нашел частично ответ тут
2.2. Сжатие документов

Сжатие документов обозначает сжатие в документах Notes не суммарных данных (тело); ранее данный тип сжатия был доступен только при проектировании базы данных. Теперь сжатие не суммарных данных значительно уменьшает размер занимаемого дискового пространства для всех отформатированных текстовых элементов в документах, особенно когда база данных содержит длинные документы с большими графическими изображениями.

Общая экономия дискового пространства и операций ввода/вывода оказалась довольно высокой. Фактически, экономия дискового пространства при комбинировании сжатия документов и функциональности DAOS составила от 40 до 60%!
то есть ужимаются не только поля Body а все не суммари поля и в моём случае благодаря узкой специализации базы было не до 60% а 74%
подумать только, одна галочка на базе и столько проблем решается :welcome:
 
A

Akupaka

lo compact -c toxa\deskmail.nsf
эта команда не удаляет индексы видов, поэтому это не индексы.

индексировка видов(дата письма, тема письма, размер), содержащего аж 29К документов строится моментально (1-3сек)
я щас от смеха уписяюсь :) 29 тыщ доков? это разве объем? ))

Добавлено:
то есть ужимаются не только поля Body а все не суммари поля
вот не понял как это связано с тем, что процитированно? в цитате ведь не о саммари полях идет, а наоборот
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Akupaka
эта команда не удаляет индексы видов, поэтому это не индексы.
вы чего?
копистайл всегда пересоздаёт базу, поэтому индексов видов тама уже нет

я щас от смеха уписяюсь 29 тыщ доков? это разве объем? ))
для вида, который их ребилдит за 1-3сек считаю что обьем

вот не понял как это связано с тем, что процитированно? в цитате ведь не о саммари полях идет, а наоборот
так я так и пишу все НЕ суммари поля
 
A

Akupaka

копистайл всегда пересоздаёт базу, поэтому индексов видов тама уже нет
нет-нет, это не так, хотя бы по тому, что после такого компакта виды открываются сразу :)
кроме того, для убивания видов есть специальная команда -D
Discard any built view indexes
-D
Discards built view indexes. Use this option to compact databases that are not in active use, for example, just before you store databases on tape. Additional system time and resources should be planned to rebuild indexes after restore of the databases. Does copy-style compacting.

так я так и пишу все НЕ суммари поля
my bad, видать я запутался
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
нет-нет, это не так, хотя бы по тому, что после такого компакта виды открываются сразу
запускаю с ключом "-с" и я вно наблюдаю как на файловом уровне создаётся новый файл names~**.tmp и при попытке войти в базу получают "база занята компактом", у вас не компактится скорее всего по причине того, что база занята до компакта была
 
K

Klido

ToxaRat
так как файло кописатйлом делается - никто не мешает индексы вьюх туда переписать компакту старые :)
либо индексы настолько простые и небольшие, что твой 8-ядерник успевает отстроить индексы сразу после компакта :)

проверь реальное состояние/размеры индексов до и после - я сегодня одной базе включил галку, откомпактил - из 1Гб скомпактилось 10Мб всего, при условии, что документов всего 6К.... и индексы не изменились по размеру после компакта...
 
A

Akupaka

запускаю с ключом "-с" и я вно наблюдаю как на файловом уровне создаётся новый файл names~**.tmp и при попытке войти в базу получают "база занята компактом", у вас не компактится скорее всего по причине того, что база занята до компакта была
аргумент не принят :)
попробуй открыть базу и скомпактить. получишь, что база занята.
для таких случаев есть даже ключик :)
Copy-style: Allow access while compacting
-L
Enables users to continue to access databases during compacting. If a user edits a database during compacting, compacting is canceled. This is useful only when copy-style compacting is done.

Копи-стайл переписывает "действующие биты" базы, плюс исправляет некоторые служебные данные. А инплейс только удаляет из файла базы "недействующие биты".
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!