powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Индексы на сложные типы данных
6 сообщений из 6, страница 1 из 1
Индексы на сложные типы данных
    #37213353
MasteRus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос: Можно ли использовать индексы на сложные типы данных?

Пояснение: Имеется класс, который содержит коллекции, массивы и списки. SQL-запрос, выполняемый при наличии данных полей выполняется гораздо медленней, чем без них (иногда до 10-ти раз!!!).

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Property MyArray As %String(CAPTION = "Массив текстовых значений") [ Collection = array ];

Property MyList As class1(CAPTION = "Лист экземпляров класса") [ Collection = list ];
// Далее обычные поля

Class class1 Extends %SerialObject [ ClassType = serial, ProcedureBlock ]
{

Property CheckDT As %Date [ InitialExpression = {+$H} ];
// остальные поля
Property Log As %String(CAPTION = "Log", MAXLEN =  250 );

}

Попытки создать индексы на такие типы полей не удались. Возможно ли это или требуется перестройка структуры БД?
...
Рейтинг: 0 / 0
Индексы на сложные типы данных
    #37213375
MasteRus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Совсем забыл: Версия 5.0.21
...
Рейтинг: 0 / 0
Индексы на сложные типы данных
    #37213379
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В старших версиях каше порывается создать индексы на array, но к тому времени я уже приходил с топором и переделывал на relationship, так что оценить то, как оно работает - не могу.

В младших вроде как нет возможности сделать такие индексы.
...
Рейтинг: 0 / 0
Индексы на сложные типы данных
    #37213414
MasteRus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блок А.Н.В старших версиях каше порывается создать индексы на array, но к тому времени я уже приходил с топором и переделывал на relationship, так что оценить то, как оно работает - не могу.

В младших вроде как нет возможности сделать такие индексы.
Это очень, очень печально. Может ещё кто-нибудь посоветует решение?
З.Ы. ради интереса: в каких версиях это появилось?
...
Рейтинг: 0 / 0
Индексы на сложные типы данных
    #37213515
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasteRusМожет ещё кто-нибудь посоветует решение?
Таки перестать использовать "коллекции, массивы и списки"... Об этом в этом разделе писалось уже не раз со времени создания раздела.
...
Рейтинг: 0 / 0
Индексы на сложные типы данных
    #37213520
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasteRus ,

В версии 5.0.x формально Вы можете создать индексы для коллекций, хотя в документации отсутствует описание такой возможности.
Но всё равно остаётся вопрос, будет ли SQL и в каких случаях эти индексы использовать.

В более свежих версиях СУБД Caché, начиная с версии 2007.1 , есть и соответствующее описание и специальные предикаты для SQL:
Индексирование Коллекций

Collection Indexing and Querying Collections through SQL
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Индексы на сложные типы данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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