全文搜索:Whoosh Vs SOLR

2023-12-24

我正在开发一个 Django 项目,我需要在其中实现全文搜索。我看过 SOLR 并发现了一些很好的评论。但由于它是用Java实现的,需要在系统上安装java环境和Python。在寻找 SOLR 的 python 等效项时,我见过 Whoosh,但我不确定 Whoosh 是否与 SOLR 一样高效和强大。或者我应该只使用 SOLR 选项,还是有比 Whoosh 和 SOLR with python 更好的选择?

请建议。

提前致谢


对于纯 Python 实现来说,Whoosh 实际上非常快。也就是说,它仍然至少慢了一个数量级。根据您需要索引和搜索的数据量以及对最大允许延迟和并发搜索的要求,它可能不是一个选项。

SOLR 有点复杂,但它是迄今为止最全面的搜索解决方案。与它混合solrpy http://code.google.com/p/solrpy/以获得令人惊叹的结果。是的,您将需要 Java 托管。

您可能还想查看xapian 的 python 绑定 http://xapian.org/docs/bindings/python/。 Xapian 非常非常快,但不像 SOLR 那样是一个完整的解决方案。不过,它们是 GPL 许可的,因此这可能/可能不适合您。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

全文搜索:Whoosh Vs SOLR 的相关文章

  • Python从int到string的快速转换

    我正在用 python 求解大量阶乘 并发现当我完成计算阶乘时 需要相同的时间才能转换为字符串以保存到文件中 我试图找到一种将 int 转换为字符串的快速方法 我将举一个计算和 int 转换时间的例子 我正在使用通用的 a str a 但感
  • 将 numpy 数组写入文本文件的速度

    我需要将一个非常 高 的两列数组写入文本文件 而且速度非常慢 我发现如果我将数组改造成更宽的数组 写入速度会快得多 例如 import time import numpy as np dataMat1 np random rand 1000
  • 为什么我的代码不能根据字典解码加密字符串?

    我有一本字典 其中包含代表字母的键和值 例如一个简单的 DICT CODE b g n a p o x d t y 我收到了一个加密代码 并将该字符串转换为一个列表 其中每个项目都是一个单词 我需要根据字典中的项目来解决它 代码示例是 wo
  • TF map_fn 或 while_loop 用于不同形状的张量列表

    我想处理不同形状的张量序列 列表 并输出另一个张量列表 考虑每个时间戳上具有不同隐藏状态大小的 RNN 就像是 输入 tf ones 1 2 2 tf ones 2 2 3 tf ones 3 2 1 输出 tf zeros 1 2 4 t
  • Tweepy StreamListener 到 CSV

    我是 python 新手 我正在尝试开发一个应用程序 使用 Tweepy 和 Streaming API 从 Twitter 检索数据并将数据转换为 CSV 文件 问题是此代码不会创建输出 CSV 文件 也许是因为我应该将代码设置为在实现例
  • 更新 Sqlalchemy 中的多个列

    我有一个在 Flask 上运行的应用程序 并使用 sqlalchemy 与数据库交互 我想用用户指定的值更新表的列 我正在使用的查询是 def update table value1 value2 value3 query update T
  • 当我在 Pandas 中使用 df.corr 时,我的一些列丢失了

    这是我的代码 import numpy as np import pandas as pd import seaborn as sns import matplotlib pyplot as plt data pd read csv dea
  • 在 macOS 中通过 Python 访问进程的压缩 RAM(顶部的 CMPRS)的方法?

    我试图弄清楚如何从 Python 访问任何给定进程占用的实际 RAM 量 我发现 psutil Process PID memory info rss 工作得很好 直到操作系统决定开始压缩某些进程的 RAM 然后 所有的 memory in
  • numpy 使用 datetime64 进行数字化

    我似乎无法让 numpy digitize 与 datetime64 一起使用 date bins np array np datetime64 datetime datetime 2014 n 1 s for n in range 1 1
  • 如何在 Python 3 中循环遍历集合,同时从集合中删除项目

    这是我的情况 我有一个list set 哪个并不重要 movieplayer我想调用的对象 preload 功能开启 该预加载函数可以立即返回 但希望将来返回一点 我想存储这个电影播放器 集合 表明它们尚未预加载 然后循环它们 调用prel
  • 可以用 Django 制作移动应用程序吗?

    我想知道我是否可以在我的网站上使用 Django 代码 并以某种方式在移动应用程序 Flutter 等框架中使用它 那么是否可以使用我现在拥有的 Django 后端并在移动应用程序中使用它 所以就像models views etc 是的 有
  • 为什么我无法在 Mac OS X Terminal.app 上的 Python 解释器中显示 unicode 字符?

    如果我尝试粘贴 unicode 字符 例如中间的点 在我的 python 解释器中它什么也不做 我在 Mac OS X 上使用 Terminal app 当我只是在 bash 中时 我没有遇到任何问题 但在解释器中 python Pytho
  • `list()` 被认为是一个函数吗?

    list显然是内置类型 https docs python org 3 library stdtypes html list在Python中 我看到底下有一条评论this https stackoverflow com a 53645813
  • 如何使用 Django 项目设置 SQLite?

    我已阅读 Django 文档 仅供参考 https docs djangoproject com en 1 3 intro tutorial01 https docs djangoproject com en 1 3 intro tutor
  • 乘以行并按单元格值附加到数据框

    考虑以下数据框 df pd DataFrame X a b c d Y a b d e Z a b c d 1 2 1 3 df 我想在 列中附加数字大于 1 的行 并在该行中的数字减 1 df 最好应该 然后看起来像这样 或者它可能看起来
  • 具有屏蔽无效值的 pcolormesh

    我试图将一维数组绘制为 pcolormesh 因此颜色沿 x 轴变化 但每个 x 的 y 轴保持不变 但我的数据有一些错误值 因此我使用屏蔽数组和自定义颜色图 其中屏蔽值设置为蓝色 import numpy as np import mat
  • Python 类型安全吗?

    根据维基百科 https en wikipedia org wiki Type system Type safety and memory safety 如果一种语言不允许违反类型系统规则的操作或转换 计算机科学家就认为该语言是 类型安全的
  • 我应该在什么模型中添加ManyToManyField?

    我读了有关多对多关系的文档 https docs djangoproject com en dev ref models fields ref manytomany和examples https docs djangoproject com
  • Python 通过从现有 csv 文件中过滤选定的行来写入新的 csv 文件

    只是一个问题 我试图将 csv 文件中的选定行写入新的 csv 文件 但出现错误 我试图读取的 test csv 文件是这样的 两列 2013 9 1 2013 10 2 2013 11 3 2013 12 4 2014 1 5 2014
  • Python:高精度time.sleep

    你能告诉我如何在 Win32 和 Linux 上的 Python 2 6 中获得高精度睡眠函数吗 您可以在中使用浮点数sleep http docs python org library time html time sleep 该参数可以

随机推荐

  • Android应用程序许可证仅持续一段时间

    我们开发了一款 Android 应用程序 我们希望用户可以购买该应用程序 但只能购买一段时间 例如一年 一旦期限到期 他们应该在新的期限内再次购买该应用程序 我们查看了Google有关 应用程序许可 的信息 但已经有一段时间没有看到许可了
  • 基于 DataContext 属性的触发器

    假设我想根据 DataContext 中的属性值显示 隐藏元素 如何实现 In MainWindow xaml cs DataContext of MainWindow xaml public int Mode get set 在 XAML
  • 获取 vim 编辑器上分割窗口的位置

    我一直在尝试找出如何获取 vim 编辑器窗口内分割窗口的位置 坐标 但到目前为止还没有运气 比如说我有这个布局 0 0 2 0 Split A Split C 0 2 Split B Split D Split D would be 2 2
  • 尝试从 Eclipse 到 Android Studio 执行 Android 应用程序时出现异常

    我尝试将 Eclipse Android 项目迁移到 Android Studio 我尝试了两种方法 直接从 Android Studio 打开并先迁移到 Eclipse 中的 Gradle 然后在 Android Studio 中打开它
  • EPPlus 的通用 Excel 生成器函数

    如何为 LINQ 查询构建通用 EPPlus 电子表格函数 更新 该需求专门针对 ASP NET MVC 应用程序 我所做的只是创建一个接受列表的通用函数 我使用反射来获取属性列表 这将成为我们的列标题 最后 我只是让 EPPlus 完成所
  • 是否可以在 Google Apps 脚本中执行 ImportRange?

    我今天一直在玩 Google Apps 脚本 并尝试编写一些自定义电子表格函数 我已经进行了一些搜索 但找不到我的查询的答案 我知道在 Google 电子表格上 您可以在电子表格的单元格中使用 ImportRange 如下所示 Import
  • 使用 foreach 迭代 IQueryable 会导致内存不足异常

    我正在使用 foreach IQueryable 和 LINQ to SQL 迭代一个小型 10GB 表 看起来像这样 using var conn new DbEntities CommandTimeout 600 100 var dta
  • Kubernetes NGINX 入口重写目标注释破坏

    我正在 Windows 的 docker 桌面下运行 kubernetes v1 16 我已经使用 helm 安装了 nginx ingress 控制器 v1 7 9 我已更新我的主机文件以包含以下条目 127 0 0 1 applicat
  • 使用 @font-face 在 IE 中显示无样式内容的 Flash

    我正在开发一个网站 该网站使用 Open Sans 字体作为正文 并使用 Font Squirrel 生成的 EOT SVG WOFF 和 TTF 字体文件和样式表 我首先将字体 CSS 包含在页面标题中 但是 当我在 IE7 IE8 甚至
  • 我可以清除托管对象上下文吗?

    问题 我正在进行一次非常大的导入 其中解析了一个 XML 文件 对于每 10 个解析的托管对象 我想保存托管对象上下文并删除内存中的这 10 个对象 这样内存中的对象永远不会超过 10 个 保存后 如何清除上下文以便所有对象都从内存中消失
  • 获取 MD5 和 SHA-1

    我正在寻求一些帮助来在我的 iPhone 应用程序中获取 MD5 和 SHA 1 有人可以告诉我如何获得这些吗 include
  • 汇编:32 位寄存器的 64 位乘法

    我有一个关于 x86 汇编中 64 位乘法的实现的问题 我已经发布了我能够理解的代码 我不知道其余的人在做什么 而且我可能在我已经做过的事情中犯了错误 任何方向将不胜感激 dest at ebp 8 x at ebp 12 y at ebp
  • HTML 5 响应式 Canvas 中的鼠标位置

    我搜索过其他问题 但没有一个适合我的情况 我有一个画布元素
  • 使用 Swift 在 iOS WKWebview 中捕获 Javascript 事件

    我正在使用网络编程语言构建一个应用程序 并希望在用户单击 HTML 按钮时启动相机 由于我希望我的相机视图是自定义的 因此我需要使用 Swift 进行设计 因此 当用户单击此 HTML 按钮时 我想在 Swift 中 捕获 此单击 以便可以
  • 如何从 GAC 中提取程序集?

    我必须处理一个包 它将程序集直接安装到 GAC 中 例如 位于 windows assembly 深处的某个位置 如何将实际程序集 DLL 从 GAC 转移到普通文件系统中 Thanks 我使用了来自的建议本文 http blogs msd
  • 使用 iOS 6 UITableView dequeueReusableCellWithIdentifier:forIndexPath 时设置 UITableViewCell 的样式:

    我正在尝试弄清楚如何设置UITableViewCellStyle当使用 iOS 6 中的新方法时UITableView 以前 当创建UITableViewCell我会改变UITableViewCellStyle调用时使用枚举创建不同类型的默
  • 如何将我的 koa 路线分割成单独的文件?

    我正在尝试找出如何将我的路线分成单独的文件 到目前为止我已经有了这个 但它不起作用 我刚刚得到Not found当我尝试访问时http localhost 3001 api things server js var koa require
  • 循环赛分组名单组合

    编辑 我的问题并不像有人标记的那样重复 另一个问题是不正确的 甚至不起作用 我尝试了几种方法对 itertools combinations 的结果进行分组 但无法得出正确的输出 在游戏中创建比赛需要它 每支球队每天都需要比赛 但仅限一次
  • 计算机视觉:提取有关给定轮廓的形状的信息(例如尖的、圆形的......)

    给定线条和顶点形式的形状的 2D 轮廓 如何从中提取信息 比如 尖的 圆的 直线 形状与给定形状的相似度 代码不是必需的 我更感兴趣 涉及的概念和技术名称 指导我的搜索 提前致谢 影像瞬间 一种方法是计算二维轮廓所描述的形状的一阶和二阶中心
  • 全文搜索:Whoosh Vs SOLR

    我正在开发一个 Django 项目 我需要在其中实现全文搜索 我看过 SOLR 并发现了一些很好的评论 但由于它是用Java实现的 需要在系统上安装java环境和Python 在寻找 SOLR 的 python 等效项时 我见过 Whoos