一种虚拟模型映射方法和系统转让专利

申请号 : CN202311444712.8

文献号 : CN117171108B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 田越罗耀坤王喜姚宏志刘冠军朱朝强

申请人 : 北京友友天宇系统技术有限公司

摘要 :

本申请涉及一种虚拟模型映射方法和系统,涉及数据管理技术领域,该方法包括:从异构的多个文件存储系统中获取目标数据;所述文件存储系统存储的文件为半结构化数据和/或非结构化数据,所述目标数据用于指示文件存储系统和所述文件的属性信息;对所述目标数据进行解析,分别提取每个文件存储系统的元数据;根据所述元数据,建立所述目标数据与元数据模型之间的映射关系;所述元数据模型为结构化数据存储所需的数据结构;基于所述映射关系,将所述元数据分别按照每个文件存储系统对应的元数据模型的形式存储在结构化数据存储系统中。本申请具有实现多源异构的文件存储系统的统一管理和访问的效果。

权利要求 :

1.一种虚拟模型映射方法,其特征在于,包括:

从异构的多个文件存储系统中获取目标数据;所述文件存储系统存储的文件为半结构化数据和/或非结构化数据,所述目标数据用于指示所述文件存储系统和所述文件的属性信息;

对所述目标数据进行解析,分别提取每个文件存储系统的元数据;

根据所述元数据,建立所述目标数据与元数据模型之间的映射关系;所述元数据模型为结构化数据存储所需的数据结构;所述元数据模型包括多个结构化的子模型,多个结构化的子模型包括库模型、表模型、字段模型、标签字段模型、摘要字段模型、关联模型和权限模型;

基于所述映射关系,将所述元数据分别按照每个文件存储系统对应的元数据模型的形式存储在结构化数据存储系统中;建立所述目标数据与元数据模型之间的映射关系,包括:根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系;

所述方法还包括:

从目标文件存储系统中获取待处理数据;所述目标文件存储系统与所述多个文件存储系统的架构不同,所述待处理数据用于指示所述目标文件存储系统的属性信息和所述目标文件存储系统存储的文件的属性信息;

根据所述待处理数据对所述元数据模型进行扩展;

根据所述待处理数据对所述元数据模型进行扩展,包括:

在所述元数据模型的基础上,新增与所述目标文件存储系统对应的目标元数据模型;

根据所述待处理数据的元数据,建立所述待处理数据与所述目标元数据模型之间的映射关系;

根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:根据所述元数据,建立所述目标数据中的特定目录与所述库模型之间的映射关系、或者具备第一正则表达式匹配规则的同类目录与所述库模型之间的映射关系、或者具备所述第一正则表达式匹配规则的文件列表与所述库模型之间的映射关系;其中,将特定目录、或具备第一正则表达式匹配规则的同类目录或文件列表映射为库模型,库模型的字段名包括文件存储系统的类型、存储系统属性和存储系统扩展属性;

建立所述库模型对应的目录与所述表模型之间的映射关系、或所述库模型对应的文件列表之下的目录与所述表模型之间的映射关系、或者所述库模型对应的具备第二正则表达式匹配规则的同类目录与所述表模型之间的映射关系、或者所述库模型对应的具备所述第二正则表达式匹配规则的文件列表与所述表模型之间的映射关系;其中,将所述库模型对应的目录/文件列表之下的目录、或者库模型对应的具备第二正则表达式匹配规则的同类目录/文件列表映射为表模型,表模型的字段名包括文件类型、文件属性和文件扩展属性;

根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:根据所述元数据,确定所述目标数据的文件基础数据和摘要数据;其中,摘要数据用于指示目标数据中每个文件的非结构化内容的概要;

建立所述文件基础数据与所述字段模型之间的映射关系、以及所述摘要数据与所述摘要字段模型之间的映射关系。

2.根据权利要求1所述的一种虚拟模型映射方法,其特征在于,所述多个结构化的子模型包括标签字段模型,根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:根据所述元数据,确定所述目标数据中每个文件与预存标签库中标签的匹配关系;

根据所述匹配关系,建立每个文件、标签以及所述标签字段模型之间的映射关系。

3.根据权利要求1所述的一种虚拟模型映射方法,其特征在于,所述多个结构化的子模型包括关联模型,根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:根据所述元数据,确定所述目标数据中各个文件之间的关联关系;

根据所述关联关系,建立各个文件与所述关联模型之间的映射关系。

4.根据权利要求1所述的一种虚拟模型映射方法,其特征在于,所述多个结构化的子模型包括权限模型,所述方法还包括:获取每个文件存储系统的权限信息,建立所述权限信息与所述权限模型之间的映射关系。

5.一种数据存储系统,其特征在于,用于执行权利要求1到4任一所述的虚拟模型映射方法,包括:数据获取模块,用于:从异构的多个文件存储系统中获取目标数据;所述文件存储系统存储的文件为半结构化数据和/或非结构化数据,所述目标数据用于指示所述文件存储系统和所述文件的属性信息;

数据处理模块,用于:对所述目标数据的解析,分别提取每个文件存储系统的元数据;

数据映射模块,用于:根据所述元数据,建立所述目标数据与元数据模型之间的映射关系;所述元数据模型为结构化数据存储所需的数据结构;所述元数据模型包括多个结构化的子模型,多个结构化的子模型包括库模型、表模型、字段模型、标签字段模型、摘要字段模型、关联模型和权限模型;

数据存储模块,用于:基于所述映射关系,将所述元数据分别按照每个文件存储系统对应的元数据模型存储在结构化数据存储系统中。

说明书 :

一种虚拟模型映射方法和系统

技术领域

[0001] 本申请涉及数据管理技术领域,尤其是涉及一种虚拟模型映射方法和系统。

背景技术

[0002] 互联网、物联网、大数据的快速发展,伴随着大量数据的产生,包括结构化数据、非结构化数据和半结构化数据。其中,半/非结构化数据是指没有明确定义模型或格式的数据,通常以自由文本、多媒体内容(如图像、音频和视频)等形式存在,例如电子邮件、社交媒体帖子、网页内容、传感器数据、日志文件等,这些数据通常无法通过传统的关系型数据库进行组织存储和访问使用,因此产生了大量的半/非结构化数据存储系统,包括对象存储、NoSQL数据库、分布式文件系统、本地文件等,专门用于存储半结构化数据和/或非结构化数据。
[0003] 在实际使用过程中,需要根据具体的应用场景和数据特点选择合适的系统来存储半结构化数据和/或非结构化数据,这些系统对数据读取和写入都有特定的规范标准或者应用程序接口API,无法形成统一的语法,给企业的生产活动和IT化建设带来了困难。因此,如何解决多源异构的半/非结构化数据存储系统的统一管理和访问,一直是一个技术难题。

发明内容

[0004] 为了解决多源异构的半/非结构化数据存储系统的统一管理和访问的问题,本申请提供了一种虚拟模型映射方法和系统。
[0005] 第一方面,本申请提供一种虚拟模型映射方法,采用如下的技术方案:
[0006] 一种虚拟模型映射方法,包括:
[0007] 从异构的多个文件存储系统中获取目标数据;所述文件存储系统存储的文件为半结构化数据和/或非结构化数据,所述目标数据用于指示所述文件存储系统和所述文件的属性信息;对所述目标数据进行解析,分别提取每个文件存储系统的元数据;根据所述元数据,建立所述目标数据与元数据模型之间的映射关系;所述元数据模型为结构化数据存储所需的数据结构;基于所述映射关系,将所述元数据分别按照每个文件存储系统对应的元数据模型的形式存储在结构化数据存储系统中。
[0008] 通过采用上述技术方案,建立多个文件存储系统中存储的目标数据与元数据模型之间的映射关系,实现了半/非结构化数据的结构化映射,基于该映射关系,将元数据分别按照每个文件存储系统对应的元数据模型的形式存储在结构化数据存储系统中,后续可以根据结构化数据存储系统中的元数据模型,采用统一方式从对应的文件存储系统访问目标数据,避免了采用不同方式分别访问多个文件存储系统,从而实现对异构的多个文件存储系统的统一管理和访问。
[0009] 可选的,所述元数据模型包括多个结构化的子模型;根据所述元数据,建立所述目标数据与元数据模型之间的映射关系,包括:
[0010] 根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系。通过采用上述技术方案,建立目标数据的各个子数据与对应的子模型之间的映射关系,实现子数据与子模型的一对一映射,后续通过查询各个子模型,可以快速查找到对应的子数据。
[0011] 可选的,所述多个结构化的子模型包括库模型和表模型,根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:根据所述元数据,建立所述目标数据中的特定目录与所述库模型之间的映射关系、或者具备第一正则表达式匹配规则的同类目录与所述库模型之间的映射关系、或者具备所述第一正则表达式匹配规则的文件列表与所述库模型之间的映射关系;
[0012] 建立所述库模型对应的目录与所述表模型之间的映射关系、或所述库模型对应的文件列表之下的目录与所述表模型之间的映射关系、或者所述库模型对应的具备第二正则表达式匹配规则的同类目录与所述表模型之间的映射关系、或者所述库模型对应的具备所述第二正则表达式匹配规则的文件列表与所述表模型之间的映射关系。
[0013] 通过采用上述技术方案,在库模型的基础上建立了表模型,通过递进式建模,后续通过查找相关数据更加方便快捷。
[0014] 可选的,所述多个结构化的子模型包括字段模型和摘要字段模型,根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:根据所述元数据,确定所述目标数据的文件基础数据和摘要数据;建立所述文件基础数据与所述字段模型之间的映射关系、以及所述摘要数据与所述摘要字段模型之间的映射关系。
[0015] 通过采用上述技术方案,将文件基础数据映射为字段模型,后续通过字段模型可快速查到文件基础数据,将摘要数据映射为摘要字段模型,后续在文件检索和展示时,通过摘要字段模型快速呈现相关文件的摘要信息。
[0016] 可选的,所述多个结构化的子模型包括标签字段模型,根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:根据所述元数据,确定所述目标数据中每个文件与预存标签库中标签的匹配关系;根据所述匹配关系,建立每个文件、标签以及所述标签字段模型之间的映射关系。
[0017] 通过采用上述技术方案,将文件与标签的匹配关系映射为标签字段模型,标签字段模型中的文件标签可帮助用户更方便地组织和访问各个文件。
[0018] 可选的,所述多个结构化的子模型包括关联模型,根据所述元数据,建立所述目标数据的各个子数据与对应的子模型之间的映射关系,包括:
[0019] 根据所述元数据,确定所述目标数据中各个文件之间的关联关系;根据所述关联关系,建立各个文件与所述关联模型之间的映射关系。
[0020] 通过采用上述技术方案,将各个文件之间的关联关系映射为关联模型,根据关联模型中的关联关系可快速查到相关文件,提高文件查询和检索的效率。
[0021] 可选的,所述多个结构化的子模型包括权限模型,所述方法还包括:
[0022] 获取每个文件存储系统的权限信息,建立所述权限信息与所述权限模型之间的映射关系。
[0023] 通过采用上述技术方案,将文件存储系统的权限信息映射为权限模型,根据权限模型中权限信息可及时对恶意访问进行拦截,提高系统的安全性。
[0024] 可选的,所述方法还包括:
[0025] 从目标文件存储系统中获取待处理数据;所述目标文件存储系统与所述多个文件存储系统的架构不同,所述待处理数据用于指示所述目标文件存储系统的属性信息和所述目标文件存储系统存储的文件的属性信息;根据所述待处理数据对所述元数据模型进行扩展。
[0026] 通过采用上述技术方案,根据与多个文件存储系统的架构不同的目标文件存储系统中的待处理数据,对元数据模型进行扩展,以适应不同类型的文件存储系统的数据存储要求。
[0027] 可选的,根据所述待处理数据对所述元数据模型进行扩展,包括:
[0028] 在所述元数据模型的基础上,新增与所述目标文件存储系统对应的目标元数据模型;根据所述待处理数据的元数据,建立所述待处理数据与所述目标元数据模型之间的映射关系。
[0029] 通过采用上述技术方案,在元数据模型的基础上,新增与目标文件存储系统对应的目标元数据模型,目标文件存储系统与目标元数据模型是对应的,根据目标元数据模型可快速查询目标文件存储系统的待处理数据。
[0030] 第二方面,本申请提供一种虚拟模型映射系统,采用如下的技术方案:
[0031] 一种虚拟模型映射系统,包括:
[0032] 数据获取模块,用于:从异构的多个文件存储系统中获取目标数据;所述目标数据为半结构化数据和/或非结构化数据;
[0033] 数据处理模块,用于:对所述目标数据进行解析,分别提取每个文件存储系统的元数据;
[0034] 数据映射模块,用于:根据所述元数据,建立所述目标数据与元数据模型之间的映射关系;所述元数据模型为结构化数据存储所需的数据结构;
[0035] 数据存储模块,用于:基于所述映射关系,将所述元数据分别按照每个文件存储系统对应的元数据模型存储在结构化数据存储系统中。
[0036] 第三方面,本申请提供一种电子设备,采用如下的技术方案:
[0037] 一种电子设备,包括处理器、存储器、用户接口及网络接口,存储器用于存储指令,用户接口和网络接口用于给其他设备通信,处理器用于执行存储器中存储的指令,以使电子设备执行上述中第一方面中任一种方法。
[0038] 第四方面,本申请提供一种计算机可读存储介质,采用如下的技术方案:
[0039] 一种计算机可读存储介质,存储有能够被处理器加载并执行如第一方面中任一种方法的计算机程序。
[0040] 综上所述,本申请包括以下至少一种有益技术效果:
[0041] 本申请实施例将异构的多个文件数据存储系统中存储的目标数据进行解析和元数据提取,根据元数据建立目标数据与元数据模型之间的映射关系,将目标数据中的非结构化信息分别映射为结构化存储中的库模型、表模型、字段模型、权限模型等,基于映射关系,将元数据分别按照每个文件存储系统对应的元数据模型的形式存储在结构化数据存储系统中,后续可以根据结构化数据存储系统中的元数据模型,采用统一方式从对应的文件存储系统访问目标数据,避免了采用不同方式分别访问多个文件存储系统,从而实现对异构的多个文件存储系统的统一管理和访问。

附图说明

[0042] 图1是本申请实施例提供的一种虚拟模型映射方法的应用场景图。
[0043] 图2是本申请实施例提供的一种虚拟模型映射方法的流程图。
[0044] 图3是本申请实施例提供的一种虚拟模型映射系统的结构图一。
[0045] 图4是本申请实施例提供的一种适配器的结构图。
[0046] 图5是本申请实施例提供的一种结构化重构器的结构图。
[0047] 图6是本申请实施例提供的一种系统管理模块的结构图。
[0048] 图7是本申请实施例提供的一种虚拟模型映射系统的结构图二。
[0049] 图8是本申请实施例提供的一种电子设备的结构示意图。
[0050] 附图标记说明:101、电子设备;102、文件存储系统;103、结构化数据存储系统;300、虚拟模型映射系统;301、适配器;302、结构化重构器;303、元数据模型;304、系统管理模块;401、接口定义模块;402、标准化操作模块;403、配置管理模块;404、适配逻辑模块;
405、错误处理模块;406、安全认证模块;407、日志记录模块;501、数据解析模块;502、元数据标准化模块;503、映射管理模块;504、权限处理模块;505、错误处理和日志模块;506、配置模块;507、存储模块;601、文件检索访问模块;602、元数据模型管理模块;603、文件标签管理模块;604、文件摘要管理模块;605、插件管理和加载模块;606、存储系统管理模块;
701、数据获取模块;702、数据处理模块;703、数据映射模块;704、数据存储模块;705、扩展模块;801、处理器;802、通信总线;803、用户接口;804、网络接口;805、存储器。

具体实施方式

[0051] 为了使本技术领域人员更好地理解本说明书中的技术方案,下面结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,所描述的实施例仅是本申请一部分实施例,而不是全部实施例。
[0052] 随着互联网的普及和社交媒体的兴起,半/非结构化数据的数据量迅速增长,目前,半/非结构化数据占据了总数据量的80%到90%,首先介绍一些常用的半/非结构化数据存储系统。
[0053]  1、文件系统:数据以文件和文件夹的形式存储在操作系统的文件系统中。这种方式缺乏数据标准化和元数据,难以进行高效的检索和查询,针对大量的非结构化数据,其扩展性和性能存在问题。
[0054]  2.非关系型(Not Only SQL,NoSQL)数据库:NoSQL数据库例如MongoDB、Cassandra、Couchbase等在处理半/非结构化数据方面具有优势,但不同类型的NoSQL数据库适用于不同的数据模型,如何选择合适的NoSQL数据库存在挑战,一些NoSQL数据库存在数据一致性和事务处理的问题。
[0055]  3.对象存储:数据以对象的形式存储在分布式存储系统中,每个对象都有唯一的标识符。对象存储通常缺乏复杂的查询和事务支持,适用于大规模的数据存储,但不适合一些需要频繁查询和更新的应用场景。
[0056]  4.分布式文件系统:数据被分布式地存储在多台服务器上,形成一个文件系统。数据的分布式存储使数据的管理和维护变得复杂,数据的一致性和可靠性需要考虑,且分布式环境可能存在数据同步和并发访问的问题。
[0057]  5.对象存储网关:将数据存储在对象存储系统中,并提供对传统文件系统和应用程序的接口,以便更容易地访问和管理数据。对象存储网关可以简化对半/非结构化数据的访问,但在性能方面会有一定的开销。同时,配置和管理对象存储网关可能需要额外的工作。
[0058] 如上介绍了多种不同架构的半/非结构化数据存储系统,后文简称为文件存储系统,每种系统的访问方式均不同,很难使用一种语言或者一种访问方式来实现多源异构的半/非结构化数据存储系统的统一管理和访问。
[0059] 鉴于此,本申请实施例公开一种虚拟模型映射方法,该方法可以由电子设备执行,电子设备可以通过终端或服务器实现,终端例如移动终端、固定终端或便携式终端,例如移动手机、多媒体计算机、多媒体平板、台式计算机、笔记本计算机、平板计算机等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库等基础云计算服务的云服务器,并不局限于此。
[0060] 请参照图1,为本申请实施例提供的一种虚拟模型映射方法的应用场景示意图,下面对该虚拟模型映射方法的应用场景做简单介绍。该应用场景包括电子设备101、文件存储系统102以及结构化数据存储系统103。
[0061] 文件存储系统102用于存储半结构化数据和/或非结构化数据,文件存储系统101包括Ceph、HDFS、FTP、本地文件系统。图1是以文件存储系统101包括Ceph、HDFS、FTP、本地文件系统为例,实际上不限制文件存储系统101的类型,文件存储系统101例如BeeGFS、GFS、DataCellFS、OSS等。
[0062] 结构化数据存储系统103用于存储结构化数据,结构化数据存储系统103包括关系型数据库、全文检索引擎、NoSQL数据库、图数据库等。图1只是以结构化数据存储系统103包括关系型数据库、全文检索引擎、NoSQL数据库、图数据库为例,实际上不限制结构化数据存储系统103的类型。
[0063] 电子设备101用于将文件存储系统102中的半结构化数据和/或非结构化数据进行结构化映射,并将映射后的数据存储在结构化数据存储系统103中,具体如何进行映射的过程将在下文进行论述。
[0064] 如上对虚拟模型映射方法的应用场景做了相应的介绍,参照图2,为本申请实施例提供的一种虚拟模型映射方法的流程图,下面以图1中电子设备101执行图2中的虚拟模型映射方法为例进行介绍。
[0065]  S201、从异构的多个文件存储系统中获取目标数据。
[0066] 具体的,异构的多个文件存储系统例如图1中的Ceph、HDFS、FTP、本地文件系统等,由于每个文件存储系统的架构不同,电子设备101可以分别配置与每个文件存储系统之间的连接参数,依次扫描每个文件存储系统,获取每个文件存储系统中存储的数据,从而得到目标数据,即目标数据来源于多个文件存储系统。文件存储系统存储的文件为半结构化数据和/或非结构化数据,目标数据用于指示文件存储系统和文件的属性信息。
[0067] 例如,多个文件存储系统包括Ceph、HDFS、FTP,从Ceph系统获取数据data1,从HDFS系统获取data2,从FTP系统获取数据data3,目标数据指的是data1、data2和data3。
[0068]  S202、对目标数据进行解析,分别提取每个文件存储系统的元数据。
[0069] 具体的,电子设备101获取到目标数据之后,可以对目标数据进行解析,将目标数据拆分为目录、文件、对象等单元,针对,分别提取每个文件存储系统的元数据。继续上例,从数据data1提取Ceph系统的元数据X1,从数据data2提取HDFS系统的元数据X2,从数据data3提取FTP系统的元数据X3。
[0070]  S203、根据元数据,建立目标数据与元数据模型之间的映射关系。
[0071]  元数据模型(又称统一虚拟结构化元数据模型)为结构化数据存储所需的数据结构,元数据模型包括多个结构化的子模型,多个结构化的子模型包括库模型(DataBase Model)、表模型(Table Model)、字段模型(Column Model)、标签字段模型(Label Column Model)、摘要字段模型(Summary Column Model)、关联模型(Reference Model)、权限模型。
[0072] 电子设备101可以根据元数据,建立目标数据的各个子数据与对应的子模型之间的映射关系。下面分别介绍如何建立各个子数据与对应的子模型之间的映射关系。
[0073] 在一种可能的实施方式中,根据元数据,建立目标数据中的特定目录与库模型之间的映射关系、或者具备第一正则表达式匹配规则的同类目录与库模型之间的映射关系、或者具备第一正则表达式匹配规则的文件列表与库模型之间的映射关系。建立库模型对应的目录与表模型之间的映射关系、或库模型对应的文件列表之下的目录与表模型之间的映射关系、或者库模型对应的具备第二正则表达式匹配规则的同类目录与表模型之间的映射关系、或者库模型对应的具备第二正则表达式匹配规则的文件列表与表模型之间的映射关系。
[0074] 具体的,根据业务需要,将特定目录、或具备一定正则表达式匹配规则的同类目录或文件列表映射为库模型,在指定的库模型下,将库模型对应的目录/文件列表之下的目录、或者库模型对应的具备一定正则表达式匹配规则的同类目录/文件列表映射为表模型。
[0075] 库模型的示例如下:
[0076]
[0077] 表模型的示例如下:
[0078]
[0079] 在一种可能的实施方式中,根据元数据,确定目标数据的文件基础数据和摘要数据;建立文件基础数据与字段模型之间的映射关系、以及摘要数据与摘要字段模型之间的映射关系。
[0080] 具体的,电子设备101可以从目标数据中提取文件基础数据,将文件基础数据映射为字段模型。文件基础数据用于指示目标数据中每个文件的基本特征,例如文件名、文件创建时间、文件修改时间、用户组、文件大小、文件类型等。
[0081] 字段模型包括字段ID、字段名、字段的创建时间和最后修改时间、字段所属的文件ID,字段模型示例如下:
[0082]
[0083] 电子设备101可以对文件的内容进行分析,或者对文件中的摘要章节进行提取,例如对图片文件进行光学字符识别(Optical Character Recognition,OCR)识别、通过特定API对文档文件进行内容提取等,从而提取出摘要数据,摘要数据用于指示目标数据中每个文件的非结构化内容的概要,将摘要数据映射为摘要字段模型。
[0084] 摘要字段模型包括摘要ID、摘要内容、摘要的创建时间和最后修改时间、摘要所属的文件ID,摘要字段模型示例如下:
[0085]
[0086] 在一种可能的实施方式中,根据元数据,确定对目标数据中每个文件与预存标签库中标签的匹配关系,根据匹配关系,建立每个文件、标签以及标签字段模型之间的映射关系。
[0087] 具体的,电子设备101根据元数据和标签库中的匹配规则,对目标数据中每个文件进行标签匹配,确定每个文件与标签库中的标签的匹配关系,将该匹配关系映射为标签字段模型,从而完善字段模型。其中,标签库包括多个标签以及每个标签的匹配规则,例如音频文件的匹配规则:文件名后缀为.mp3,图片文件的匹配规则:文件名后缀为jpg、png、jpeg等。
[0088] 标签库还可以包括标签ID、标签名、标签类型、默认匹配规则、标签的创建时间和最后修改时间,标签库的示例如下:
[0089]
[0090] 标签字段模型包括各个文件的文件ID、与每个文件匹配的标签ID、匹配关系的创建时间和最后修改时间,标签字段模型的示例如下:
[0091]
[0092] 在一种可能的实施方式中,根据元数据,确定目标数据中各个文件之间的关联关系;根据关联关系,建立各个文件与关联模型之间的映射关系。
[0093] 具体的,文件之间由于业务关系会存在一些关联因素,例如类似名称、相同用户/组、同一文件后缀特征、文件名按序号递增等,该关联关系有助于用户检索文件时进行关联分析,因此电子设备101可以将各个文件之间的关联关系映射为关联模型。
[0094] 关联模型包括相互关联的两个文件的文件ID、关联关系的创建时间和最后修改时间,关联模型示例如下:
[0095]
[0096] 在一种可能的实施方式中,获取每个文件存储系统的权限信息,建立权限信息与权限模型之间的映射关系。
[0097]  具体的,权限信息例如对某个目录或者文件的读写权限、用户权限等, 电子设备101可以构建辅助模型:用户模型和用户组模型,用户模型包括用户ID、用户账号和用户密码,用户模型示例如下:
[0098]
[0099] 用户组模型包括用户组ID和用户组名称,用户组模型示例如下:
[0100]
[0101] 根据表模型中的文件ID,将用户模型和用户组模型进行关联,得到用户与用户组关联模型,用户与用户组关联模型示例如下:
[0102]
[0103] 基于用户与用户组关联模型和权限信息,获得权限模型,示例如下:
[0104]
[0105] 在本申请实施例中,接入数据存储系统的每一个文件存储系统,都在元数据模型中形成一个数据库,按照配置的不同维度(文件类型、目录)抽象成不同的表,如FTP系统抽象为一个FTP_A的数据库,根据FTP的一级目录形成一系列的表,每个子孙目录或者文件都是一条数据。
[0106] 考虑到元数据通常来源于各种不同类型的半/非结构化数据,在一种可能的实施方式中,对元数据进行标准化,使其符合统一的数据模型和格式,根据标准化后的元数据,建立目标数据与元数据模型之间的映射关系。
[0107]  S204、基于映射关系,将元数据分别按照每个文件存储系统对应的元数据模型的形式存储在结构化数据存储系统中。
[0108] 具体的,由于每个文件存储系统对应一个元数据模型,每个元数据模型包括多个结构化的子模型,因此电子设备101可以基于目标数据与元数据模型之间的映射关系,将元数据分别按照每个文件存储系统对应的多个子模型的形式存储在结构化数据存储系统中。结构化数据存储系统例如图1中的关系型数据库、全文检索引擎、NoSQL数据库、图数据库等。
[0109] 综上所述,本申请实施例提供的一种虚拟模型映射方法,从异构的多个文件存储系统中获取目标数据,对目标数据中的目录、文件、对象等非结构化信息进行结构化的重构和处理,建立目标数据与元数据模型之间的映射关系,将这些信息分别映射为元数据模型的库模型、表模型、字段模型、权限模型等结构化的子模型,元数据模型可加载到各种结构化数据存储系统中,后续可以根据结构化数据存储系统中的元数据模型,采用统一方式从对应的文件存储系统访问目标数据,避免采用不同方式分别访问多个文件存储系统,从而实现对异构的多个文件存储系统的统一管理和访问。
[0110] 本申请实施例还提供一种虚拟模型映射系统,该系统可以设置于前文论述的电子设备101中。请参照图3,图3示出了本申请实施例提供的一种虚拟模型映射系统的结构图一,虚拟模型映射系统又称为半/非结构化数据管理和访问系统,该数据管理和访问系统300包括适配器301、结构化重构器302、元数据模型303、系统管理模块304。
[0111] 适配器301用于为数据管理和访问系统300与多个文件存储系统102之间的交互提供API。由于每个文件存储系统102的操作方法不同,因此数据管理和访问系统300包括多个适配器301,每个适配器301连接一个文件存储系统102,每个适配器301为对应的文件存储系统提供特定的API。
[0112] 数据管理和访问系统300包括多个结构化重构器302,每个结构化重构器302连接一个适配器301,每个结构化重构器302通过连接的适配器301从异构的多个文件存储系统102中获取目标数据,建立目标数据与元数据模型303之间的映射关系。元数据模型303为结构化数据存储所需的数据结构。
[0113] 系统管理模块304作为统一门户,为用户和管理员提供一个集中管理和控制数据存储系统的界面。用户通过这个界面可以方便地搜索、访问和组织半结构化数据和/或非结构化数据,管理员通过这个界面对整个数据存储系统进行配置、监控和优化,确保数据管理和访问系统300的高效运行。
[0114] 请参照图4,为本申请实施例提供的适配器的结构图。该适配器301包括接口定义模块401、标准化操作模块402、配置管理模块403、适配逻辑模块404、错误处理模块405、安全认证模块406、日志记录模块407。
[0115] 接口定义模块401用于定义一个标准的API,以便与其他系统进行交互,该API明确定义可以执行的操作、传递的参数以及返回的结果。标准化操作模块402用于定义一组适用于大多数文件存储系统102的标准化操作,例如读取文件、写入文件、创建目录、删除文件等。配置管理模块403用于配置和管理数据管理和访问系统300与不同文件存储系统102之间的连接和设置,实现对不同文件存储系统102的适配和定制。
[0116]  适配逻辑模块404用于根据不同文件存储系统102的特性和接口要求,将标准化操作转换为相应的存储系统操作。不同文件存储系统102的操作方式可能不同,例如http接口、命令、函数等,即使方式相同,例如均采用命令的方式表达同样的操作,但具体的命令不同,例如:有的系统写入用put、读取用get、删除用delete、列出用list来表示,而有的系统写入用write、读取用read、删除用remove、列出用ls 来表示。因此,针对不同文件存储系统102进行标准化操作的转换。
[0117] 错误处理模块405用于识别和处理来自底层的文件存储系统102的错误信息,将错误信息返回给上层调用者。上层调用者指的是客户端,客户端的调用方式例如通过一些内定操作接口、操作命令、操作函数等来调用。
[0118]  安全认证模块406用于检验对文件存储系统102的访问是否安全,确保对文件存储系统102的访问是经过授权和认证的,并且没有越权访问的风险。认证方式例如账号密码认证,通过识别账号进行身份认证。授权方式例如:所有者‑用户组‑其它用户(User‑Group‑Other,UGO)授权、访问控制列表(Access Control List,ACL)授权等。
[0119] 日志记录模块407用于记录日志,以便在需要时追踪和排查问题,了解系统的运行情况。记录的内容可以是对文件的操作记录,例如写入、读取、删除、移动、修改等,也可以是对文件的授权操作,例如读写权限变更、用户授权等。
[0120] 请参照图5,为本申请实施例提供的一种结构化重构器的结构图。该结构化重构器302包括:数据解析模块501、元数据标准化模块502、映射管理模块503、权限处理模块504、错误处理和日志模块505、配置模块506、存储模块507。
[0121] 数据解析模块501用于从异构的多个文件存储系统102中获取目标数据,对目标数据进行解析,针对每个文件存储系统102,分别提取元数据。元数据标准化模块502用于对元数据进行标准化,以确保其统一性和一致性。映射管理模块503用于建立目标数据与元数据模型303之间的映射关系,将目标数据的目录、文件、对象映射为结构化存储中的映射库、映射表、字段等数据结构。
[0122]  权限处理模块504用于提取文件存储系统102的权限信息,将权限信息映射为元数据模型303中的权限模型。错误处理和日志模块505用于处理结构化重构器302中其他模块出现的错误,并记录日志,以便排查问题和监控系统运行状态。 配置模块506用于配置和管理结构化重构器302的基本信息和参数,例如文件存储系统102的连接配置。存储模块507用于基于映射关系,将元数据分别按照每个文件存储系统102对应的元数据模型303的形式存储在结构化数据存储系统103中。
[0123] 请参照图6,为本申请实施例提供的系统管理模块的结构图,该系统管理模块304包括文件检索访问模块601、元数据模型管理模块602、文件标签管理模块603、文件摘要管理模块604、插件管理和加载模块605、存储系统管理模块606。下面介绍系统管理模块304中各个子模块的功能。
[0124] 文件检索访问模块601用于处理用户对半结构数据和/或非结构数据的检索和访问请求。文件检索访问模块601提供了一组标准化的接口和方法,允许用户通过关键字、属性或其他查询条件来搜索和访问半结构数据和/或非结构数据。文件检索访问模块601通过调用其他相关模块来实现数据检索和访问功能。
[0125] 元数据模型管理模块602用于管理元数据模型303。该元数据模型303定义了半结构数据和/或非结构化数据的属性、结构和关系、以及与结构化数据存储系统的映射。系统管理模块304对该元数据模型303进行配置、扩展和维护,以适应不同类型的半结构数据或非结构化数据的存储要求。
[0126] 文件标签管理模块603用于管理文件的标签,包括创建、修改、删除标签,以及将标签应用于对应的文件。文件标签是对半结构数据和/或非结构数据进行分类和组织的重要方式,标签的使用可以帮助用户更方便地组织和访问数据。
[0127] 文件摘要管理模块604用于管理每个文件的摘要信息。摘要信息是文件的简要描述,用于快速了解文件内容。文件摘要管理模块604负责提取和管理文件的摘要信息,以便在文件检索和展示时快速呈现相关信息。
[0128] 插件管理和加载模块605用于管理数据管理和访问系统300与文件存储系统102进行交互的插件。数据管理和访问系统300通常需要与异构的多个文件存储系统102进行交互,例如文件系统、对象存储、云存储等,插件管理和加载模块605负责管理插件,插件用于与各种文件存储系统102进行通信和数据交换。系统管理模块304允许加载、配置和管理这些插件,确保数据管理和访问系统300可以与多种文件存储系统102无缝集成。
[0129] 存储系统管理模块606用于管理多个文件存储系统102的配置和设置。管理员可以通过存储系统管理模块606对底层的文件存储系统102进行管理,包括添加、删除、配置文件存储系统102,监控各个文件存储系统102的状态和性能,优化各个文件存储系统102的资源分配和数据访问效率。
[0130] 如上介绍了数据管理系统的结构,下面举例说明该数据管理系统的实际运行过程。
[0131] 适配器301的接口定义模块401定义了一个标准的API,通过该API连接Ceph系统,适配逻辑模块404根据Ceph系统的特性和接口要求,将标准化操作模块402定义的标准化操作转换为相应的存储系统操作,配置管理模块403完成与Ceph系统之间的连接配置。当错误处理模块405识别到来自Ceph系统的错误信息时,将错误信息返回给客户端,安全认证模块406可以检验客户端对Ceph系统的访问是否安全,日志记录模块407可以记录客户端对Ceph系统中的数据data1的具体操作。
[0132] 结构化重构器302的数据解析模块501通过适配器301从Ceph系统获取数据data1,对数据data1进行解析,提取元数据X1,元数据标准化模块502对元数据X1进行标准化,映射管理模块503根据元数据X1或者标准化后的元数据X1,建立数据data1与元数据模型303之间的映射关系,存储模块507基于该映射关系,将元数据X1按照Ceph系统对应的元数据模型303的形式存储在结构化数据存储系统103中。另外,权限处理模块504可以提取Ceph系统的权限信息,建立权限信息与元数据模型303中的权限模型之间的映射关系,错误处理和日志模块505可以处理数据重构过程中出现的错误,并记录日志。
[0133] 当用户通过客户端想要访问Ceph系统的数据data1时,文件检索访问模块601可以响应于用户的访问请求,根据结构化数据存储系统103中的元数据模型从对应的文件存储系统读取数据ata1。存储系统管理模块606可以删除Ceph系统,也可以添加新的文件存储系统,例如HDFS系统。元数据模型管理模块602可以对元数据模型303进行扩展,例如当添加HDFS系统时,元数据模型管理模块602可以从HDFS系统中获取数据data2,根据数据data2对元数据模型303进行扩展。插件管理和加载模块605可以分别管理数据管理和访问系统300与Ceph系统进行交互的插件、以及数据管理和访问系统300与HDFS系统进行交互的插件。
[0134] 请参照图7,为本申请实施例提供的一种虚拟模型映射系统的结构图二,该虚拟模型映射系统包括:数据获取模块701、数据处理模块702、数据映射模块703、数据存储模块704以及扩展模块705。
[0135] 数据获取模块701用于:从异构的多个文件存储系统中获取目标数据;文件存储系统存储的文件为半结构化数据和/或非结构化数据,目标数据用于指示文件存储系统和文件的属性信息;数据处理模块702用于:对目标数据进行解析,分别提取每个文件存储系统的元数据;数据映射模块703用于:根据元数据,建立目标数据与元数据模型之间的映射关系;元数据模型为结构化数据存储所需的数据结构;数据存储模块704用于:基于映射关系,将元数据分别按照每个文件存储系统对应的元数据模型的形式存储在结构化数据存储系统中。
[0136] 可选的,元数据模型包括多个结构化的子模型;数据映射模块703具体用于:根据元数据,建立目标数据的各个子数据与对应的子模型之间的映射关系。
[0137] 可选的,多个结构化的子模型包括库模型和表模型,数据映射模块703具体用于:根据元数据,建立目标数据中的特定目录与库模型之间的映射关系、或者具备第一正则表达式匹配规则的同类目录与库模型之间的映射关系、或者具备第一正则表达式匹配规则的文件列表与库模型之间的映射关系;建立库模型对应的目录与表模型之间的映射关系、或库模型对应的文件列表之下的目录与表模型之间的映射关系、或者库模型对应的具备第二正则表达式匹配规则的同类目录与表模型之间的映射关系、或者库模型对应的具备第二正则表达式匹配规则的文件列表与表模型之间的映射关系。
[0138] 可选的,多个结构化的子模型包括字段模型和摘要字段模型,数据映射模块703具体用于根据元数据,确定目标数据的文件基础数据和摘要数据;建立文件基础数据与字段模型之间的映射关系、以及摘要数据与摘要字段模型之间的映射关系。
[0139] 可选的,多个结构化的子模型包括标签字段模型,数据映射模块703具体用于:根据元数据,确定对目标数据中每个文件与预存标签库中标签的匹配关系;根据匹配关系,建立每个文件、标签以及标签字段模型之间的映射关系。
[0140] 可选的,多个结构化的子模型包括关联模型,数据映射模块703具体用于:根据元数据,确定目标数据中各个文件之间的关联关系;根据关联关系,建立各个文件与关联模型之间的映射关系。
[0141] 可选的,多个结构化的子模型包括权限模型,数据映射模块703还用于:获取每个文件存储系统的权限信息,建立权限信息与权限模型之间的映射关系。
[0142] 可选的,继续参照图7,该系统还包括扩展模块705,扩展模块705用于:从目标文件存储系统中获取待处理数据;目标文件存储系统与多个文件存储系统的架构不同,待处理数据用于指示目标文件存储系统的属性信息和目标文件存储系统存储的文件的属性信息;根据待处理数据对元数据模型进行扩展。
[0143] 可选的,扩展模块705具体用于:在元数据模型的基础上,新增与目标文件存储系统对应的目标元数据模型;根据待处理数据的元数据,建立待处理数据与目标元数据模型之间的映射关系。
[0144] 应当说明的是,结构化重构器302可以执行数据获取模块701、数据处理模块702、数据映射模块703以及数据存储模块704的方法,其中,数据解析模块501相当于数据获取模块701和数据处理模块702的集成,映射管理模块503相当于数据映射模块703,存储模块507相当于数据存储模块704。系统管理模块304可以执行扩展模块705的方法,其中,元数据模型管理模块602相当于扩展模块705。
[0145] 请参见图8,为本申请实施例提供了一种电子设备的结构示意图。如图8所示,所述电子设备800可以包括:至少一个处理器801,至少一个网络接口804,用户接口803,存储器805,至少一个通信总线802。
[0146] 其中,通信总线802用于实现这些组件之间的连接通信。用户接口803可以包括显示屏(Display)、摄像头(Camera),可选用户接口803还可以包括标准的有线接口、无线接口。网络接口804可选的可以包括标准的有线接口、无线接口(如WI‑FI接口)。
[0147]  其中,处理器801可以包括一个或者多个处理核心。处理器801利用各种接口和线路连接整个服务器内的各个部分,通过运行或执行存储在存储器805内的指令、程序、代码集或指令集,以及调用存储在存储器805内的数据,执行服务器的各种功能和处理数据。可选的,处理器801可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field‑Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器801可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。上述调制解调器可以不集成到处理器801中,单独通过一块芯片进行实现。
[0148] 其中,存储器805可包括随机存储器,也可包括只读存储器。可选的,该存储器805包括非瞬时性计算机可读介质。存储器805可用于存储指令、程序、代码、代码集或指令集。存储器805可包括存储程序区和存储数据区。存储器805还可以是至少一个位于远离前述处理器801的存储装置。如图8所示,作为一种计算机存储介质的存储器805可包括操作系统、网络通信模块、用户接口模块以及关于虚拟模型映射方法的应用程序。
[0149] 在图8所示的电子设备800中,用户接口803主要用于为用户提供输入的接口,获取用户输入的数据;而处理器801可以用于调用存储器805中存储有虚拟模型映射方法应用程序,当由一个或多个处理器执行时,使得电子设备800执行如上述实施例中一个或多个所述的方法。
[0150] 以上所述者,仅为本公开的示例性实施例,不能以此限定本公开的范围。即但凡依本公开教导所作的等效变化与修饰,皆仍属本公开涵盖的范围内。本领域技术人员在考虑说明书及实践真理的公开后,将容易想到本公开的其他实施方案。
[0151] 本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未记载的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的范围和精神由权利要求限定。