Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Написание Olap-подобного моторчика на Cache для реалтаймовой системы?
|
|||
|---|---|---|---|
|
#18+
VadimF BitMap-индексы используют $bit-функции, которые реализованы на уровне ядра. Я об этом писал в этой ветке. Можно найти об этом информацию в материалах, которые я советовал посмотреть и в документации. Такой подход и позволил очень сильно увеличить производительность. Вадим, я вообще-то догадывался, что в BitMap используется не $Extract. :) Но речь еще и о том, что вся остальная чехарда реализована не на уровне ядра, а средствами языка. Плюс деление на кусочки по 8k, плюс запись в обычный массив... короче, не будет это быстрее. Возможно по сравнению кое с кем будет не медленнее, но быстрее?! VadimF Ограничение 32k снято на уровне ядра в Cache' 2007.1. В следующих версиях будет снято на уровне объектов и SQL. Это радует. VadimF На работу BitMap-индексов это сильно не влияет. В документации описывается как храниться BitMap-индекс. Caché Development Guides -> Using Caché Multi-Dimensional Storage -> SQL and Object Use of Multidimensional Storage -> Bitmap Indices Вот отрывок: The third subscript contains a chunk number; for efficiency, bitmap indices are divided into a series of bit strings each containing information for about 64000 rows from the table. Each of these bit strings are referred to as a chunk. Размер каждого "кусочка" 8k, что соответствует размеру блока. 1. Это Вам так кажется, что не влияет. 2. Я знаю как они хранятся. 3. BitMap строка не помещается в блок, разве что в BigString, а там уже пофигу какой у Вас размер строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2007, 23:21 |
|
||
|
Написание Olap-подобного моторчика на Cache для реалтаймовой системы?
|
|||
|---|---|---|---|
|
#18+
Sergei Obrastsov 3. BitMap строка не помещается в блок, разве что в BigString, а там уже пофигу какой у Вас размер строки. Брякнул, а не подумал, прошу прощения. Там ведь 8192, на фиксированных ссылках влезет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2007, 23:32 |
|
||
|
Написание Olap-подобного моторчика на Cache для реалтаймовой системы?
|
|||
|---|---|---|---|
|
#18+
Sergei Obrastsov Sergei Obrastsov 3. BitMap строка не помещается в блок, разве что в BigString, а там уже пофигу какой у Вас размер строки. Брякнул, а не подумал, прошу прощения. Там ведь 8192, на фиксированных ссылках влезет. Битовая строка храниться в сжатом виде! Там 64000 элемента, но так как используется сжатие, это меньше 8k. Вадим ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2007, 12:20 |
|
||
|
Написание Olap-подобного моторчика на Cache для реалтаймовой системы?
|
|||
|---|---|---|---|
|
#18+
VadimF Sergei Obrastsov Sergei Obrastsov 3. BitMap строка не помещается в блок, разве что в BigString, а там уже пофигу какой у Вас размер строки. Брякнул, а не подумал, прошу прощения. Там ведь 8192, на фиксированных ссылках влезет. Битовая строка храниться в сжатом виде! Там 64000 элемента, но так как используется сжатие, это меньше 8k. Почему же тогда ровно 64000, то есть 8000 x 8? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2007, 12:31 |
|
||
|
Написание Olap-подобного моторчика на Cache для реалтаймовой системы?
|
|||
|---|---|---|---|
|
#18+
Sergei Obrastsov Sergei Obrastsov -Serg- Sergei Obrastsov -Serg-Какова максимальная длина BitMap индекса на один ID, если размер кластера, например равен 32000. n=32000*8 ??? А если нужно несколько млн. позиций или млрд-ов ??? на один узел - да. только причем тут кластер? ограничение идет от длины данного. значит надо использовать группу узлов. не думаю, что это очень удобно. хотя запас скорости позволяет обрабатывать это достаточно безболезненно, я полагаю. Эээ, как это на разные узлы??? Неапример такблица ID Ni Ni-1 Ni-2 ... 1 A1 0 1 0 0 ... Вопрос в том, максимальное значение i (например, если число реквизитов i=nn-млн-в и где это все хранить в базе т.е. как (длина строки в каше ограничена) А Вы предполагали все это запихнуть в одну строку? Разве у РСБУД нет ограничений на длину одной записи? Вот и здесь то же самое. Да обычно и хранить: ^X(1)=0 ... ^X(Ni)=0 Туплю с утра, sorry. Речь ведь о BitMap идет? Тогда нарезка по 262,000 значений на строку, конечно. То есть: ^X(y) = bit где bit = bitmap для значений от Nj до Nj+262000 В окончательном варианте для БД получаем: ^X(ID,y)=BITn Так и я о том же !!! Если работать через ^X это уже не чистый bit индекс, а какой-то составной, типа "глобальбитый" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 14:42 |
|
||
|
Написание Olap-подобного моторчика на Cache для реалтаймовой системы?
|
|||
|---|---|---|---|
|
#18+
VadimF Sergei Obrastsov Sergei Obrastsov 3. BitMap строка не помещается в блок, разве что в BigString, а там уже пофигу какой у Вас размер строки. Брякнул, а не подумал, прошу прощения. Там ведь 8192, на фиксированных ссылках влезет. Битовая строка храниться в сжатом виде! Там 64000 элемента, но так как используется сжатие, это меньше 8k. Вадим S a="" F i=1:1 S j=i#2,$BIT(a,i)=j W !,i,"-",$L(a) 262104-32767 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 14:51 |
|
||
|
Написание Olap-подобного моторчика на Cache для реалтаймовой системы?
|
|||
|---|---|---|---|
|
#18+
VadimF BitMap-индексы появились несколько лет назад в версии Cache' 5.0. С тех пор в Cache' появилось много новых возможностей. Вадим Как я понимаю речь идет о индексах!? Какие новые возможности (многие) появились. Можно ли кратко их описать. Это важно для всех. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 14:54 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=34255295&tid=1559424]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
51ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 340ms |

| 0 / 0 |
