|
|
|
Оптимизация работы UTL_MATCH.JARO_WINKLER_SIMILARITY
|
|||
|---|---|---|---|
|
#18+
Всем привет, Есть задача по уменьшению времени работы поиска, который использует функцию UTL_MATCH.JARO_WINKLER_SIMILARITY Из того, что уже сделано, создана отдельная колонка в таблице, в которой содержатся уже отсортированные слова, например у нас есть Last_Name = 'Kenwood' and First_Name = 'Lara', в нашей колонке будет следующее значение 'KENWOOD LARA', входная строка, точно также сортируется. Теперь есть вопрос, можно ли как-то построить функциональный индекс на такую конструкцию UTL_MATCH.JARO_WINKLER_SIMILARITY(Namestring_ord, :PARAMETER) ? Заранее благодарен за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2016, 01:15 |
|
||
|
Оптимизация работы UTL_MATCH.JARO_WINKLER_SIMILARITY
|
|||
|---|---|---|---|
|
#18+
Нет, индекс структура статическая и должен полностью определяться данными, которые индексирует. Но можно создать доменный индекс - кастомный (см. ODCIIndex) или готовый - см. Oracle Context option, если лицензия позволяет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2016, 12:44 |
|
||
|
Оптимизация работы UTL_MATCH.JARO_WINKLER_SIMILARITY
|
|||
|---|---|---|---|
|
#18+
Похоже целевая картина будет выглядеть так: 1. Создаем Context индекс 2. Строим строку для поиска с помощью Contain (fuzzy({word1},60,10,W), fuzzy({word2},60,10,W , ....) > p_score 3. Сверху на результат делаем UTL_MATCH.jaro_winkler_similarity('String with ordered words','Input string with ordered words') > p_utl_Score 4. Возвращаем результат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2016, 22:59 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39323099&tid=1887288]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
197ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 517ms |

| 0 / 0 |
