Имя: Пароль:
1C
1С v8
Хранение информации: дробные числа vs целы
0 Ayvengo
 
25.06.12
11:21
Я крайне фигово в этом разбираюсь, но где-то слышал, что дробные числа жрут больше ресурсов, чем целые. Собственно говоря, я хочу хранить в 1Ске инфу НомерТранспортногоСредства, Широта, Долгота
Широта и Долгота имеет формат Число(8,6), возможно имел бы смысл умножать на миллион, что бы сэкономить ресурсы и хранить в формате Число(8,0) Как думаете, есть смысл заморачиваться с этим вопросом.
В эту таблицу каждую минуту (минимум, скорее чаще) будут добавляться 180+ строк, т.е. увеличение количества строк в этой таблице будет огромным (IMHO).
1 izekia
 
25.06.12
11:22
без разницы, насколько я знаю
2 Ненавижу 1С
 
гуру
25.06.12
11:22
(0) Число(8,6) скорее всего хранится как целое число, успокойся
3 ДенисЧ
 
25.06.12
11:26
(2) как numeric() оно хранится...
4 vde69
 
25.06.12
11:26
разница есть....

во первых в тонком клиенте вообще нет целых и там например будет "Число(СокрЛП(а))=а" иногда выполнятся а иногда нет.....

во вторых на разных платформах длина физического хранеиея чисел разная.

в третих сравнение дробных на знак равенства то-же может косячить

короче однозначного ответа нет, но для того что-бы ни кого не запутывать советую делать Число(8,6)
5 vde69
 
25.06.12
11:27
(4) тонком = web
6 Ayvengo
 
25.06.12
11:33
(4)
1. веб клиент не используем, но никто не исключает этой вероятности, так что + к Число(8,6), что бы никто не запутался, если я уйду :)
2. Платформа 8.2.15, надо бы разобраться.
3. Тут не понятно, как это так?
7 Ayvengo
 
25.06.12
11:43
+(6) к 3, потому что в (3) говорится, что numeric() по идее такого косяка не должно быть.
8 Ненавижу 1С
 
гуру
25.06.12
11:47
(3) понятное дело, но сам numeric хранится как integer (или bigint) - просто используется сдвиг разрядов при вычислениях
9 Ненавижу 1С
 
гуру
25.06.12
11:48
(4) то есть 1с сделала инструмент, который в разных ситуациях (клиентах, платформах, субд) ведет себя по-разному, но при этом такое поведение не документировано?
10 andrewks
 
25.06.12
11:49
вроде в мсскл нумерик = децимал, не?
11 H A D G E H O G s
 
25.06.12
11:49
(10) Нет.
(9) Клиенты - сторонние
12 H A D G E H O G s
 
25.06.12
11:51
260 Кзаписей в сутки,
95 Мзаписей в год.

Что волнует автора?
13 Ayvengo
 
25.06.12
11:52
(12) ресурсы :)
14 Ayvengo
 
25.06.12
11:53
(12) такие как скорость работы, и место на диске
15 H A D G E H O G s
 
25.06.12
11:53
5 байт на широту, 5 байт на долготу.
скокато байт на номер ТС.

И охеренный индекс на измерения РС.
16 Ненавижу 1С
 
гуру
25.06.12
11:54
(11) и чем они отличаются? numeric и decimal в ms sql
17 fisher
 
25.06.12
11:57
(0) Я догадываюсь, откуда звон который ты слышал. Там речь о переменных в памяти была, хранящих иррациональные числа с ебической точностью. Тогда да - и ресурсы и скорость вычислений не фонтан. С хранением в БД вроде косяков нет.
18 Ayvengo
 
25.06.12
12:03
(17) точно, это оно и есть.. слышу звон, но не помню где он... в моем случае это вообще не критично, так что буду использовать дробные.
19 H A D G E H O G s
 
25.06.12
12:09
(16) Да, ты прав, ничем.
20 H A D G E H O G s
 
25.06.12
12:13
(18) Добавь сюда еще 2 индекса
-кластерный по периоду
-некластерный по измерению, ибо

РС периодический,
-Измерение - ТС
-Ресурсы - Широта, Долгота
21 Ayvengo
 
25.06.12
12:28
(20) спасибо за добрый совет :)
22 H A D G E H O G s
 
25.06.12
12:42
(21) Добрый совет - это хранить в отдельной простой табличке.
23 Ayvengo
 
25.06.12
13:06
(22) злодей :)