CN114741441A - 多类型存储引擎对象存储系统、方法和计算机可读介质 - Google Patents

多类型存储引擎对象存储系统、方法和计算机可读介质 Download PDF

Info

Publication number
CN114741441A
CN114741441A CN202210637812.1A CN202210637812A CN114741441A CN 114741441 A CN114741441 A CN 114741441A CN 202210637812 A CN202210637812 A CN 202210637812A CN 114741441 A CN114741441 A CN 114741441A
Authority
CN
China
Prior art keywords
service module
request
account
object storage
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210637812.1A
Other languages
English (en)
Inventor
黄天沛
李敏风
林少明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Xuanwu Wireless Technology Co Ltd
Original Assignee
Guangzhou Xuanwu Wireless Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Xuanwu Wireless Technology Co Ltd filed Critical Guangzhou Xuanwu Wireless Technology Co Ltd
Priority to CN202210637812.1A priority Critical patent/CN114741441A/zh
Publication of CN114741441A publication Critical patent/CN114741441A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了多类型存储引擎对象存储系统、方法和计算机可读介质,本申请的系统完全隔离存储层和业务层,业务层只需要接入客户端即可实现对象数据存储,无需关心存储层实现,业务层在版本迭代和演进过程中可以轻易替换存储层而无需做任务修改重新对接不同的存储层;后方存储层数据安全保障性高:业务层所有对数据操作的请求都必须经过业务模块请求控制器,可以根据需要做定制控制;此外,本发明可以让业务层账号和存储层账号隔离,进一步保障存储层数据安全,支持多个存储层共用。

Description

多类型存储引擎对象存储系统、方法和计算机可读介质
技术领域
本申请涉及计算机存储领域,尤其是多类型存储引擎对象存储系统、方法和计算机可读介质。
背景技术
对象存储是用来描述解决和处理离散单元的方法的通用术语。对象存储在一个层结构中不会再有层级结构,是以扩展元数据为特征的。目前的对象存储产品通过一定的术语转换,也可以按照AWSS3规范实现对象数据的存储。但是,相关对象存储技术中,存储层和业务层并未完全隔离,业务层在实现对象数据存储时需要考虑存储层能否实现对象存储,并且在版本迭代和演进过程中无法替换存储层,因此需要进行任务修改并重新对接不同的存储层,导致对象存储的流程复杂且效率较低。
因此,相关技术存在的上述技术问题亟待解决。
发明内容
本申请旨在解决相关技术中的技术问题之一。为此,本申请实施例提供多类型存储引擎对象存储系统、方法和计算机可读介质,能够提高对象存储的效率,简化对象存储的流程。
根据本申请实施例一方面,提供多类型存储引擎对象存储系统,所述系统包括:业务模块、服务模块、业务模块请求控制器和对象存储层;
所述业务模块为对象存储的使用方,所述业务模块引入AWSS3的用户且按照预设的规范实现对象数据的操作;
所述服务模块对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收所述业务模块通过发送的请求;
所述业务模块请求控制器用于处理请求数据的解析与封装,所述业务模块将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至所述业务模块。
在其中一个实施例中,所述服务模块接收所述业务模块通过发送的请求后,所述服务模块对所述业务模块通过发送的请求进行内部适配,将内部适配后的请求转发到存储层。
在其中一个实施例中,所述系统还包括账号认证模块,所述账号认证模块用于对账号进行认证,所述账号认证模块生成配置文件,所述配置文件会作用在所述业务模块请求控制器中,当业务模块发送的请求进入所述业务模块请求控制器时,业务模块请求控制器校验请求参数中的accessKey参数和secretKey参数的合法性。
在其中一个实施例中,所述对象存储层具有自身服务地址和账号配置,当操作请求进入到所述业务模块请求控制器时,所述业务模块请求控制器根据请求参数中的账号信息,查询到对应账户所支持的对象存储层实现。
在其中一个实施例中,所述业务模块请求控制器根据请求参数中的账号信息查询到对应账户所支持的对象存储层实现,包括:所述业务模块请求控制器通过account.json查询对应账户支持的对象存储层;调用所述对象存储层实现对象存储。
在其中一个实施例中,所述系统包括ServiceType组件和StorageService组件,所述ServiceType组件对应StorageService接口实现的类型,至少包括MINIO、AWS_S3、FTP、SFTP、HBASE、HDFS类型;所述StorageService组件至少包括putObject、getObject、deleteObject接口。
在其中一个实施例中,所述业务模块所有对数据操作的请求经过所述业务模块请求控制器,所述业务模块请求控制器对putObject、getObject、deleteObject做定制控制。
在其中一个实施例中,系统默认账号配置中的账号为业务模块使用的账号,所述业务模块账号和对象存储层账号隔离。
根据本申请实施例一方面,提供多类型存储引擎对象存储方法,所述方法包括:
引入AWSS3的用户且按照预设的规范实现对象数据的操作;
对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收业务模块通过发送的请求;
将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至业务模块。
根据本申请实施例一方面,提供计算机可读介质,所述计算机可读介质存储有处理器可执行的程序,所述处理器可执行的程序被处理器执行时实现如前面实施例中所述的多类型存储引擎对象存储方法。
本申请实施例提供的多类型存储引擎对象存储系统、方法和计算机可读介质的有益效果为:本申请的系统包括:业务模块、服务模块、业务模块请求控制器和对象存储层;所述业务模块为对象存储的使用方,所述业务模块引入AWSS3的用户且按照预设的规范实现对象数据的操作;所述服务模块对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收所述业务模块通过发送的请求;所述业务模块请求控制器用于处理请求数据的解析与封装,所述业务模块将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至所述业务模块。本申请的业务层只需要接入客户端即可实现对象数据存储,无需关心存储层实现,业务层在版本迭代和演进过程中可以轻易替换存储层而无需做任务修改重新对接不同的存储层;本申请的存储层数据安全保障性高。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的多类型存储引擎对象存储系统的主要组成部分示意图;
图2为本申请实施例提供的多类型存储引擎对象存储系统的组成部分和结构关系示意图;
图3为本申请实施例提供的多类型存储引擎对象存储系统的工作流程示意图;
图4为本申请实施例提供的多类型存储引擎对象存储方法的流程图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
对象存储是用来描述解决和处理离散单元的方法的通用术语。对象存储在一个层结构中不会再有层级结构,是以扩展元数据为特征的。目前的对象存储产品通过一定的术语转换,也可以按照AWSS3规范实现对象数据的存储。但是,相关对象存储技术中,存储层和业务层并未完全隔离,业务层在实现对象数据存储时需要考虑存储层能否实现对象存储,并且在版本迭代和演进过程中无法替换存储层,因此需要进行任务修改并重新对接不同的存储层,导致对象存储的流程复杂且效率较低。
为了解决上述问题,本申请提出了一种多类型存储引擎对象存储系统、方法和计算机可读介质。
图1为本申请实施例提供的多类型存储引擎对象存储系统的主要组成部分示意图,如图1所示,本申请提出的多类型存储引擎对象存储系统包括:业务模块、服务模块、业务模块请求控制器和对象存储层;所述业务模块为对象存储的使用方,所述业务模块引入AWSS3的用户且按照预设的规范实现对象数据的操作;所述服务模块对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收所述业务模块通过发送的请求;所述业务模块请求控制器用于处理请求数据的解析与封装,所述业务模块将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至所述业务模块。本申请的核心是使用AWSS3协议规范实现不同存储层的兼容,客户端只需要使用AWSS3的客户端或者按照AWSS3的规范接入即可,无需关心存储的具体实现方案和使用的组件,在本申请中,存储层则实现了AWSS3、MinIO、FTP、SFTP、HBase、HDFS的支持。可见,本实施例的业务层只需要接入客户端即可实现对象数据存储,无需关心存储层实现,业务层在版本迭代和演进过程中可以轻易替换存储层而无需做任务修改重新对接不同的存储层;本申请的存储层数据安全保障性高。
需要解释的是,本申请采用的AWSS3是一个公开的服务,Web应用程序开发人员可以使用它存储数字资产,包括图片、视频、音乐和文档。 S3 提供一个 RESTful API 以编程方式实现与该服务的交互。并且,本申请提出的多类型存储引擎对象存储系统可以适用包括AWS S3在内的其他对象存储服务(例如MinIO、阿里OSS等),此外,例如FTP、SFTP、HBase、HDFS通过一定的术语转换,也可以按照本申请实施例的AWS S3规范实现对象数据的存储,本申请不对具体应用的存储服务作不当限定。
本申请提供的是一种对象存储系统(Object-Based Storage System),综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构,可以在一个持久稳固且高度可用的系统中存储任意的对象,且独立于虚拟机实例之外。应用和用户可以在对象存储中使用简单的API访问数据;这些通常都基于表属性状态转移(REST)架构。
需要说明的是,本申请中的服务模块指OSS Proxy Server,OSS Proxy Server 把AWS S3、FTP、SFTP、HBase、HDFS 各个 Client 的基础之上做了一层封装,对外开放 AWS S3标准协议的服务,负责接收业务模块通过 AWS S3 SDK 发过来的请求,在内部经过适配后把数据转发到后方存储层的服务。
需要说明的是,本申请中的业务模块请求控制器,是 OSS Proxy Server 的组件之一,负责处理请求数据的解析与封装,然后转发到 StorageService 层,并对StorageService 层返回的数据解析,最后按照 AWS S3 协议规范响应回去给业务模块客户端。
需要说明的是,AWS S3 bucket 命名规则包括:
(1)bucket名称在所有现有 bucket 名称中必须是唯一的;
(2)bucket名称必须符合 DNS 命名约定;
(3)bucket名称长度必须至少为 3 且不超过 63 个字符;
(4)bucket名称不得包含大写字符或下划线;
(5)bucket名称必须以小写字母或数字开头;
(6)bucket名称必须是一系列一个或多个标签。相邻标签由单个句点(.)分隔;
(7)bucket名称可以包含小写字母,数字和连字符。每个标签必须以小写字母或数字开头和结尾。
在本实施例中,服务模块接收所述业务模块通过发送的请求后,所述服务模块对所述业务模块通过发送的请求进行内部适配,将内部适配后的请求转发到存储层。本申请中的业务模块是指对象存储的使用方,使用方并不知道后方的服务端模块使用的是何种存储引擎,只需要引入 AWS S3 的 Client 且按照 AWS S3 的规范即可实现对象数据的操作。
关于本实施例的对象存储标准术语转换表设计,具体包括:在对外开放接口时,外部系统操作对象数据时,需要下表中的各项参数,而为了实现对外接口的统一化,各个存储层之间的概念术语需要做一定的转化,部分不相交的概念及功能也需要做出裁剪不对外开放,具体见下表1:
表1
Amazon S3标准术语 MinIO FTP/SFTP HBase HDFS
Bucket (对象桶) Bucket (对象桶) parent path (文件路径) tableName-family-qualifier (表名+列簇+列) parent path (数据父路径)
Key (对象标识) Key (对象标识) file name (文件名) row (行) child path (数据子路径)
Data(DataStream) DataStream DataStream column byte [] value FSDataStream
此外,在系统的实际应用中还需要对账号进行认证,所述系统还包括账号认证模块,所述账号认证模块用于对账号进行认证,所述账号认证模块生成配置文件,所述配置文件会作用在所述业务模块请求控制器中,当业务模块发送的请求进入所述业务模块请求控制器时,业务模块请求控制器校验请求参数中的accessKey参数和secretKey参数的合法性。在对外提供服务时,有必要对访问的用户进行安全认证,需要有账号提供给业务模块AWS S3 SDK 配置使用,配置样例如下,配置文件名:account.json。该配置文件会作用在AwsS3ObjectController 中,当业务模块发送的请求进入 AwsS3ObjectController 时,AwsS3ObjectController 会校验请求参数中的 accessKey 和 secretKey 的合法性。
本实施例中所述的对象存储层具有自身服务地址和账号配置,当操作请求进入到所述业务模块请求控制器时,所述业务模块请求控制器根据请求参数中的账号信息,查询到对应账户所支持的对象存储层实现。并且,业务模块请求控制器根据请求参数中的账号信息查询到对应账户所支持的对象存储层实现,包括:所述业务模块请求控制器通过account.json查询对应账户支持的对象存储层;调用所述对象存储层实现对象存储。
本申请还对存储层进行了统一接口设计,对于对象储存,在功能上没有关系型数据库数据与数据之间的复杂性,所以不用考虑事务一致性等问题,本申请需要对所有支持的存储层做统一化标准处理,故在对象操作上,只保留对象数据的增删改查三个核心接口,其他的做裁剪处理,具体如表2所示:
表2
接口名称 参数列表 功能
putObject bucket(String):存储空间 key(String):对象或者文件名称 dataStream(InputStream):对象内容的数据流 dataMeta(ObjectMetadata):文件元信息。用来描述文件信息,例如长度,类型等 负责对象数据新增与覆盖修改
getObject bucket(String):存储空间 key(String):对象或者文件名称 负责对象数据的查询
deleteObject bucket(String):存储空间 key(String):对象或者文件名称 负责对象数据的删除
关于业务流程及模块结构设计,本申请的系统包括ServiceType组件和StorageService组件,所述ServiceType组件对应StorageService接口实现的类型,至少包括MINIO、AWS_S3、FTP、SFTP、HBASE、HDFS类型;所述StorageService组件至少包括putObject、getObject、deleteObject接口。业务模块所有对数据操作的请求经过所述业务模块请求控制器,所述业务模块请求控制器对putObject、getObject、deleteObject做定制控制。
具体地,ServiceType:是OSS Proxy Server的组件之一,是对应StorageService接口实现类的类型,目前有 MINIO、AWS_S3、FTP、SFTP、HBASE、HDFS六种类型。StorageService接口类:是OSS Proxy Server的组件之一,该类下有putObject、getObject、deleteObject 三个接口,该接口的类有:
(1)oAwsS3StorageServiceImpl 支持 AWS S3,对应 ServiceType 为 AWS_S3;
(2)oMinioStorageServiceImpl 支持 Minio,对应 ServiceType 为 MINIO;
(3)oHbaseStorageServiceImpl 支持 HBase,对应 ServiceType 为 HBASE;
(4)oHdfsStorageServiceImpl 支持 HDFS,对应 ServiceType 为 HDFS;
(5)oFtpStorageServiceImpl 支持 FTP,对应 ServiceType 为 FTP;
(6)SftpStorageServiceImpl 支持 SFTP,对应 ServiceType 为 SFTP。
系统默认账号配置中的账号为业务模块使用的账号,所述业务模块账号和对象存储层账号隔离。
关于本申请的StorageService 实现层设计,具体为:在后方需要支持例如 AWSS3、Minio、HBase、HDFS、FTP、SFTP 等多个存储层时,各个存储层都有其自身服务地址以及账号配置,各存储层配置文件设计如下,配置文件名:oss-config.json。该配置文件会作用在 StorageService 层,当对象操作请求进入到AwsS3ObjectController 时,AwsS3ObjectController 会根据请求参数中的账号信息,通过 account.json 查询到查询到对应 account 所支持的 StorageService 实现,例如在 account.json 配置文件中,accessKey 为 admin 的账号的 type 属性为 MINIO,而对应 MINIO 的存储层实现则是MinioStorageServiceImpl。
图2为本申请实施例提供的多类型存储引擎对象存储系统的组成部分和结构关系示意图,如图2所示,本申请的业务模块引入AWSS3的用户且按照预设的规范实现对象数据的操作;所述服务模块对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收所述业务模块通过发送的请求;所述业务模块请求控制器用于处理请求数据的解析与封装,所述业务模块将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至所述业务模块。本申请的核心是使用AWSS3协议规范实现不同存储层的兼容,客户端只需要使用AWSS3的客户端或者按照AWSS3的规范接入即可,无需关心存储的具体实现方案和使用的组件,在本申请中,存储层则实现了AWSS3、MinIO、FTP、SFTP、HBase、HDFS的支持。
图3为本申请实施例提供的多类型存储引擎对象存储系统的工作流程示意图,如图3所示,本申请完全隔离存储层和业务层,业务层只需要接入 AWS S3 SDK 客户端即可实现对象数据存储,无需关心存储层实现,业务层在版本迭代和演进过程中可以轻易替换存储层而无需做任务修改重新对接不同的存储层;后方存储层数据安全保障性高:业务层所有对数据操作的请求都必须经过 OSS Proxy Server, OSS Proxy Server 可以对putObject、getObject、deleteObject 根据需要做定制控制;此外,本发明中的account.json 账号配置中的账号为业务层使用的账号,oss-config.json 为存储层的服务地址与秘钥等配置,可以让业务层账号和存储层账号隔离,进一步保障存储层数据安全;本申请支持多个存储层共用,业务系统中的 account 的 type 属性标识该账号使用的存储层,业务系统可以配置多个账号,例如账号 A 的 type 为 MINIO、账号 B 的 type 为HBASE,那么账号 A 的对象数据则会存储到 MinIO 中,账号 B 的对象数据则会存储到HBase 中,账号 A 和 B 的数据也能起到完全隔离。
图4为本申请实施例提供的多类型存储引擎对象存储方法的流程图,如图4所示,本申请还提供了多类型存储引擎对象存储方法,所述方法包括:
S401、引入AWSS3的用户且按照预设的规范实现对象数据的操作。
S402、对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收业务模块通过发送的请求。
S403、将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至业务模块。
此外,本申请还提供了计算机可读介质,所述计算机可读介质存储有处理器可执行的程序,所述处理器可执行的程序被处理器执行时实现如前面实施例所述的多类型存储引擎对象存储方法。
上述方法实施例中的内容均适用于本存储计算机可读介质实施例中,本存储计算机可读介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或方框有时能以相反顺序被执行。此外,在本申请的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本申请,但应当理解的是,除非另有相反说明,功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本申请是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本申请。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本申请的范围,本申请的范围由所附权利要求书及其等同方案的全部范围来决定。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本申请的实施方式,本领域的普通技术人员可以理解:在不脱离本申请的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.多类型存储引擎对象存储系统,其特征在于,所述系统包括:业务模块、服务模块、业务模块请求控制器和对象存储层;
所述业务模块为对象存储的使用方,所述业务模块引入AWSS3的用户且按照预设的规范实现对象数据的操作;
所述服务模块对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收所述业务模块通过发送的请求;
所述业务模块请求控制器用于处理请求数据的解析与封装,所述业务模块将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至所述业务模块。
2.根据权利要求1所述的多类型存储引擎对象存储系统,其特征在于,所述服务模块接收所述业务模块通过发送的请求后,所述服务模块对所述业务模块通过发送的请求进行内部适配,将内部适配后的请求转发到存储层。
3.根据权利要求1所述的多类型存储引擎对象存储系统,其特征在于,所述系统还包括账号认证模块,所述账号认证模块用于对账号进行认证,所述账号认证模块生成配置文件,所述配置文件会作用在所述业务模块请求控制器中,当业务模块发送的请求进入所述业务模块请求控制器时,业务模块请求控制器校验请求参数中的accessKey参数和secretKey参数的合法性。
4.根据权利要求1所述的多类型存储引擎对象存储系统,其特征在于,所述对象存储层具有自身服务地址和账号配置,当操作请求进入到所述业务模块请求控制器时,所述业务模块请求控制器根据请求参数中的账号信息,查询到对应账户所支持的对象存储层实现。
5.根据权利要求4所述的多类型存储引擎对象存储系统,其特征在于,所述业务模块请求控制器根据请求参数中的账号信息查询到对应账户所支持的对象存储层实现,包括:所述业务模块请求控制器通过account.json查询对应账户支持的对象存储层;调用所述对象存储层实现对象存储。
6.根据权利要求1所述的多类型存储引擎对象存储系统,其特征在于,所述系统包括ServiceType组件和StorageService组件,所述ServiceType组件对应StorageService接口实现的类型,至少包括MINIO、AWS_S3、FTP、SFTP、HBASE、HDFS类型;所述StorageService组件至少包括putObject、getObject、deleteObject接口。
7.根据权利要求6所述的多类型存储引擎对象存储系统,其特征在于,所述业务模块所有对数据操作的请求经过所述业务模块请求控制器,所述业务模块请求控制器对putObject、getObject、deleteObject做定制控制。
8.根据权利要求1所述的多类型存储引擎对象存储系统,其特征在于,系统默认账号配置中的账号为业务模块使用的账号,所述业务模块账号和对象存储层账号隔离。
9.多类型存储引擎对象存储方法,其特征在于,所述方法包括:
引入AWSS3的用户且按照预设的规范实现对象数据的操作;
对AWS S3、FTP、SFTP、HBase、HDFS中的各个用户进行封装,并对外开放AWSS3标准协议服务,接收业务模块通过发送的请求;
将解析与封装后的请求数据转发到StorageService层,按照 AWS S3 协议规范响应StorageService层返回的数据解析,并返回至业务模块。
10.计算机可读介质,其特征在于,所述计算机可读介质存储有处理器可执行的程序,所述处理器可执行的程序被处理器执行时实现如权利要求9中所述的多类型存储引擎对象存储方法。
CN202210637812.1A 2022-06-08 2022-06-08 多类型存储引擎对象存储系统、方法和计算机可读介质 Pending CN114741441A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210637812.1A CN114741441A (zh) 2022-06-08 2022-06-08 多类型存储引擎对象存储系统、方法和计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210637812.1A CN114741441A (zh) 2022-06-08 2022-06-08 多类型存储引擎对象存储系统、方法和计算机可读介质

Publications (1)

Publication Number Publication Date
CN114741441A true CN114741441A (zh) 2022-07-12

Family

ID=82287667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210637812.1A Pending CN114741441A (zh) 2022-06-08 2022-06-08 多类型存储引擎对象存储系统、方法和计算机可读介质

Country Status (1)

Country Link
CN (1) CN114741441A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220100878A1 (en) * 2020-09-25 2022-03-31 EMC IP Holding Company LLC Facilitating an object protocol based access of data within a multiprotocol environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110297869A (zh) * 2019-05-30 2019-10-01 北京百度网讯科技有限公司 一种ai数据仓库平台及操作方法
CN112437078A (zh) * 2020-11-20 2021-03-02 腾讯科技(深圳)有限公司 文件存储方法、装置、设备及计算机可读存储介质
CN114357252A (zh) * 2021-12-17 2022-04-15 杭州涂鸦信息技术有限公司 跨源多域分布式数据的储存方法、系统及存储介质
CN114443677A (zh) * 2022-01-28 2022-05-06 苏州浪潮智能科技有限公司 对象存储服务系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110297869A (zh) * 2019-05-30 2019-10-01 北京百度网讯科技有限公司 一种ai数据仓库平台及操作方法
CN112437078A (zh) * 2020-11-20 2021-03-02 腾讯科技(深圳)有限公司 文件存储方法、装置、设备及计算机可读存储介质
CN114357252A (zh) * 2021-12-17 2022-04-15 杭州涂鸦信息技术有限公司 跨源多域分布式数据的储存方法、系统及存储介质
CN114443677A (zh) * 2022-01-28 2022-05-06 苏州浪潮智能科技有限公司 对象存储服务系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220100878A1 (en) * 2020-09-25 2022-03-31 EMC IP Holding Company LLC Facilitating an object protocol based access of data within a multiprotocol environment
US11928228B2 (en) * 2020-09-25 2024-03-12 EMC IP Holding Company LLC Facilitating an object protocol based access of data within a multiprotocol environment

Similar Documents

Publication Publication Date Title
US20200097489A1 (en) Different hierarchies of resource data objects for managing system resources
US10693708B2 (en) Defining configurable characteristics of a product and associating configuration with enterprise resources
US11675774B2 (en) Remote policy validation for managing distributed system resources
Ciurana Developing with google app engine
US9609023B2 (en) System and method for software defined deployment of security appliances using policy templates
US9420034B2 (en) Providing services to multiple tenants of an application
US10454786B2 (en) Multi-party updates to distributed systems
JP5265549B2 (ja) 連結ディスカバリ・ウェブ・サービス
US10545950B2 (en) Atomic application of multiple updates to a hierarchical data structure
US10397051B1 (en) Configuration and testing of network-based service platform resources using a service platform specific language
US11595299B2 (en) System and method of suppressing inbound payload to an integration flow of an orchestration based application integration
US9021478B1 (en) Provisioning virtual machines from template by splitting and building index for locating content portions via content-centric network
US9087322B1 (en) Adapting service provider products for multi-tenancy using tenant-specific service composition functions
US20200226615A1 (en) Customer service representative dashboard application
CN108089912A (zh) 一种虚拟机与容器超融合系统构建方法及装置
CN102523308B (zh) 一种应用开发方法和运行该方法所开发应用的平台系统
CN112398687A (zh) 云计算网络的配置方法、云计算网络系统以及存储介质
US10303669B1 (en) Simulating hierarchical structures in key value stores
US20160269446A1 (en) Template representation of security resources
CN114741441A (zh) 多类型存储引擎对象存储系统、方法和计算机可读介质
CN111328394A (zh) Web内容的本地安全渲染
CN108156009B (zh) 一种服务调用方法及装置
US20220357861A1 (en) Service management system for scaling services based on dependency information in a distributed database
CN114371882A (zh) 一种应用的统一配置管理方法、系统、装置及存储介质
EP3269097A1 (en) Architecture for large data management in communication applications through multiple mailboxes

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20220712

RJ01 Rejection of invention patent application after publication