powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / 1С 8.Х Индексировать по нескольким реквизитам
25 сообщений из 48, страница 1 из 2
1С 8.Х Индексировать по нескольким реквизитам
    #38759881
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.

Столкнулся с такой проблемой - как создать один(!) индекс на несколько реквизитов?
Выставление реквизитам {Индексировать = ИСТИНА} приводит к созданию отдельных индексов для каждого реквизита.
А мне нужен, скажем, индекс {Пол, СостоитВБраке, ДатаРождения}

Пока что вижу только путь напрямую создавать индексы в СУБД, но как тогда быть с файловой.......
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38759896
trew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmov,

Создание индексов явным образом возможна тремя способами:

1) Установка флага “Индексировать” у поля (реквизита/измерения). Вариант “Индексировать с доп. упорядочиванием” добавляет в индекс поле “Код” или “Наименование” (прежде всего для динамических списков).
2) Добавление поля в “Критерии отбора” (Конфигурация -Общие -Критерии отбора)
3) Указание индексируемого поля в запрос с помощью конструкции “ИНДЕКСИРОВАТЬ ПО”
Код: html
1.
2.
3.
4.
5.
6.
ВЫБРАТЬ
Код,
Наименование
ПОМЕСТИТЬ ВременнаяТаблица
ИЗ Справочник.Номенклатура
ИНДЕКСИРОВАТЬ ПО Код



Если в бд желаете добавить Составной индекс, тогда придумайте префикс для своих индексов. Чтобы отличать свои от 1С.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38759958
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
trew1) Установка флага “Индексировать” у поля (реквизита/измерения). Вариант “Индексировать с доп. упорядочиванием” добавляет в индекс поле “Код” или “Наименование” (прежде всего для динамических списков).
2) Добавление поля в “Критерии отбора” (Конфигурация -Общие -Критерии отбора)
3) Указание индексируемого поля в запрос с помощью конструкции “ИНДЕКСИРОВАТЬ ПО”
И 1C создает по индексу на каждое поле........
Нужно создать один(!) индекс на несколько полей(реквизитов), а не по индексу на каждое.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38760196
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmovНужно создать один(!) индекс на несколько полей(реквизитов), а не по индексу на каждое. в каком объекте?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38760461
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vi0в каком объекте?
Справочник/Документ
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38761641
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmovvi0в каком объекте?
Справочник/Документ
можно создать непериодический регистр сведений с измерениями Пол, СостоитВБраке, ДатаРождения
и ресурсом СсылкаНаСправочник.
У непериодического РС создается кластерный индекс по всем измерениям, т.е. избыточного увеличения размера БД не будет.

Если брать ваш пример (Пол, СостоитВБраке, ДатаРождения) то это будет плохой неселективный индекс т.к. поля Пол и СостоитВБраке булевы и оптимизатор скорее всего будет использовать сканирование индекса (если конечно пример индекса реальный)
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762672
user1c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если будет:vi0Если брать ваш пример (Пол, СостоитВБраке, ДатаРождения) то это будет плохой неселективный индекс тогда почемуvi0т.е. избыточного увеличения размера БД не будет.?

К чему вообще этот совет?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762711
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Глупый вопрос - но ЗАЧЕМ автору составной индекс тем более в файловой базе...?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762732
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user1cК чему вообще этот совет? совет к тому, что не смотря на добавление нового объекта метаданных по объему это будет все равно что создать индекс

а в первом вопросе не увидел противоречия
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762807
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 1сГлупый вопрос - но ЗАЧЕМ автору составной индекс тем более в файловой базе...?
Даже в Access составной индекс выигрывает раз в 50 у отдельных индексов по каждому полю.

в 1с, если будет изменение объекта, то и индексы могут пересобраться, а рукотворный уйдет в историю.
Придется делать SQL скрипт, если индекс отсутствует, то создать по таким то полям и раз в сутки запускать или после обновления.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762867
user1c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vi0user1cК чему вообще этот совет? совет к тому, что не смотря на добавление нового объекта метаданных по объему это будет все равно что создать индекс

а в первом вопросе не увидел противоречияИндекс который не будет использоваться СУБД по своему прямому назначению не является причиной избыточного увеличения размера БД?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762903
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user1cИндекс который не будет использоваться СУБД по своему прямому назначению не является причиной избыточного увеличения размера БД? у ТС был вопрос, я предложил инструмент
какие еще вопросы?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762948
Фотография erp20
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vi0user1cИндекс который не будет использоваться СУБД по своему прямому назначению не является причиной избыточного увеличения размера БД? у ТС был вопрос, я предложил инструмент
какие еще вопросы?Этот ответ все мои вопросы снял. Спасибо.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762953
Фотография erp20
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
erp20vi0пропущено...
у ТС был вопрос, я предложил инструмент
какие еще вопросы?Этот ответ все мои вопросы снял. Спасибо.Сам такими же методами пользуюсь. Только подписки приходится рисовать что бы индексы наполнялись данными.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38762966
user1c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
erp20vi0пропущено...
у ТС был вопрос, я предложил инструмент
какие еще вопросы?Этот ответ все мои вопросы снял. Спасибо.А мои нет. Я так и непонял целесообразность этой рекомендации. Индекс ради индекса? Их таких итак в типовых решениях много.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38763036
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Volochkovaв 1с, если будет изменение объекта, то и индексы могут пересобраться, а рукотворный уйдет в историю.
Придется делать SQL скрипт, если индекс отсутствует, то создать по таким то полям и раз в сутки запускать или после обновления. О! Спасибо за ответ. Ближе всего к тому что нужно.

1. Получается каждый раз, когда 1С накатывает метаданные на СУБД - таблицы будут перестроены и индексы уйдут в небытие?
2. Где увидеть удобоваримой форме размещение объектов и их реквизитов в СУБД. А то в СУБД данные из 1С хранятся в виде, типа Reference12.Field9, и поди догадайся что это Контрагент.Телефон ))).... ?
3. Вы сами используете "рукотворные индексы" ? Помогает?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38763230
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user1cЯ так и непонял целесообразность этой рекомендации. Индекс ради индекса? Их таких итак в типовых решениях много. использование РС для основной фильтрации и последующее inner join со справочником
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38763338
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VolochkovaПрограммист 1сГлупый вопрос - но ЗАЧЕМ автору составной индекс тем более в файловой базе...?
Даже в Access составной индекс выигрывает раз в 50 у отдельных индексов по каждому полю.

в 1с, если будет изменение объекта, то и индексы могут пересобраться, а рукотворный уйдет в историю.
Придется делать SQL скрипт, если индекс отсутствует, то создать по таким то полям и раз в сутки запускать или после обновления.Причем тут скуль и файловая база? Вопрос к автору остался.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38763544
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программист 1сПричем тут скуль и файловая база? Вопрос к автору остался.Программист 1сЗАЧЕМ автору составной индексДля более быстрого поиска данныхПрограммист 1стем более в файловой базе...?Для более быстрого поиска данных в файловой(!) базе ))))

P.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль"
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38763913
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmovПрограммист 1сПричем тут скуль и файловая база? Вопрос к автору остался.Программист 1сЗАЧЕМ автору составной индексДля более быстрого поиска данныхПрограммист 1стем более в файловой базе...?Для более быстрого поиска данных в файловой(!) базе ))))

P.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль"Тоесть Вы используете ФАЙЛОВУЮ базу для более быстрого поиска?

Ps Вы можете мне сказать откуда у Вас информация что для файловой базы в внутренних запросах будут использоваться данные индексы?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38764151
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmovПрограммист 1сПричем тут скуль и файловая база? Вопрос к автору остался.Программист 1сЗАЧЕМ автору составной индексДля более быстрого поиска данныхПрограммист 1стем более в файловой базе...?Для более быстрого поиска данных в файловой(!) базе ))))

P.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль"


Мой совет только для MS SQL редакции ( не файловый вариант).

С файловым дело плохо.
Видела я где то "конфигуратор", чтобы индексы были составными, но темка была платная.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38764224
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmovP.S. От себя замечу, что "скуль" - это язык запросов. А данные все равно лежат в файлах на жестком диске, хоть "скуль" хоть NO "скуль" рано вам составными индексами заниматься)
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38764685
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vi0рано вам составными индексами заниматься)
))) да уж. Всего-то 4 года занимался MsSql, MySql, Cache'. Теперь разбираюсь как заставить 1С'ку шустрее вертеться и стал "маленьким" для составных индексов.
Впрочем у меня обратное мнение - многие из 1Сников, в принципе не знакомы с индексированием данных, поэтому мой вопрос т вызывает в их среде закономерное непонимание(а че, есть же св-во индексировать), раздражение(ну мы же и так работаем) и желание позубоскалить )))
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38764696
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VolochkovaМой совет только для MS SQL редакции ( не файловый вариант).
С файловым дело плохо.
Видела я где то "конфигуратор", чтобы индексы были составными, но темка была платная.
Спасибо за ответ.
Да я уже понял что в платформе составные индексы не поддерживаются(ну кроме генерируемых платформой для хранения ), а в саму файловую БД в обход платформы не залезешь. Это печально, но так.

Тем не менее остаются еще внешние реляционки, поддерживаемые платформой - MsSql, Oracle, PgSql, DB2

Ваш ответ был информативным, поэтому вдруг Вы сможете и на следующие ответить:
1. Получается каждый раз, когда 1С накатывает метаданные на СУБД - таблицы будут перестроены и индексы(созданные в обход платформы) уйдут в небытие?
2. Где увидеть удобоваримой форме размещение объектов и их реквизитов в СУБД. А то в СУБД данные из 1С хранятся в виде, типа Reference12.Field9, и поди догадайся что это Контрагент.Телефон ))).... ?
3. Вы сами используете "рукотворные индексы" ? Помогает?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38765180
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmov,
Какого рода выборки вы хотите оптимизировать? В прикладных терминах. 1с построена так что выборки в подавляющем большенстве случаев формируются из регистров, а они содержат составные индексы.
...
Рейтинг: 0 / 0
25 сообщений из 48, страница 1 из 2
Форумы / [игнор отключен] [закрыт для гостей] / 1С 8.Х Индексировать по нескольким реквизитам
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]