问题标签 [full-text-indexing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
search - 如何为多种语言环境和内容类型构建 Solr 核心?
我正在寻找运行 Solr 服务器来统一搜索公共网站的几个不同方面。首先,有几种语言环境(美国、爱尔兰、日本等)和几种类型的内容(论坛、常规网页、帮助页面、产品等)
我希望能够对单个语言环境执行搜索,但返回多种内容类型的结果,以便我可以将它们显示为选项卡式结果集。
可能的选项:
- 每个区域设置一个核心,并使用同一索引中的字段区分内容类型。
- 每种内容类型都有一个核心。
- 每种内容类型/语言环境组合都有一个核心。
- 一切的单核/单索引。
注意事项:
Solr wiki 提到多核开始在大约 1000 万个文档时提供性能提升,我认为我们可能远远低于此,即使考虑到所有语言环境和内容类型。但是,将所有数据粉碎到单个索引中的解决方案似乎有点混乱,并且可能难以分片/扩展。单核非常适合获得单个结果集,因为我不必跨核进行多重搜索。
任何使用过多核的人可以告诉我吗?
sql-server - SQL全文索引器,完全匹配和转义
我正在尝试用基于 SQL Server 2008 R2 的索引替换基于关键字分析器的 Lucene.NET 索引。
我有一个表,其中包含我需要查询的自定义索引字段。索引列的值(见下文)是来自一系列 .NET 类型的自定义索引字段的名称/值对的组合——实际值是在运行时从属性中提取的,因为结构是未知的。
我需要能够使用 AND 和 OR 搜索集合名称和值对并返回查询匹配的行。
一个简单的查询如下所示:
该查询将导致以下错误:
因此,考虑到这一点,我更改了Index
列中的数据以使用|
而不是[
and ]
:
现在,虽然该查询现在有效,但当我运行它时,将返回所有包含Descriptor.Url
和开头的行/
,而不是完全匹配的记录(在这种情况下正好是一个)。
我的问题是,我怎样才能逃避查询以解释[
and]
并确保只返回完全匹配的行?
一个更复杂的查询看起来有点像这样:
谢谢,
基龙
sql - SQL Server 2008 上的全文索引
我们可以通过在 SQL 管理工作室中右键单击表名并单击全文索引来对表进行索引。
此选项存在,但在我的管理工作室中被“禁用”(显示为浅灰色)。
MSDN 博客也指出了有关 MSSQLFDLauncher 的内容。这在我的情况下也没有。
http://msdn.microsoft.com/en-us/library/ms345189(v=SQL.100).aspx
任何帮助将不胜感激
pdf - 如何在 SQL Server 2000 中安装 pdf iFilter?
我有一个包含文档的二进制对象的数据库。一个单独的列包含扩展名(doc、docx、xls、html、txt、...)。我已经建立了全文索引,这已经工作了多年:我可以查询索引文档的内容。
现在我还想索引存储在数据库中的 pdf 文件。这可以通过安装 iFilter 来完成。根据 Adobe 的网站,当您安装最新版本的 Acrobat Reader 时,就会安装 pdf iFilter,我就是这样做的。
我想我需要做更多,因为(即使在机器完全重新启动后)pdf iFilter 没有与 filtreg.exe 一起列出。我确实找到了一些关于在 SQL Server 2005 中启用 iFilter 需要做什么的文档,但是这些命令在 SQL Server 2000 中不起作用。
有没有人设法在 SQL Server 2000 中为 pfd 设置全文索引?
mysql - 索引文本 - MySQL 与 MS SQL
图片你有这样的应用程序:1 个 DB 表,几个 int 字段,几个小的 varchar 字段,和大约 10 个 TEXT 字段(内容变量 - 一些数据大约 50 个字符长,大多数大约 100-200,一些大约 1000,很少超过1000)。行数在 x0 000 - x00 000 中。现在,我需要像这样查询的有效方法(元语言):
SELECT (1 if textfield1 LIKE %param1% ELSE 0) as r1,(1 if textfield2 LIKE %param2% ELSE 0) as r2, ... 等,对于 1 个查询中的大多数文本字段通常(它是动态的 - 可能包括其中 2 个,可能是全部)。
现在的问题 - MySQL 或 MSSQL 对我来说哪个更好(可能会表达,如果真的需要升级到完整版本)?
我知道 MySQL 有很好的文本索引,你已经设置了自定义的第一个字符数,所以我可以在典型场景中平衡它(像这样: http: //fernandoipar.com/2009/08/12/indexing-text -columns-in-mysql/ )
MSSQL 只有全文索引,我没有经验。请注意,我不需要诸如单词接近或类似单词之类的功能(运行 = 运行;一些词干会很好,但因为数据是多语言的,所以无论如何都是不可能的)。我只需要普通的 LIKE %word% 系统,仅此而已。而且我还必须能够找到短子字符串(2个字符)。
实际上,目标是每小时/每天运行尽可能多的这些查询(不会有足够的结果,永远不会,因为它们应该尽可能频繁地刷新),所以将这种效率视为要求:)
谢谢!
更新:显然没有办法使用索引来优化 LIKE %foo% 查询。所以新的问题是:有没有其他方法可以加快这种类型的查询?(请省略“购买更多内存或 SSD”之类的内容:)
c++ - Indri Lemur:make 文件的问题
我想编译我的 indri lemur 应用程序,所以我用 myapp.cpp 创建了一个文件夹,并将 Makefile.app.in 从 indri 根目录复制到 myApp/Makefile.app,如下所述:编写你自己的应用程序
但是,当我运行 make 时,出现以下错误。这是特定于工具包的错误还是与编译器有关?
谢谢
lucene - Lucene:通过添加 IR 信息输出详细数据
我需要处理一个数据库,以便将 td-idf 权重等元信息添加到文档术语中。
接下来,我需要创建具有相似性度量的文档对,例如 td-idf 余弦相似性等...
我打算使用 Apache Lucene 来完成这项任务。我实际上对检索或运行查询不感兴趣,而是对数据进行索引并详细说明它们以生成具有上述文档对和相似性分数的输出文件。下一步是将这些结果传递给 Weka 分类器。
我可以用 Lucene 轻松做到吗?谢谢
mongodb - 用于大量小文档的全文搜索的最佳数据存储?(例如类似 Splunk 的系统)
我们正在指定一个系统,它将索引和存储数以万计的 Syslog 消息。这些是文本消息,具有一些属性(系统名称、日期/时间、消息类型、消息正文),每个属性通常为 100 到 1500 个字节。
我们每天生成 2 到 10 GB 的此类消息,并且需要至少保留 30 天。
splunk 系统有一个非常棒的索引和文档压缩系统。
用什么?
我想到了mongodb,但是对于这么小的文档似乎不合适。
SQL Server 是一种可能性,但对于此目的似乎不是超级有效。
带有lucene的文本文件?-- windows 文件系统并不总是喜欢有无数文件的目录
建议?
谢谢!
mysql - 从mysql中的文本字段中提取特定单词
我有一个包含文本字段的表格,该字段中大约有 3 到 4 个句子,具体取决于行。
现在,我正在制作一个自动完成的 html 对象,我想开始输入一个单词的开头,并且数据库返回以数据库文本字段中的这些字母开头的单词。
文本字段示例:我喜欢鱼棒,鱼帽也很棒
在我的自动完成中,如果我输入“fish”,它会建议“fishsticks”和“fishhat”
一切正常,但查询。
我可以轻松找到包含特定单词的行,但我不能只提取单词,而不是全文。
我知道它很脏,但我无法重新排列数据库。
谢谢您的帮助!
编辑:
这是我得到的,感谢布伦特沃登,它不干净但它有效:
关于如何避免LOCATE
一遍又一遍地使用相同的表达式的任何想法?
full-text-search - 狮身人面像上的词形
如果我使用 wordforms 文件,变成这样的词:
电视 > 电视
如果我搜索电视,我会得到带有电视的结果,但我也想要有电视结果,这可能吗?