SQL FTS IFilters, это безопасная импликация и диагностика проблем PDF Фильтра

Заблокировано SQL FTS IFilters, это безопасная импликация и диагностика проблем PDF Фильтра

Заблокировано

  • 4 мая 2010 г. 10:44
    Модератор
     
     

    Устранение проблем PDF фильтра

    Хотя я в этой теме и говорится о IFilters , многие из вас могут использовать PDF фильтры для индексации PDF документов в своей базе данных. Adobe недавно представила 64-разрядный PDF фильтр (подробнее об этом здесь- http:// www. adobe. com/ support/ downloads/ detail. jsp? ftpID=4025 ) , и я видел много людей, имеющих проблемы с его использованием. Если вы обратите внимание на FTLogs во время индексации то можете встретить такую ошибку:

    2009-09-29 06:31:59.47 spid24s Ошибка '0 x80004005, возникла во время полнотекстовой индексации содержания для таблицы или индексированного просмотра "[IFilter]. [DBO]. [Fts_table] '(таблица или индификатор индексированого просмотра '2137058649, идентификатор базы данных '5 '), значение полнотекстового ключа 0x2E00700064006600. Будет сделана повторная попытка  индексации.

    2009-09-29 06:31:59.48 spid24s компонент "PDFFilter.dll 'сообщил об ошибке при индексировании. Путь компонента "С: \ Program Files\Adobe\Adobe PDF iFilter 9 for 64-bit platforms\bin\PDFFilter.dll'

    Эти ошибки указывают на проблемы с загрузкой и использованием PDF фильтров Adobe . Поэтому убедитесь, что вашей системной переменной окружения PATH добавлено следующее расположение: C :\ Program Files \ Adobe \ Adobe PDF iFilter 9 for 64- bit platforms \ bin Обратите внимание: возможно потребуется перезагрузка

    Если это не сработает, то ваш SQL полнотекстовая индексация не выполнилась, так как не может быть найден фильтр для PDF 64-бит.

    Кроме того, есть IFilter предоставляемый Foxit , который родственнен 64-битному фильтру. Возможно, вы захотите протестировать индексации с ним. Подробнее об этом здесь - http :// www . foxitsoftware . com / pdf / ifilter /

    Если Вы хотите узнать как идентифицировать полнотекстовый документ/строку, которая обрушила индексацию, Вы можете придерживаться следующего плана по их отделению:

    1)      Найти колонку с полнотекстовым ключом

    USE DBNAME

    GO

    select name from syscolumns where colid = objectproperty ( object_id ( 'TBL_NAME' ), 'TableFulltextKeyColumn' ) and id = object_id ( ' TBL_NAME ' )

    Полнотекстовый ключ – это колонка, которую Вы можете использовать, когда Вы определяете полнотекстовую индексацию && это может не обязательно быть первичный ключ вашей полнотекстовой таблицы.

    2)      Приведите это значение к значению полнотекстового ключа

    select convert ( varbinary ( 900 ), keyColumn ) as keyColumn , uniqueColumn from TBL_NAME

    3)     Как только вы получите его, Вы можете отфильтровать его для нахождения строчки, которая обвалилась просмотром FTLOG и записью значения провалившегося полнотекстового ключа

    Например,

    select convert ( varbinary ( 900 ), keyColumn ) as keyColumn , uniqueColumn from TBL_NAME

    where keyColumn = 0 x 2 E 00700064006600

    Не говоря о PDF , место для проверки различно и обычно IFilters ,доступные SQL серверу, просматривается для следующех расположениех регистра:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ContentIndex ,under "DLLsToRegister"

    Имейте ввиду некоторые важные положения:

    1)      Образы, встроенные в PDF документы, не индексируются и SQL не может осуществлять поиск в них

    2)      IFilter Adobe 6.0 не совместим с Windows Server 2003 64-битной версии

    3)      Запуская с Acrobat и Reader 7.0.5, функциональность IFilter а сейчас не отправляется в продукты Acrobat и Reader

    4)      Также PDF фильтр 64-х бит работает и с SQL 2005 и с SQl 2008. Проверено!

    5)      Microsoft пакет фильтров содержит в себе IFilter для самых последних версий документов 2007 офиса таких, как docx , pptx , xlsx и др. Вы можете узнать об этом здесь - http :// www . microsoft . com / downloads / details . aspx ? FamilyId =60 C 92 A 37-719 C -4077- B 5 C 6- CAC 34 F 4227 CC & displaylang = en

    6)      Для индексирования файлов MSG , Вам нужно загрузить IFilter из Windows Desktop Search дополнения. Оно доступно здесь http :// www . microsoft . com / downloads / details . aspx ? FamilyId =134 ECBB 0- C 162-4 D 07- BEF 3-0 B 602 C 4 A 79 DD & displaylang = en или установить 2007 офис , который имеет при себе MSGFILT.dll


    Для связи [Mail]
    • Перемещено Siddharth Chavan 2 октября 2010 г. 0:38 MSDN Forums Consolidation (От:SQL Server для разработчиков)
    •