我需要实现一项服务来搜索PDF。最初我开始使用SQL Server 2008 FTS,但很快就意识到我的PDF必须存储在DB本身中。然后我指向了索引服务以及SQL 2008 FILESTREAM数据类型,以便我可以在文件系统中存储PDF。那么这三个(索引服务,FTS和FILESTREAM选项)如何相互关联?我是否需要同时使用这三个来实现我的搜索?
此外,像DiscountASP这样的托管服务通常会启用这些服务吗?或者我应该考虑切换到Lucene.NET?
答案 0 :(得分:1)
我们曾经使用PDF iFilter,它允许您将PDF存储在数据库中,然后对其执行FTS。我们现在将PDF转换为文本并将文本存储在全文索引中。这允许我们现在存储所有文档(我们将.doc,.pdf等存储在同一索引中)。
DiscountASP允许在托管数据库上使用FTS / iFTS。
答案 1 :(得分:0)
如果您事先知道要查找的内容(例如,您每天会收到数百份PDF文件,并且需要找到具有某些“接收前已知”字符串的文件,那么您可以在接收时创建文本版本,创建PDF文件的索引条目,然后丢弃文本。
如果您事先不知道搜索条件,生活会变得慢得多:(有一个名为PDF Search的程序声称可以在PDF文件中进行全文搜索。我不需要使用它,所以我不能说它是怎么回事,但它就在这里:http://www.getpdf.com/。
希望这有帮助