Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
31.08.2007, 12:19
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
Здравствуйте! Есть битмап индекс по полю Name. выглядит он так: ^test.classI("IndName","Name0",1) = "Ђ"_$c(0)_"?"_$c(31,0,0,1,2,24,0,0,2,0,8,0,16...................... ^test.classI("IndName","Name0",2) = "‚"_$c(0)_"@"_$c(31,0)_"Ђ"_$c.............. ^test.classI("IndName","Name0",3) = "Ѓ"_$c(0)_"?"_$c(31,4,0,0,0)_"Ќ"_$c........ ........ ^test.classI("IndName","Name1",1) = "„"_$c(0)_"?"_$c(31)_"$"_$c(0)_"("............. вопрос вот в чем: 1. как узнать номер блока? 2. как узнать ID объекта, удовлетворяющего условию "Name0" в битовой карте, учитывая что блоков много? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 12:39
|
|||
|---|---|---|---|
Bitmap индекс |
|||
|
#18+
LenRover , он (индекс) не для этого испольуется Номер какого блока? id узнается по позиции 1 в битовой "раскладке". Т.е. если имеем: 0000010010011 Значит нам подходят id 6, 9, 12 и 13 Зачем тебе этот индекс? :) ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 13:39
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
Дело в том, что мне нужно именно прямым доступом получить эти самые ID. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 13:42
|
|||
|---|---|---|---|
Bitmap индекс |
|||
|
#18+
Я спрашиваю - Че ты имено к этому (битмап) индексу пристал? :) Мало тебе других индексов?... Сделай еще один... Не битмап и будет тебе счастье. ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 13:43
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
А номер блока - это ^test.classI("IndName","Name0", 1 ) ^test.classI("IndName","Name0", 2 ) вот его и нужно узнать. еще я не очень понимаю как вообще работать с этой битовой картой.. я знаю, что к ней применяются всякие $B, $BitCount и тп.. но вот допустим, есть у меня этот индекс и надо узнать ID объектов с именем "Name0". Как это сделать, используя прямой доступ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 13:46
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
krvsaЯ спрашиваю - Че ты имено к этому (битмап) индексу пристал? :) Мало тебе других индексов?... Сделай еще один... Не битмап и будет тебе счастье. ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT Потому что у нас все реализовано на битовых индексах.. в общем, мне действительно нужен именно битмап! честно))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 14:15
|
|||
|---|---|---|---|
Bitmap индекс |
|||
|
#18+
Битмап индекс разрабатывался не для этого... Он разрабатывался для ускорения SQL запросов... Вы не там ищете ускорение в прямом доступе. это все равно что рыть подземный ход на чердак... ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 14:46
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
См: Caché Development Guides -> Using Caché Multidimensional Storage -> SQL and Object Use of Multidimensional Storage -> Bitmap Indices ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 15:02
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
Hampster-MumpsterСм: Caché Development Guides -> Using Caché Multidimensional Storage -> SQL and Object Use of Multidimensional Storage -> Bitmap Indices это по-моему единственное упоминание в каши о битовых индексах... эта статейка уже изучена вдоль и поперек.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 15:29
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
Тогда что конкретно не получилось? Пример вычисления SELECT COUNT(*) "вручную" там есть, осталось его творчески переработать... Кстати, можно подсмотреть решение и в коде SQL-запросов, если, конечно, его (код) сохранять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 16:12
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
Hampster-MumpsterТогда что конкретно не получилось? Пример вычисления SELECT COUNT(*) "вручную" там есть, осталось его творчески переработать... Кстати, можно подсмотреть решение и в коде SQL-запросов, если, конечно, его (код) сохранять. я не знаю как получить ID объекта, удовлетворяющего например name="Name0"... мне надо через прямой доступ, а не sql запрос.. так как когда в бд больше 30 млн записей, SQL - не катит!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 16:48
|
|||
|---|---|---|---|
Bitmap индекс |
|||
|
#18+
LenRover , сделай обычный индекс и не муч себя... Скажу больше... Даже SQL получит хорошее ускорение ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 17:29
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
SQL-запросы компилируются в обычный код на COS. Для динамического SQL формируются программы с именами вида CacheSql*. Для статического SQL - просто INT-код своей же проги. Здесь и надо подсматривать :) Кстати, качество генерируемого кода весьма хорошее, и всерьез ускорить едва ли удастся, если используется стандартная схема хранения данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.08.2007, 20:28
|
|||
|---|---|---|---|
Bitmap индекс |
|||
|
#18+
LenRover я не знаю как получить ID объекта, удовлетворяющего например name="Name0"... мне надо через прямой доступ, а не sql запрос.. так как когда в бд больше 30 млн записей, SQL - не катит!!!!! Так может "забить" на объекты и SQL и мыслить на уровне М ? Быстрее точно не полчуится ;-) Заодно и переносимость появится (Cache не последняя М-система ;-)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.09.2007, 15:15
|
|||
|---|---|---|---|
|
|||
Bitmap индекс |
|||
|
#18+
Если посмотришь во что компилируется твой класс, то увидишь примерно следующее: Код: plaintext 1. 2. 3. 4. 5. Обходить все "блоки", как ты их называешь S key=$O(^test.classI("IndName",Val,key)) Для каждого key искать все установленные биты и вычислять id: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=39&tablet=1&tid=1559234]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 384ms |

| 0 / 0 |
