需要全文搜索的数据库。 SQL vs NoSQL?

时间:2022-05-08 01:35:38

I know there are several postings about this topic on *, but the requirements of them were a bit different.

我知道在*上有几个关于这个主题的帖子,但是它们的要求有点不同。

I'm looking for a database which is eligible for full text search, the main criteria is a short duration of the query and it should run on a Windows 2008 Server with appropriate drivers for .NET. I am open-minded for all kind of software as long as its free - the only exception in terms of costs is MSSQL Server 2008 because I already have some licences for it.

我正在寻找一个有资格进行全文搜索的数据库,主要标准是查询的持续时间很短,它应该在具有适当.NET驱动程序的Windows 2008 Server上运行。我对所有类型的软件都持开放态度,只要它是免费的 - 成本方面唯一的例外是MSSQL Server 2008,因为我已经有了一些许可证。

I assume there is no free SQL-based database that performs a better full text search than MS SQL Server, so the question is if there is any NOSQL-product that is free and can beat MS SQL Server in terms of full text search.

我假设没有免费的基于SQL的数据库执行比MS SQL Server更好的全文搜索,所以问题是是否有任何NOSQL产品是免费的并且可以在全文搜索方面击败MS SQL Server。

Thanks

2 个解决方案

#1


2  

you should check and compare Lucene or Solr (which based on lucene) as your indexing engine.

你应该检查并比较Lucene或Solr(基于lucene)作为你的索引引擎。

You can use SQL Server to store your data (the data that should be indexed in FTS and all the metadata and the relationship between tables etc) and just do the indexing with Lucene (if the results of your check will show that it's significantly better than FTS)

您可以使用SQL Server来存储您的数据(应该在FTS中索引的数据以及所有元数据和表之间的关系等),并使用Lucene进行索引(如果您的检查结果显示它明显优于FTS)

#2


1  

MSSQL has good enough built-in Full-Text search and this I would say would be a good start.

MSSQL具有足够好的内置全文搜索功能,我认为这将是一个良好的开端。

Later as your data size will grow up and you finalize requirements for search queries you could install an external Full-Text search engine like Lucene/SOLR or Sphinx which will provide you more powerful, relevant and fast Full-Text search and therefore could offload you database from some types of queries.

稍后随着您的数据量增长并最终确定搜索查询的要求,您可以安装外部全文搜索引擎,如Lucene / SOLR或Sphinx,它将为您提供更强大,相关和快速的全文搜索,因此可以卸载您来自某些类型的查询的数据库。

Sphinx has native built-in MSSQL support along with Sphinx .NET client.

Sphinx具有本机内置的MSSQL支持以及Sphinx .NET客户端。

#1


2  

you should check and compare Lucene or Solr (which based on lucene) as your indexing engine.

你应该检查并比较Lucene或Solr(基于lucene)作为你的索引引擎。

You can use SQL Server to store your data (the data that should be indexed in FTS and all the metadata and the relationship between tables etc) and just do the indexing with Lucene (if the results of your check will show that it's significantly better than FTS)

您可以使用SQL Server来存储您的数据(应该在FTS中索引的数据以及所有元数据和表之间的关系等),并使用Lucene进行索引(如果您的检查结果显示它明显优于FTS)

#2


1  

MSSQL has good enough built-in Full-Text search and this I would say would be a good start.

MSSQL具有足够好的内置全文搜索功能,我认为这将是一个良好的开端。

Later as your data size will grow up and you finalize requirements for search queries you could install an external Full-Text search engine like Lucene/SOLR or Sphinx which will provide you more powerful, relevant and fast Full-Text search and therefore could offload you database from some types of queries.

稍后随着您的数据量增长并最终确定搜索查询的要求,您可以安装外部全文搜索引擎,如Lucene / SOLR或Sphinx,它将为您提供更强大,相关和快速的全文搜索,因此可以卸载您来自某些类型的查询的数据库。

Sphinx has native built-in MSSQL support along with Sphinx .NET client.

Sphinx具有本机内置的MSSQL支持以及Sphinx .NET客户端。