Python 在django中与elasticsearch交互
我想使用elasticsearch进行一个新项目,根据我的研究,似乎有3个可行的解决方案:Python 在django中与elasticsearch交互,python,django,elasticsearch,Python,Django,elasticsearch,我想使用elasticsearch进行一个新项目,根据我的研究,似乎有3个可行的解决方案: 不要使用包装器,直接与elasticsearch通信 使用elasticpy搜索 使用elasticsearch dsl py 我喜欢解决方案1,因为它不需要依赖项,我可以专注于学习本机语法/api,而不是像2或3中那样的包装器。有没有令人信服的理由用2或3代替1 更新 我最终使用了elasticsearch py,因为它提供了连接池和持久性等各种好处。我发现elasticsearch dsl py过于抽
我最终使用了elasticsearch py,因为它提供了连接池和持久性等各种好处。我发现elasticsearch dsl py过于抽象和冗长我建议,当官方Python客户端可用时,没有理由直接与elasticsearch对话。Python客户端为您完成了大量繁重的工作,否则您将花费大量时间/精力将Python数据转换为ES,反之亦然 关于
elasticsearch dsl py
和elasticsearch py
之间的选择:
elasticsearch dsl py
是一个仅用于(加上一些其他东西)的包装器。它不提供对整个Elasticsearch API(例如,等)的访问。文件中说:
要使用其他Elasticsearch API(例如群集运行状况),只需使用
底层客户端
在任何大型应用程序中,很可能需要同时使用这两个库elasticsearch dsl py
本身使用elasticsearch py
我同意你对Haystack的评论-它的Elasticsearch后端还有很多需要改进的地方。@SandervanLeeuwen我在很多博客上看到了使用Haystack和Elasticsearch的详细问题