Python 用金字塔框架进行搜索
我正在尝试在我的网站上实现一个搜索功能,这是在金字塔上运行的,我想知道解决这个问题的最有效的方法是什么。我目前正在调查和研究。我需要一个快速而简单的实现,不知道哪一个是最好的选择。我是ElasticSearch的超级粉丝。它是最容易设置、维护和使用的 我通常使用请求 索引:Python 用金字塔框架进行搜索,python,full-text-search,sqlalchemy,pyramid,Python,Full Text Search,Sqlalchemy,Pyramid,我正在尝试在我的网站上实现一个搜索功能,这是在金字塔上运行的,我想知道解决这个问题的最有效的方法是什么。我目前正在调查和研究。我需要一个快速而简单的实现,不知道哪一个是最好的选择。我是ElasticSearch的超级粉丝。它是最容易设置、维护和使用的 我通常使用请求 索引: requests.put("http://localhost:9200/myindex/category/",data=json.dumps(document)) 要搜索: requests.get("http://loc
requests.put("http://localhost:9200/myindex/category/",data=json.dumps(document))
要搜索:
requests.get("http://localhost:9200/myindex/category/_search?q="+somequery)
您可以使用DSL进行更深入的搜索:
有一段时间,我尝试在本机数据库中使用全文,但要在sqlite、mysql和pgsql之间保持正常工作,工作量太大了。我把所有的搜索代码移植到了whoosh,从那以后我一直很开心。它在较小的工作负载下运行良好,是纯python的,并且没有需要设置的服务器 您只需实现它,就像在磁盘上写入和更新文件一样。据我所知,它在数百万个文档中表现出色。我将它用于索引大小约为100MB的18k文档。使用它可以灵活地实现各种标记化和其他配置。我真的建议人们从那里开始,如果他们长出了呼呼声,那么看看用elasticsearch、lucene/solr等启动额外的过程 您可以在这里看到我是如何实现它的: 我使用SqlAlchemy事件挂钩更新它: 您可以通过搜索来判断它的基本实现:
尽管我最终选择了ElasticSearch,但您的回答在提供深刻的知识方面是最有用的。谢谢