На главную О компании Продукты Технологии Публикации Партнерам in English: in English
На главную

   Помощь
Главная
Продукты
Общий форум для всех продуктов

RCO Law Reference Extractor SDK











Расширения стандартных решений
RCO for Oracle: поиск на русском языке
RCO for BackOffice: поиск на русском языке



Инструментарий разработчика
RCO Fact Extractor SDK
RCO Text Categorization Engine
RCO Address Parser
RCO Database Record Cleaner
RCO Morphology SDK
RCO Morphology Professional SDK
RCO Information Extraction Service



Приложения RCO Fact Extractor SDK
RCO Deduplicator SDK
RCO TopExtractor SDK
RCO Glossary Maker SDK
RCO Block Parser SDK
RCO Law Reference Extractor SDK



Инструментарий аналитика
RCO Fact Extractor Desktop
RCO Zoom



Архив продуктов (более не поддерживаются)
RCO Syntactic Engine SDK
RCO Semantic Network SDK
RCO Pattern Extractor SDK
RCO Entity Extractor SDK




Форум

Дмитрий

 15.12.03, 23:21
Поиск на разных языках MSSQL2000
Возможно я что-то не так понял, но согласно информации на сайте после установки данной системы полнотекстовый поиск будет доступен только на каком-то одном языке (только на руском или только на английском в зависимости от того на каком языке будет создан индекс).

Это действительно так, или все же возможно построение баз для которых поиск можно будет осуществлять одновременно на двух языках???
Ответить

Плешко Владимир

 16.12.03, 15:25
re: Поиск на разных языках MSSQL2000
Ответ получится длинным...

При добавлении поля в полнотекстовый каталог MSSQL требуется указать язык, на котором написан индексируемый текст. Далее MSSQL передает эту информацию и способ доступа к тексту в MSSEARCH, который раельно создает поисковые индексы и осуществляет поиск.

В соответствии с указанным языком MSSEARCH вызывает зарегистрированные в системе компоненты WordBreaker (разбиение текста на слова) и Stemmer (расширение запроса словоформами). Для каждого языка зарегистрированны свои компоненты. Для русского языка - MS не поставляет. RCO for BackOffice - это две компоненты + подстройка для MSSQL, чтобы вы могли указать русский язык через интерфейс администратора.

Внутри MSSEARCH все хранится в Unicode. WordBreaker, как правило, ничего не портит - нейтрален для других языков. Вопрос состоит в том, как вызвать нужный Stemmer, то есть указать язык, на котором вы делаете запрос.

Например, в Indexing Services можно указывать язык запроса - там, видимо, поднимается нужный Stemmer.
Догадайтесь, какой язык запроса будет в MSSQL. Конечно, тот, что был указан при построении индекса.

Если нужно искать на двух языках в MSSQL, первое, что приходит в голову, это

либо написать Stemmer, который бы воспринимал все неизвестные слова, как слова дополнительного языка и анализировал бы их (альтернатива - вызов готового Stemmer'а),

либо создать поле, дублирующее исходное, построить по нему индекс на втором языке (по одному полю, по-моему, нельзя построить два индекса), а при запросах искать по обоим полям и объелинять результаты.
Ответить

Pig

 08.01.04, 17:01
re: re: Поиск на разных языках MSSQL2000
А можно создавать два индекса, один на русском, другой на английском?
Ответить

Плешко Владимир

 12.01.04, 14:54
re: re: re: Поиск на разных языках MSSQL2000
В документации (SQL Server Books online) написано, что с таблицей можно связать только один полнотекстовый индекс.
Ответить

PiG

 29.02.04, 20:51
re: re: re: re: Поиск на разных языках MSSQL2000
>В документации (SQL Server Books online) написано, что с таблицей можно связать только один полнотекстовый индекс.

А чего они пишут, что могут сразу на 2х языках искать?

http://www.medialingua.ru/sledopyt_sql.html
Ответить

Плешко Владимир

 01.03.04, 19:13
re: re: re: re: re: Поиск на разных языках MSSQL2000
>А чего они пишут, что могут сразу на 2х языках искать?

Видимо, сделали это:
"либо написать Stemmer, который бы воспринимал все неизвестные слова, как слова дополнительного языка и анализировал бы их (альтернатива - вызов готового Stemmer'а)"
Ответить
Новое сообщение






Контакты

тел./факс: +7 495 287-9887    e-mail: info@rco.ru