在大型的SQL数据库上很难执行高速的查询有Solr是Apache 下的一个开源项目,使用Java基于Lucene开发的全文检索服务;

  它是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。

 

 

 

  两点原因:

      第一点原因来自SQL数据库在性能上缺乏亮点。基本上,你需要在你的查询中使用JOIN操作。

      第二点原因是文档的天然数据特性:松散的文本文件,这种查询都是需要使用LIKE。然而joins和likes都是性能杀手,在目前的数据库引擎中是不方便的。

    所以,很多时候希望找到一种跟SQL完全不同的数据检索方式:倒排索引。

 

 

    这种数据结构类似与美化过的词典:

      key是单个的term

      values是跟term对应的文档列表

    这种数据方式可以帮助在大型的数据库上面进行高速查询。

相关文章:

  • 2021-09-26
  • 2021-12-11
  • 2021-06-29
  • 2021-10-05
  • 2021-05-19
  • 2021-06-06
  • 2021-11-25
猜你喜欢
  • 2021-12-31
  • 2021-12-11
  • 2021-04-28
  • 2021-05-03
  • 2021-09-02
  • 2021-06-09
相关资源
相似解决方案