|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
Здравствуйте. Столкнулся с такой проблемой - как создать один(!) индекс на несколько реквизитов? Выставление реквизитам {Индексировать = ИСТИНА} приводит к созданию отдельных индексов для каждого реквизита. А мне нужен, скажем, индекс {Пол, СостоитВБраке, ДатаРождения} Пока что вижу только путь напрямую создавать индексы в СУБД, но как тогда быть с файловой....... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2014, 17:31 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
sigmov, Создание индексов явным образом возможна тремя способами: 1) Установка флага “Индексировать” у поля (реквизита/измерения). Вариант “Индексировать с доп. упорядочиванием” добавляет в индекс поле “Код” или “Наименование” (прежде всего для динамических списков). 2) Добавление поля в “Критерии отбора” (Конфигурация -Общие -Критерии отбора) 3) Указание индексируемого поля в запрос с помощью конструкции “ИНДЕКСИРОВАТЬ ПО” Код: html 1. 2. 3. 4. 5. 6.
Если в бд желаете добавить Составной индекс, тогда придумайте префикс для своих индексов. Чтобы отличать свои от 1С. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2014, 18:10 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
trew1) Установка флага “Индексировать” у поля (реквизита/измерения). Вариант “Индексировать с доп. упорядочиванием” добавляет в индекс поле “Код” или “Наименование” (прежде всего для динамических списков). 2) Добавление поля в “Критерии отбора” (Конфигурация -Общие -Критерии отбора) 3) Указание индексируемого поля в запрос с помощью конструкции “ИНДЕКСИРОВАТЬ ПО” И 1C создает по индексу на каждое поле........ Нужно создать один(!) индекс на несколько полей(реквизитов), а не по индексу на каждое. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2014, 20:37 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
sigmovНужно создать один(!) индекс на несколько полей(реквизитов), а не по индексу на каждое. в каком объекте? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2014, 09:14 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
vi0в каком объекте? Справочник/Документ ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2014, 12:31 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
sigmovvi0в каком объекте? Справочник/Документ можно создать непериодический регистр сведений с измерениями Пол, СостоитВБраке, ДатаРождения и ресурсом СсылкаНаСправочник. У непериодического РС создается кластерный индекс по всем измерениям, т.е. избыточного увеличения размера БД не будет. Если брать ваш пример (Пол, СостоитВБраке, ДатаРождения) то это будет плохой неселективный индекс т.к. поля Пол и СостоитВБраке булевы и оптимизатор скорее всего будет использовать сканирование индекса (если конечно пример индекса реальный) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 11:08 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
Если будет:vi0Если брать ваш пример (Пол, СостоитВБраке, ДатаРождения) то это будет плохой неселективный индекс тогда почемуvi0т.е. избыточного увеличения размера БД не будет.? К чему вообще этот совет? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 22:39 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
Глупый вопрос - но ЗАЧЕМ автору составной индекс тем более в файловой базе...? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 23:35 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
user1cК чему вообще этот совет? совет к тому, что не смотря на добавление нового объекта метаданных по объему это будет все равно что создать индекс а в первом вопросе не увидел противоречия ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 00:08 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
Программист 1сГлупый вопрос - но ЗАЧЕМ автору составной индекс тем более в файловой базе...? Даже в Access составной индекс выигрывает раз в 50 у отдельных индексов по каждому полю. в 1с, если будет изменение объекта, то и индексы могут пересобраться, а рукотворный уйдет в историю. Придется делать SQL скрипт, если индекс отсутствует, то создать по таким то полям и раз в сутки запускать или после обновления. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 07:13 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
vi0user1cК чему вообще этот совет? совет к тому, что не смотря на добавление нового объекта метаданных по объему это будет все равно что создать индекс а в первом вопросе не увидел противоречияИндекс который не будет использоваться СУБД по своему прямому назначению не является причиной избыточного увеличения размера БД? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 09:32 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
user1cИндекс который не будет использоваться СУБД по своему прямому назначению не является причиной избыточного увеличения размера БД? у ТС был вопрос, я предложил инструмент какие еще вопросы? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 10:06 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
vi0user1cИндекс который не будет использоваться СУБД по своему прямому назначению не является причиной избыточного увеличения размера БД? у ТС был вопрос, я предложил инструмент какие еще вопросы?Этот ответ все мои вопросы снял. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 10:36 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
erp20vi0пропущено... у ТС был вопрос, я предложил инструмент какие еще вопросы?Этот ответ все мои вопросы снял. Спасибо.Сам такими же методами пользуюсь. Только подписки приходится рисовать что бы индексы наполнялись данными. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 10:37 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
erp20vi0пропущено... у ТС был вопрос, я предложил инструмент какие еще вопросы?Этот ответ все мои вопросы снял. Спасибо.А мои нет. Я так и непонял целесообразность этой рекомендации. Индекс ради индекса? Их таких итак в типовых решениях много. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 10:44 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
Volochkovaв 1с, если будет изменение объекта, то и индексы могут пересобраться, а рукотворный уйдет в историю. Придется делать SQL скрипт, если индекс отсутствует, то создать по таким то полям и раз в сутки запускать или после обновления. О! Спасибо за ответ. Ближе всего к тому что нужно. 1. Получается каждый раз, когда 1С накатывает метаданные на СУБД - таблицы будут перестроены и индексы уйдут в небытие? 2. Где увидеть удобоваримой форме размещение объектов и их реквизитов в СУБД. А то в СУБД данные из 1С хранятся в виде, типа Reference12.Field9, и поди догадайся что это Контрагент.Телефон ))).... ? 3. Вы сами используете "рукотворные индексы" ? Помогает? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 11:23 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
user1cЯ так и непонял целесообразность этой рекомендации. Индекс ради индекса? Их таких итак в типовых решениях много. использование РС для основной фильтрации и последующее inner join со справочником ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 13:13 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
VolochkovaПрограммист 1сГлупый вопрос - но ЗАЧЕМ автору составной индекс тем более в файловой базе...? Даже в Access составной индекс выигрывает раз в 50 у отдельных индексов по каждому полю. в 1с, если будет изменение объекта, то и индексы могут пересобраться, а рукотворный уйдет в историю. Придется делать SQL скрипт, если индекс отсутствует, то создать по таким то полям и раз в сутки запускать или после обновления.Причем тут скуль и файловая база? Вопрос к автору остался. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 14:38 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
Программист 1сПричем тут скуль и файловая база? Вопрос к автору остался.Программист 1сЗАЧЕМ автору составной индексДля более быстрого поиска данныхПрограммист 1стем более в файловой базе...?Для более быстрого поиска данных в файловой(!) базе )))) P.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль" ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 16:08 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
sigmovПрограммист 1сПричем тут скуль и файловая база? Вопрос к автору остался.Программист 1сЗАЧЕМ автору составной индексДля более быстрого поиска данныхПрограммист 1стем более в файловой базе...?Для более быстрого поиска данных в файловой(!) базе )))) P.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль"Тоесть Вы используете ФАЙЛОВУЮ базу для более быстрого поиска? Ps Вы можете мне сказать откуда у Вас информация что для файловой базы в внутренних запросах будут использоваться данные индексы? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 19:46 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
sigmovПрограммист 1сПричем тут скуль и файловая база? Вопрос к автору остался.Программист 1сЗАЧЕМ автору составной индексДля более быстрого поиска данныхПрограммист 1стем более в файловой базе...?Для более быстрого поиска данных в файловой(!) базе )))) P.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль" Мой совет только для MS SQL редакции ( не файловый вариант). С файловым дело плохо. Видела я где то "конфигуратор", чтобы индексы были составными, но темка была платная. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2014, 02:13 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
sigmovP.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль" рано вам составными индексами заниматься) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2014, 08:07 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
vi0рано вам составными индексами заниматься) ))) да уж. Всего-то 4 года занимался MsSql, MySql, Cache'. Теперь разбираюсь как заставить 1С'ку шустрее вертеться и стал "маленьким" для составных индексов. Впрочем у меня обратное мнение - многие из 1Сников, в принципе не знакомы с индексированием данных, поэтому мой вопрос т вызывает в их среде закономерное непонимание(а че, есть же св-во индексировать), раздражение(ну мы же и так работаем) и желание позубоскалить ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2014, 12:58 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
VolochkovaМой совет только для MS SQL редакции ( не файловый вариант). С файловым дело плохо. Видела я где то "конфигуратор", чтобы индексы были составными, но темка была платная. Спасибо за ответ. Да я уже понял что в платформе составные индексы не поддерживаются(ну кроме генерируемых платформой для хранения ), а в саму файловую БД в обход платформы не залезешь. Это печально, но так. Тем не менее остаются еще внешние реляционки, поддерживаемые платформой - MsSql, Oracle, PgSql, DB2 Ваш ответ был информативным, поэтому вдруг Вы сможете и на следующие ответить: 1. Получается каждый раз, когда 1С накатывает метаданные на СУБД - таблицы будут перестроены и индексы(созданные в обход платформы) уйдут в небытие? 2. Где увидеть удобоваримой форме размещение объектов и их реквизитов в СУБД. А то в СУБД данные из 1С хранятся в виде, типа Reference12.Field9, и поди догадайся что это Контрагент.Телефон ))).... ? 3. Вы сами используете "рукотворные индексы" ? Помогает? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2014, 13:03 |
|
1С 8.Х Индексировать по нескольким реквизитам
|
|||
---|---|---|---|
#18+
sigmov, Какого рода выборки вы хотите оптимизировать? В прикладных терминах. 1с построена так что выборки в подавляющем большенстве случаев формируются из регистров, а они содержат составные индексы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2014, 17:33 |
|
|
start [/forum/topic.php?fid=28&msg=38763036&tid=1519273]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 358ms |
total: | 487ms |
0 / 0 |