创建巨大倒排索引的方法

2023-12-24

I want to create a big inverted index of around 106 terms. What method would you suggest? I'm thinking in fast binary key store DBs like Tokyo cabinet, voldemort, etc. Edit: I've tried MySQL in the past for storing a table of two integers to represent the inverted index, but even with the first column having a db index, queries were very slow. I think for those situations a SQL database has too much overhead, overhead of transactions, query parsing, etc. I'm searching for what technologies or algorithmic approaches would scale while having good response times and performance. I'm rolling my own solution for research purposes.


这个问题有点模糊,所以我认为我能给出的唯一答案是:使用“广义倒排索引”(杜松子酒指数 http://www.postgresql.org/docs/8.4/static/gin-intro.html) 在 PostgreSQL 中创建您想要的任何类型的倒排索引。所有艰苦的工作都为您完成:它使用预写日志来保证崩溃安全,内部使用 btree 结构来提高性能,并且它是成熟数据库管理系统的一部分。

如果你的问题是全文搜索,那么 postgresql 的全文检索 http://www.postgresql.org/docs/8.4/static/textsearch.html已经为您构建并且可以在内部使用 GIN。

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

创建巨大倒排索引的方法 的相关文章

  • 如何杀死Mysql“show processlist”中的所有进程?

    因为我在那里看到了很多进程 并且 时间 列显示了所有进程的大值 大规模屠杀操作节省时间 在 MySql 本身中执行此操作 运行这些命令 mysql gt select concat KILL id from information sche
  • 如何通过逗号分隔将 2 行合并为一行?

    我需要将这些单独的行合并到一列 我现在如何通过逗号分隔合并列 CID Flag Value 1 F 10 1 N 20 2 F 12 2 N 23 2 F 14 3 N 21 3 N
  • 如何在Oracle数据库11g中创建新模式/新用户?

    我已经申请了一家公司的实习机会 作为一个问题 他们要求我为他们的公司创建一个具有一定要求的架构 并将DDL文件 我已经安装了 Oracle 数据库 11g Express 版本 但如何在 Oracle 数据库 11g 中创建新架构 我在网上
  • 如何在数据库中对 (Java) 枚举进行建模(使用 SQL92)

    您好 我正在使用名为 性别 的列对实体进行建模 在应用程序代码中 性别应该是一个 Java 枚举类型 有 2 个值 男性和女性 知道作为数据类型的枚举不是通用 SQL 语言 92 的一部分 您将如何建模它 数据模型必须是可移植的 以便由多个
  • 我应该保留远程数据库的本地副本吗?

    我正在开发一个应用程序 基本上允许人们创建 加入和管理其他人的群组 群组内的人也可以互相发送消息 我一直在想哪条路会更好 保留包含所有信息的远程数据库 包括发送给用户和从用户发送的消息 并让应用程序在每次需要信息时查询服务器 甚至是它以前见
  • 通过分布式数据库聚合作业优化网络带宽

    我有一个分布式 联合数据库 结构如下 数据库分布在三个地理位置 节点 每个节点集群有多个数据库 关系数据库是 PostgreSQL MySQL Oracle 和 MS SQL Server 的混合体 非关系数据库是 MongoDB 或 Ca
  • 使用 Spring Boot 的 Flyway Core 给出错误 'delayedFlywayInitializer' 和 'entityManagerFactory' 之间的循环依赖关系

    我想在 SQL Server 数据库上导入一些数据 我使用的是 Spring Boot 2 3 4 我还使用 Hibernate 来生成表 我在pom中添加了flyway核心
  • 无法更改 MS Access 2007 上的数据类型

    我有一个巨大的数据库 800MB 其中包含一个名为 上次修改日期 的字段 目前该字段作为文本数据类型输入 但需要将其更改为日期 时间字段以执行一些查询 我有另一个完全相同的数据库 但其中只有 35MB 的数据 当我更改数据类型时 它工作正常
  • 寻找免费的 GUI 工具来使用 PostgreSQL [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 目前 我正在使用独立的 GUI 工具DbSchema http www dbschema com 设计
  • 如何列出表中的所有列?

    对于各种流行的数据库系统 如何列出表中的所有列 对于 MySQL 请使用 DESCRIBE name of table 只要您使用 SQL Plus 或 Oracle 的 SQL Developer 这也适用于 Oracle
  • python 没有名为serial的模块

    我的 python 程序有问题 我编写了程序来将数据 温度 从 arduino 获取到我的树莓派 sqlite 数据库 但它在第 4 行 导入串行 处给了我一个错误 提示 ImportError 没有名为串行的模块 我使用 python3
  • 非加密用途的最快哈希值?

    我本质上是在准备要放入数据库的短语 它们可能格式错误 所以我想存储它们的简短散列 我将简单地比较它们是否存在 所以散列是理想的 我假设 MD5 在处理 100 000 个请求时相当慢 所以我想知道散列短语的最佳方法是什么 也许推出我自己的散
  • 删除 mysql 数据库中超过 3 个月的行的作业

    我们使用 mysql 服务器作为集中式日志系统 我希望有一项工作来定期删除 清理超过 3 个月的表条目 做这个的最好方式是什么 提前致谢 hinling 您是否在字段中存储项目的创建日期 If so DELETE FROM myTable
  • 术语 SSTable 和 LSM Tree 之间有什么区别

    这两个术语可以互换使用吗 我读过有关 SSTable 工作原理的文章 通常文章都会开始提到 LSM Tree 然而 它们似乎是同一件事 我什么时候应该使用一个术语而不是另一个术语 对于凡人来说 SSTables 和 LSM Trees 的最
  • 如何将彼此“接近”的纬度/经度点分组?

    我有一个用户提交的纬度 经度点的数据库 并且正在尝试将 接近 点分组在一起 接近 是相对的 但目前看来约为 500 英尺 起初 我似乎只能按前 3 个小数位具有相同纬度 经度的行进行分组 大约是一个 300x300 的盒子 了解当您远离赤道
  • 如何重命名 MySQL 数据库(更改架构名称)?

    如何快速重命名 MySQL 数据库 更改其架构名称 通常我只是转储数据库并使用新名称重新导入它 对于非常大的数据库来说 这不是一个选项 显然RENAME DATABASE SCHEMA db name TO new db name 做了坏事
  • 自动删除主键序列中的间隙

    我正在创建一个网页 该网页根据用户操作将数据存储到 MySQL 数据库中 数据库有很多行 行的主键是列 rowID 它只是按顺序对行进行编号 例如 1 2 3 4 用户可以选择删除行 问题是当用户删除最后一行以外的行时 rowID 中有一个
  • Android:打开和关闭SQLite数据库

    我正在开发Android应用程序 我经常在其中访问本地数据库 该数据库可以从不同的主题访问 因此我遇到了数据库的协调问题 我使用以下open and close method public void open mDb mDbHelper g
  • 计算 mysql 数据库行数的最佳方法

    在遇到 mysql 查询加载时间慢的问题后 我现在正在寻找计算行数的最佳方法 我曾经愚蠢地使用过mysql num rows 函数来做到这一点 现在意识到这是最糟糕的方法 我实际上正在制作一个分页来用 PHP 制作页面 我找到了几种计算行数
  • theta 连接、等值连接和自然连接之间的区别

    当涉及到 theta 连接 等值连接和自然连接时 我无法理解关系代数 有人可以帮助我更好地理解它吗 如果我在 theta 连接上使用 符号 它与使用自然连接完全相同吗 A 西塔加入允许任意比较关系 例如 An equijoin是使用相等运算

随机推荐

  • 如何在 Angular2 中集成 Linkedin

    我的代码在 Angular2 中遇到有关 LinkedIn 身份验证的问题 import Component OnInit NgZone from angular2 core import HTTP PROVIDERS from angul
  • 如何在java中将字符串数组转换为int数组[重复]

    这个问题在这里已经有答案了 我在java程序中有一个像这样的字符串数组 String results 2 1 5 1 我想将其转换为整数数组 如下所示 int results 2 1 5 1 最后我想找到所有的总和int该数组的元素 如果您
  • 在 powershell 中从 System.Data.DataRow 提取数据

    我有一个 powershell 脚本 它执行 sql 命令并返回 ID 号列表 当我遍历列表时 这就是它返回的内容 System Data DataRow System Data DataRow System Data DataRow Sy
  • 使用Selenium在html5视频中跳跃一定时间

    我正在测试 Selenium 的 html5 视频自动化方法 我找不到一种可以为视频中的当前位置跳转一定时间的方法 driver webdriver Firefox driver get https www youtube com watc
  • 处理可选包依赖关系的正确方法

    在我正在开发的一个包中 提供了几种不同的估计方法 通常 其中每一个都依赖于其他包提供的功能 在某些情况下 有版本要求 到目前为止 我只是将所有这些包放在我的描述文件的 依赖 部分中 但是我自己的包现在 依赖 的包的数量 即使对于大多数用户来
  • 无法转换为 android.app.Fragment

    我只是想看看 Fragment 但我遇到了一些愚蠢的问题 有我的 SkippersActivity java public class SkippersActivity extends Activity public void onCrea
  • 什么是 0050 以及为什么 echo 0050 结果 40 [重复]

    这个问题在这里已经有答案了 我对 php 绝对是新手 我从某处收到一个问题 问题是以下代码的输出是什么 结果显示 40 我的问题是为什么显示 40 以及如何 我需要有关此的详细信息 0050是什么 050是 40 基数 10 的八进制 基数
  • 将 jQuery/javascript 源页面放在 body 标记末尾之前

    我在几个插件说明中看到 将 javascript jQuery 源粘贴到 body 标记末尾之前 我搜索了他们为什么这么说 但没有任何意义 如果我将 src 文件放在脚本中的任何位置 我就不会遇到任何问题 有人能给我一个好的答案吗 如果 j
  • 通过 REST API 从 TFS 获取所有成员/用户

    我尝试使用 REST API 获取 TFS 的所有成员 用户 NET 客户端库 https learn microsoft com de de vsts integrate concepts dotnet client libraries
  • 如何更改谷歌自定义搜索水印

    我有谷歌自定义搜索 默认情况下搜索框有背景图像 我可以删除该图像 但无法替换为我的图像 那么有没有办法做到这一点 将其添加到我的 CSS 中对我有用 cse input gsc input input gsc input backgroun
  • 如何在winforms的datagridview中将字符串排序为数字

    我在 datagridview 中有带有数字的字符串列 它没有绑定 我想按我使用的数字对其进行排序 colid ValueType typeof int grid Sort colid ListSortDirection Descendin
  • 将文件拖放到 .sh 文件上

    我对 Batch 有相当多的了解 我正在尝试将批处理脚本移植到 Mac UNIX 但我的批处理文件具有拖放功能 经过无数次谷歌搜索 我一无所获 他们都说您可以拖放到终端窗口中 对于不需要输入的脚本来说并不好 这是我的批处理代码 cd USE
  • 在 Java 中查找不同数据类型的 3 个数字中的最大值

    假设我有以下三个常量 final static int MY INT1 25 final static int MY INT2 10 final static double MY DOUBLE1 15 5 我想拿走他们三个并使用Math m
  • 如何实现基本的“长轮询”?

    我可以找到很多有关长轮询如何工作的信息 例如 this http jfarcand wordpress com 2007 05 15 new adventures in comet polling long polling or http
  • AlphaVantage API 股票市场指数

    我正在使用 python 及其框架 Flask 来构建前端后端项目 该项目需要库存数据 在 Yahoo 的 Api 停止工作之前我使用它 现在我使用 Alpha Vantage API 它工作得很好 但我在纳斯达克 道琼斯等股票市场指数方面
  • C:指向结构体数组的动态指针数组

    我有一个结构和这些结构的二维数组 typedef struct char exit n char exit s char exit w char exit e room room map MAP WIDTH MAP HEIGHT 我需要这些
  • 当服务器返回 401 响应时,请求的资源上不存在“Access-Control-Allow-Origin”标头

    我有一个 NET Core 3 0 和 Angular 8 Web 应用程序 我已经在 Startup cs 中启用了 CORS 并且工作正常 我使用 JWT 身份验证以及角度端的拦截器将 JWT 令牌附加到每个请求 调用路由 Author
  • 检测读取器何时关闭命名管道 (FIFO)

    有没有办法让作者知道读者已经关闭了命名管道的末端 或退出 without写信给它 我需要知道这一点 因为我写入管道的初始数据是不同的 读者期望在其余数据到来之前得到初始标头 目前 当我的write 失败了EPIPE 然后我设置一个标志 上面
  • WinForms:更改 ListView 中所选项目的前景色

    我将 ListView 中所有项目的前景色设置为不同的颜色 但是当选择该项目时 此颜色会被覆盖 再次更改为黑色 取消选择时更改回自定义颜色 我希望我的物品即使在选择时也能保留我的自定义颜色 我基本上问了同样的问题here https www
  • 创建巨大倒排索引的方法

    I want to create a big inverted index of around 106 terms What method would you suggest I m thinking in fast binary key