Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как организовать поиск в БД по многим признакам?Чем может помочь OLAP?
|
|||
|---|---|---|---|
|
#18+
Сразу скажу, что с OLAP никак не знаком, кроме определения, попытка решить проблему привела сюда. Oracle 10g, таблица миллионов на 6-7. У каждого ID есть набор битовых признаков 1\0. Их много, в разных реализациях от нескольких десятков до нескольких сотен. В реализации они объединяются в 2 поля типа int по битам. Нужно искать по шаблону - битовой маске запрос типа SELECT * FROM table WHERE BITAND(S1, :inS1)=S1 AND BITAND(S2, :inS2)=S2 (BITAND - это в оракле побитовое умножение) То есть, поиск, учитывающий очень много признаков. Oracle тормозит, время работы запросы неприемлемое. Эти признаки иногда(редко) изменяются - порядок сотни в месяц. Добавлять новые записи приходится постоянно - несколько десятков тысяч в неделю. Наболевшие вопросы: 1. Как можно применить инструменты OLAP, встроенные в Oracle, чтобы ускорить поиск? 2. Что для этого нужно сделать? И что почитать(чтобы примеры были)? Тему я начинал здесь: http://www.sql.ru/forum/actualthread.aspx?tid=127972&hl=bitand Наверняка, OLAP как-то должен помочь, я это чую :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2004, 00:41 |
|
||
|
Как организовать поиск в БД по многим признакам?Чем может помочь OLAP?
|
|||
|---|---|---|---|
|
#18+
вообще-то олап не подходит для поиска записей в реляционных БД... Вот если бы вам надо было анализировать какие-то показатели в зависимости от битовых признаков - тогда это сюда. т.е. такой запрос ОЛАП не ускорит Код: plaintext 1. 2. а вот такой: Код: plaintext 1. 2. 3. 4. запросто! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2004, 10:18 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=32778913&tid=1872081]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
44ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 349ms |

| 0 / 0 |
