gpt4 book ai didi

Postgresql:可能在 lob 内进行全文搜索吗?

转载 作者:行者123 更新时间:2023-11-29 11:17:57 24 4
gpt4 key购买 nike

我们想使用 PostgreSQL 来存储文档。由于其中一些可能高达 2 GB,我们必须使用 lob 数据类型,其中大对象存储在单独的表中 (pg_largeobject),由 OID 引用,根据docs on large objects .

对我们来说,可以搜索这些文档(.pdf.doc ...)非常重要。随着built-in PostgreSQL full text search可以搜索表和列,但是是否也可以搜索pg_largeobject 表中的大对象?

如果没有,我们必须使用 Oracle。

最佳答案

这里至少有两个问题。

  1. 全文搜索对存储为 lob 或 oid-references 的大对象实际上不起作用。您不能对 pg_largeobject 的内容进行全文索引。

  2. 全文搜索是<​​em>文本 的索引系统。它不能索引 PDF、Microsoft Word 文档或其他随机二进制文件。它没有提供文本提取工具回调等。

您可以:

  • 创建一个表,其中包含使用外部工具从这些文件中提取的文本以及引用文件本身的 oid,然后对提取文本的表进行全文索引;或者

  • 使用更强大、功能更齐全的外部搜索系统,例如 Solr (基于 Lucene )旨在应对不同的格式,进行自己的文本提取等。

关于Postgresql:可能在 lob 内进行全文搜索吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13118737/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com