Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

1c8 ХранилищеЗначения - СжатиеДанных(х)

1c8 ХранилищеЗначения - СжатиеДанных(х)
Я
   new_hope
 
28.03.20 - 00:29
Доброй ночи бодрствующим :-)

Подскажите, в каком случае и как правильно использовать СжатиеДанных(х) при записи текстовой информации в ХранилищеЗначения. Что-то никак не нашел толком информации по этому поводу. Не - нашел, что _можно_ использовать, но как и в каких случаях еффективно?

Бывают случаи, когда создаешь ZIP архив, и в результате получаешь архив больше, чем исходный файл (особенно касается маленьких файлов)

В данном моем случае, мне нужно записывать текст-овые элементы в ХранилищеЗначения (по примерно 2-3 кБт за один раз). Текст сжимается очень хорошо. Но, какую цифру лучше в моем случае использовать в качестве параметра (Х):

ЭлементХранилища = Новый ХранилищеЗначения(_МойТекст_Переменная, Новый СжатиеДанных(Х));

Что вместо "Х" будет самым оптимальным? Или в моем случае вообще не использовать второй аргумент, то-есть так:
ЭлементХранилища = Новый ХранилищеЗначения(_МойТекст_Переменная);

Дело в том, что ежедневно будут сотни таких документов, по 2-3 килобайта нормально набежит.
   palsergeich
 
1 - 28.03.20 - 00:42
(0) Не храни в БД мой тебе совет.
В БСП есть совершенно чудная подсистема хранения файлов в томах на диске.
   palsergeich
 
2 - 28.03.20 - 00:46
Ибо рано или поздно, но чаще всего рано,ь если эту помойку не чистить - вжух и база весит пару ТБ. И тебя просят что нить придумать.
Ибо на скуль ставят дорогие диски.
А для файлопомойки куда как проще оборудование.
Это очень рисково. Я по молодости тоже хранил в БД, и всегда дело кончалось тем, что это все переезжало в файлопомойку в итоге.
   palsergeich
 
3 - 28.03.20 - 00:47
(0) А если тебя не переубедить - то 9 это максимальное сжатие.
   new_hope
 
4 - 28.03.20 - 15:02
(1) Так это не файлы, это несколько полей текстовых с хаотичной текстовой информацией. А если точнее 8 полей в каждом поле до 200 символов. Могут иногда вовсе не заполняться или в хаотичном порядке.

Храню все 8 полей в ОДНОМ реквизите документа типа "ХранилищеЗначения"

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

Может тогда посоветуйте более красивое решение?
   palsergeich
 
5 - 28.03.20 - 15:08
(4) Воткни доп реквизиты тогда
   palsergeich
 
6 - 28.03.20 - 15:09
особо ничего не выиграешь на таких микро данных, а геморроя потом не оберешься
   new_hope
 
7 - 28.03.20 - 15:10
(5) воткнуть в документ 8-мь реквизитов типа "строка.200"? Если да - то в чем преимущества? И как это поможежет экономить размер занимаемого места в базе?
   palsergeich
 
8 - 28.03.20 - 15:11
(7) Перимущества в легком доступе к ним.
На таких микроданных ты особо ничего не ужмешь просто, а програмный доступ и читаемость - усложнишь.
   new_hope
 
9 - 28.03.20 - 15:12
(6) под гемороем - имеется ввиду размер базы, или есть еще нюансы в хранении такими способом?
   new_hope
 
10 - 28.03.20 - 15:16
(8) Да, понял...

Просто в случае, если нужно будет добавить 9-е поле, то все добавляется без реструктуризации БД... Или если удалить 3 поля (оставить 5) то они удалятся также без реструктуризации базы. И главное - в старых документах можно будет прочитать все 8 полей. В новых уже 5 будет

Ну я сам себе такое подумал... Могу конечно жестко ошибаться
   palsergeich
 
11 - 28.03.20 - 15:16
(9) Еще раз говорю.
Сжатие это штука которой нужны данные для простроения алфавита и ТД.
Я взял 200 символов только что и сжал их раром максимально. Размер архива стал в 2 раза больше исходного файла.
Что ты там экономить собрался?
   palsergeich
 
12 - 28.03.20 - 15:17
(10) Ты был лучше над архитектурой подумал. Ибо то, что у тебя сейчас - это путь в ад.
   new_hope
 
13 - 28.03.20 - 15:19
(11) ничего. Просто изначально спрашивал, как правильно использовать СжатиеДанных(х)... И интересовался, возможно в моем случае его лучше вообще и не использовать. Ну и по ходу - хорошо, если есть и другие советы
   palsergeich
 
14 - 28.03.20 - 15:22
(13) Сжатие использовать можно.
Только смысла особого ИМХО нет.
Ибо сжатие данных - это алгоритм Deflate, он одна из ветвей от ZIP для беглой оценки пользы - можешь зипом проверить - даст что нить или нет
   new_hope
 
15 - 28.03.20 - 15:23
(12) То, что там планируется храниться - текстовая информация, необходимая "сейчас и здесь". После завершения события, она нужна как справочная информация "на всякий случай"... Но даже если ее удалить, или сама "удалиться" - нет ничего страшного, но пусть лучше будет.
Все ценное - в реквизитах.

Вот я так и решил ее хранить.
   new_hope
 
16 - 28.03.20 - 15:23
(14) Спасибо за советы
   такт
 
17 - 28.03.20 - 15:34
можно поле Строка, поля в json
   такт
 
18 - 28.03.20 - 15:35
+17 и не в самом документе, а РСв
   Сияющий в темноте
 
19 - 28.03.20 - 23:50
если она потом не нужна-пишите в журнал регистрации.
   Cyberhawk
 
20 - 29.03.20 - 09:47
"изначально спрашивал, как правильно использовать СжатиеДанных(х)" // Ну хорошо что хоть не спрашиваешь, "Как правильно использовать Перем"

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.