基于PostgreSQL的流式文档处理方法、装置以及装置的应用方法制造方法及图纸

技术编号:28941722 阅读:13 留言:0更新日期:2021-06-18 21:47
本发明专利技术公开了一种基于PostgreSQL的流式文档处理方法、装置以及装置的应用方法。基于PostgreSQL的流式文档处理方法,包括:在PostgreSQL中构建复合数据,复合数据包括第一属性和第二属性;获取流式文档的文档内容并存入第一属性;获取流式文档的物理存储地址并存入第二属性;在PostgreSQL中对第一属性进行索引。采用本发明专利技术,可以扩展关系型数据库的文档数据处理能力,使得用户的流式文档数据可以方便地保存于关系型数据库并能高效检索,从而可以减少用户信息管理系统的复杂度,减少开发工作量。

【技术实现步骤摘要】
基于PostgreSQL的流式文档处理方法、装置以及装置的应用方法
本专利技术涉及文档存储、检索
,尤其涉及一种基于PostgreSQL的流式文档处理方法、装置以及装置的应用方法。
技术介绍
流式文件,能够支持编辑,其内容是流动的,中间键入新内容将导致后面的内容“流”到下一行或下一页去。流式文件在不同的软硬件环境中,显示效果会发生变化。微软的Word文档是典型的流式文件。比如同一个Word文档,在不同版本的Office软件中或者不同分辨率的电脑上,显示效果都是有所不同的。流式文档是一种非结构化的数据,因为其格式不固定。PostgreSQL是一种功能强大的关系型数据库,支持多种数据类型。但是对于流式文档,PostgreSQL只能将其作为一个二进制文件类型进行存储和管理,无法对数据进行高效检索和管理。关系型数据库是一种结构化的存储装置,它只适合处理格式固定的结构化数据。
技术实现思路
本专利技术实施例提供一种基于PostgreSQL的流式文档处理方法、装置以及装置的应用方法,用以解决现有技术中数据库无法对流式文档数据进行高效检索和管理的问题。根据本专利技术实施例的基于PostgreSQL的流式文档处理方法,包括:在PostgreSQL中构建复合数据,所述复合数据包括第一属性和第二属性;获取流式文档的文档内容并存入所述第一属性;获取所述流式文档的物理存储地址并存入所述第二属性;在PostgreSQL中对所述第一属性进行索引。根据本专利技术的一些实施例,所述获取流式文档的文档内容并存入所述第一属性,包括:识别流式文档,并对所述流式文档进行解析,以提取所述流式文档的文档内容;将所述文档内容以文本类型存入所述第一属性;所述获取所述流式文档的物理存储地址并存入所述第二属性,包括:将所述流式文档以二进制的形式存入一个内部表;将所述流式文档在所述内部表的位置以OID类型存入所述第二属性。根据本专利技术的一些实施例,所述在PostgreSQL中对所述第一属性进行索引,包括:在PostgreSQL中,采用n-gram算法,对所述第一属性进行索引。根据本专利技术的一些实施例,所述方法,还包括:获取更改后的流式文档的文档内容,以更新所述第一属性;利用put_document(OID,bytea)函数,更改所述流式文档的第二属性;所述put_document(OID,bytea)函数的参数包括:所述流式文档的物理存储地址和更改后的流式文档的二进制形式内容。根据本专利技术实施例的基于PostgreSQL的流式文档处理装置,包括:定义模块,用于构建复合数据,所述复合数据包括第一属性和第二属性;构建模块,用于获取流式文档的文档内容并存入所述第一属性;获取所述流式文档的物理存储地址并存入所述第二属性;索引模块,用于对所述第一属性进行索引。根据本专利技术的一些实施例,所述构建模块,用于:识别流式文档,并对所述流式文档进行解析,以提取所述流式文档的文档内容;将所述文档内容以文本类型存入所述第一属性;将所述流式文档以二进制的形式存入一个内部表;将所述流式文档在所述内部表的位置以OID类型存入所述第二属性。根据本专利技术的一些实施例,所述索引模块,用于:采用n-gram算法,对所述第一属性进行索引。根据本专利技术的一些实施例,所述装置还包括:更新装置,用于获取更改后的流式文档的文档内容,以更新所述第一属性;利用put_document(OID,bytea)函数,更改所述流式文档的第二属性;所述put_document(OID,bytea)函数的参数包括:所述流式文档的物理存储地址和更改后的流式文档的二进制形式内容。根据本专利技术实施例的基于PostgreSQL的流式文档处理装置的应用方法,所述基于PostgreSQL的流式文档处理装置为根据如上所述的基于PostgreSQL的流式文档处理装置,所述应用方法,包括:通过SQL查询语句对复合数据进行检索,符合查询条件的流式文档将返回其文档内容及物理存储地址。根据本专利技术的一些实施例,所述方法,还包括:根据所述物理存储地址,通过get_document(OID)函数,获取该流式文档的原始文件。采用本专利技术实施例,可以对流式文档进行高效检索和管理。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。在附图中:图1是本专利技术实施例中流式文档处理方法流程图;图2是本专利技术实施例中流式文档处理装置的应用方法流程图;图3是本专利技术实施例中流式文档处理方法流程图;图4是本专利技术实施例中流式文档处理方法流程图;图5是本专利技术实施例中流式文档处理装置的应用方法流程图;图6是本专利技术实施例中get_document(OID)处理流程图;图7是本专利技术实施例中流式文档更改流程图。具体实施方式下面将参照附图更详细地描述本专利技术的示例性实施例。虽然附图中显示了本专利技术的示例性实施例,然而应当理解,可以以各种形式实现本专利技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本专利技术,并且能够将本专利技术的范围完整的传达给本领域的技术人员。本专利技术第一方面实施例提出一种基于PostgreSQL的流式文档处理方法,如图1所示,包括:S11,在PostgreSQL中构建复合数据,所述复合数据包括第一属性和第二属性;S12,获取流式文档的文档内容并存入所述第一属性;S13,获取所述流式文档的物理存储地址并存入所述第二属性;S14,在PostgreSQL中对所述第一属性进行索引。采用本专利技术实施例,可以对流式文档进行高效检索和管理。在上述实施例的基础上,进一步提出各变型实施例,在此需要说明的是,为了使描述简要,在各变型实施例中仅描述与上述实施例的不同之处。根据本专利技术的一些实施例,所述获取流式文档的文档内容并存入所述第一属性,包括:识别流式文档,并对所述流式文档进行解析,以提取所述流式文档的文档内容;将所述文档内容以文本类型存入所述第一属性;所述获取所述流式文档的物理存储地址并存入所述第二属性,包括:将所述流式文档以二进制的形式存入一个内部表;将所述流式文档在所述内部表的位置以OID类型存入所述第二属性。根据本专利技术的一些实施例,所述对所述第一属性进行索引,包括:采用n-gram算法,对所本文档来自技高网...

【技术保护点】
1.一种基于PostgreSQL的流式文档处理方法,其特征在于,包括:/n在PostgreSQL中构建复合数据,所述复合数据包括第一属性和第二属性;/n获取流式文档的文档内容并存入所述第一属性;/n获取所述流式文档的物理存储地址并存入所述第二属性;/n在PostgreSQL中对所述第一属性进行索引。/n

【技术特征摘要】
1.一种基于PostgreSQL的流式文档处理方法,其特征在于,包括:
在PostgreSQL中构建复合数据,所述复合数据包括第一属性和第二属性;
获取流式文档的文档内容并存入所述第一属性;
获取所述流式文档的物理存储地址并存入所述第二属性;
在PostgreSQL中对所述第一属性进行索引。


2.如权利要求1所述的方法,其特征在于,所述获取流式文档的文档内容并存入所述第一属性,包括:
识别流式文档,并对所述流式文档进行解析,以提取所述流式文档的文档内容;
将所述文档内容以文本类型存入所述第一属性;
所述获取所述流式文档的物理存储地址并存入所述第二属性,包括:
将所述流式文档以二进制的形式存入一个内部表;
将所述流式文档在所述内部表的位置以OID类型存入所述第二属性。


3.如权利要求1所述的方法,其特征在于,所述在PostgreSQL中对所述第一属性进行索引,包括:
在PostgreSQL中,采用n-gram算法,对所述第一属性进行索引。


4.如权利要求1-3中任一项所述的方法,其特征在于,所述方法,还包括:
获取更改后的流式文档的文档内容,以更新所述第一属性;
利用put_document(OID,bytea)函数,更改所述流式文档的第二属性;
所述put_document(OID,bytea)函数的参数包括:所述流式文档的物理存储地址和更改后的流式文档的二进制形式内容。


5.一种基于PostgreSQL的流式文档处理装置,其特征在于,包括:
定义模块,用于构建复合数据,所述复合数据包括第一属性和第二属性;
构建模块,用于获取...

【专利技术属性】
技术研发人员:李鹏苗健卢健张鲁敏陈泽
申请(专利权)人:瀚高基础软件股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1