|   |   | 
| 
 | Создание элементов по своему GUID вредит ли базе? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Megas 30.11.18✎ 10:47 | 
        В 1С можно создать GUID "Новый УникальныйИдентификатор()" - и он отличается от тех что 1с создаёт по умолчанию для создания Ссылки у нового элемента. 
 Злые языки говорят: ГУИДы объектов в 1С на самом деле «псевдо». Нумерация их идет строго последовательная (+1). Это позволяет добиться непрерывности в кластерных индексах в которых ГУИД идет первым полем. А если создать свой GUID "Новый УникальныйИдентификатор()" - или получить его со стороны, к примеру пришёл из обмена, да ещё и не 1с ного. То ссылка на основе его будет "выбиваться" из общего строя ссылок. Единственное я что то вообще не понимаю влияет ли это на скорость запросов? И на что это вообще влияет кроме сортировки по Ссылке - чего и так никто не делает. Где об этом почитать? | |||
| 1
    
        Вафель 30.11.18✎ 10:48 | 
        в базе идет упорядоченный гуид для более быстрой вставки     | |||
| 2
    
        Вафель 30.11.18✎ 10:48 | 
        на чтение влиять не будет уже     | |||
| 3
    
        Cyberhawk 30.11.18✎ 10:48 | 
        "кроме сортировки по Ссылке - чего и так никто не делает" // Явно не делает, неявно много где     | |||
| 4
    
        Cyberhawk 30.11.18✎ 10:49 | 
        На сортировку влиять не должно     | |||
| 5
    
        1Сергей 30.11.18✎ 10:55 | 
        >>Нумерация их идет строго последовательная (+1). 
 Ложь | |||
| 6
    
        scanduta 30.11.18✎ 10:59 | 
        Не вредит     | |||
| 7
    
        Serg_1960 30.11.18✎ 11:00 | 
        (0) Создание "своего" GUIDа, в принципе, вообще ни на что не влияет. И Ваша "непрерывность" тоже ни на что не влияет, никому не нужна. Просто подумайте: есть удаление объектов, есть РИБ (где GUIDы генерятся в различных автономных по сути базах) - "непрерывность" долго не просуществует. Это сферический  конь в вакууме.     | |||
| 8
    
        1Сергей 30.11.18✎ 11:03 | 
        http://pics.rsh.ru/img/_rfeuq9e1.png
 нумерация идёт последовательно в пределах одного сеанса всего лишь | |||
| 9
    
        1Сергей 30.11.18✎ 11:05 | 
        ну, и сортировка по такому уиду бессмысленна     | |||
| 10
    
        Serg_1960 30.11.18✎ 11:05 | 
        PS: вы тут вспомнили про сортировку по ссылки, а мне в первый момент времени мелькнула мысль да, да про него самого - МоментВремени :)     | |||
| 11
    
        Aleksey 30.11.18✎ 11:31 | 
        Я уже лет 10 в 8-ке свой гуид использую. Удобно для "разделенных" базах     | |||
| 12
    
        ptiz 30.11.18✎ 11:35 | 
        (11) А как генеришь? И для каких объектов?     | |||
| 13
    
        SUA 30.11.18✎ 11:35 | 
        (0)главное чтобы уникальный
 и больше ни на что не повлияет тогда | |||
| 14
    
        Aleksey 30.11.18✎ 11:43 | 
        (12) Для всех.
 Сначала было тупо путем своего правила преобразования из модовского IDD (17 символов) в гуид (32 символа). В простом случае это выглядит IDD = 12233445566778899 GUID = FFFFFFFF-FFFF-FFF1-2233-445566778899 (У меня чуть сложнее но не суть). Это преобразование работает в обе стороны, я могу и гуид получить и зная гуид получить IDD из которого оно было создано (актуально для сравнения баз) Сейчас, из -за отказа от mod, добавил везде реквизит GUID и для новых объектов формирую его в 7-ке стандартным способом НТТРСистИнформ = СоздатьОбъект("AddIn.V7SysInfo"); Возврат СокрЛП(НТТРСистИнформ.СоздатьGUID()); Ну а в 8-ке это стандартная ссылка, ничего дополнительно не генерирую. Прсто при обменах использую гуид из 7-ки как ссылку в 8-ке | |||
| 15
    
        ptiz 30.11.18✎ 11:47 | 
        (14) Ах вон оно что. Я думал, что цель, например, определять место или дату создания объекта в РИБ 1С8, и свой алгоритм УИДы генерит с этими данными.     | |||
| 16
    
        Aleksey 30.11.18✎ 11:54 | 
        (15) ну у меня быфла цель синхронизация справочников из разных баз с наименьшими телодвижениями     | |||
| 17
    
        d4rkmesa 30.11.18✎ 11:56 | 
        (1) Я как то подобное ляпнул, меня заплевали. Справедливости ради, на новой платформе(или конфе на УФ) почему-то уже совсем не упорядоченные.     | |||
| 18
    
        Cyberhawk 30.11.18✎ 11:57 | 
        (17) В пределах сеанса - вполне упорядоченные     | |||
| 19
    
        d4rkmesa 30.11.18✎ 12:01 | 
        (18) Я спецом поэксперементировал, создавал пустую базу на УФ на актуальной платформе (8.3.12) и сделал несколько элементов справочника подряд. К моему удивлению, ид-ники у них были разные совсем. Если не лень, можно попробовать провести эксперимент.     | |||
| 20
    
        Злопчинский 30.11.18✎ 12:05 | 
        да без проблем. постоянно в базе создаются объекты с чужими гуидами, пришедшими в пакетах обмена. рядовой случай.     | |||
| 21
    
        Вафель 30.11.18✎ 12:08 | 
        (7) влияет конечно же. не зря же MSSQL есть метод sequential id Как бы вставка вконец таблицы и в середины разные по скорости | |||
| 22
    
        1Сергей 30.11.18✎ 12:18 | 
        (19) попробовал
 http://pics.rsh.ru/img/_b7r78e0c.png | |||
| 23
    
        Сияющий в темноте 30.11.18✎ 21:08 | 
        У функции создания гуид в windows есть пакетный режим,когда она может создавать много гуид отличающихся только полем счетчика,соответственно,1с просто вызывает эту функцию один раз,получая множество гуидов,которые потом используются по мере необходимости.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |