Как игнорировать HTML-теги в Sql Server 2008 Полнотекстовый поиск - PullRequest
8 голосов
/ 12 января 2010

Я работаю над проектом базы знаний с использованием полнотекстового поискового движка SQL Server 2008. Проект включается в статьи и файлы, где каждая статья имеет несколько файлов. В этих статьях весь контент имеет вид pure html .

Сейчас я успешно создал полнотекстовый каталог и индекс для SQL Server 2008, и моя база данных совместима с версией 10.

Вот мои вопросы:

1) Можно ли игнорировать теги html, более четко тексты, содержащиеся в "<...>", при поиске в этих статьях, потому что, если я хочу искать div, таблицу и т. Д., Результат не должен возвращаться

2) Статьи будут обновляться в любое время, поэтому полнотекстовый индекс должен обновляться при вставке новой записи. Достаточно ли этого для установки только «TRACK CHANGES AUTOMATIC» при создании полнотекстового каталога?

3) Мы можем использовать функцию FILESTREAM в дальнейшем, имеет ли SQL Server 2008 хорошую производительность для файлов, использующих полнотекстовый индекс? Какие конкретные типы документов SQL Server 2008 хорош при индексировании?

Привет

Ответы [ 2 ]

27 голосов
/ 17 июня 2010

есть фильтр для файлов .htm и .html.

чтобы увидеть, установлен ли у вас фильтр, запустите этот sql:

SELECT * FROM sys.fulltext_document_types

вы должны увидеть:

.htm E0CA5340-4534-11CF-B952-00AA0051FE20 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\nlhtml.dll 12.0.6828.0 Microsoft Corporation

.html E0CA5340-4534-11CF-B952-00AA0051FE20 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\nlhtml.dll 12.0.6828.0 Microsoft Corporation

Итак, если вы можете преобразовать столбец статей в varbinary (max), вы можете добавить к нему полнотекстовый индекс и указать тип документа '.html'

после заполнения индекса вы можете проверить ключевые слова, используя этот sql:

SELECT display_term, column_id, document_count
FROM sys.dm_fts_index_keywords
(DB_ID('your_db'), OBJECT_ID('your_table')) 
0 голосов
/ 12 января 2010

Пожалуйста, проверьте это:

1) В полнотекстовом SQL Server мы можем определить шумовые слова / стоп-слова. Вы можете отредактировать файл мира шума, а затем вам нужно пересобрать каталог. Таким образом, вы можете поместить все теги HTML как шум. Пожалуйста, проверьте

http://msdn.microsoft.com/en-us/library/ms142551.aspx

2) При отслеживании изменений автоматически включаются изменения в текущем полнотекстовом поиске, но рейтинг новой добавленной статьи изменяется по сравнению с предыдущим. Так что до тех пор, пока ваш основной индекс не будет синхронизирован, он будет расти и падать с рейтингом.

3) Насколько я знаю, мы можем реализовывать пользовательские фильтры, парадигматические модули и средства разбиения по словам и подключаться к полнотекстовому поиску SQL Server. По умолчанию я могу не знать полный список, но он работает с документами и PDF.

Для получения дополнительной информации о полнотекстовом поиске SQL Server 2008, пожалуйста, проверьте:

http://technet.microsoft.com/en-us/library/cc721269.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...