CN109656897A - 基于redis的对象存储网关系统及数据调用方法 - Google Patents
基于redis的对象存储网关系统及数据调用方法 Download PDFInfo
- Publication number
- CN109656897A CN109656897A CN201811474919.9A CN201811474919A CN109656897A CN 109656897 A CN109656897 A CN 109656897A CN 201811474919 A CN201811474919 A CN 201811474919A CN 109656897 A CN109656897 A CN 109656897A
- Authority
- CN
- China
- Prior art keywords
- file
- module
- data
- redis
- metadata
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种基于redis的对象存储网关系统,包括POSIX接口模块,文件元数据模块、文件数据模块、对象存储接口模块;该方案在传统应用和对象存储之间建立一个网关系统,一端对接NFS/CIFS标准的NAS网络共享协议,一端对接标准的对象存储接口,通过POSIX接口模块、文件元数据模块、文件数据模块、对象存储接口模块,把传统应用的文件系统访问转换为对象存储访问,达到不需要修改传统应用底层接口即可访问对象存储的目的。
Description
技术领域
本发明涉及的是对象存储网关领域,尤其是一种基于redis的对象存储网关系统及数据调用方法。
背景技术
在现有技术中,公知的技术是对象存储是一种区别于文件系统层级结构的存储方式,对象存储中的每一个对象都在一个层级上,许多新兴存储都提供了对象存储的功能,以便于共享、迁移等操作。由于对象存储的操作接口是基于rest的接口操作,传统的应用无法直接对接系统使用,传统应用大多使用文件系统的接口,使用对象存储需要修改传统应用底层接口,这为使用者带来了不便,这是现有技术所存在的不足之处。
发明内容
本发明的目的就是针对现有技术所存在的不足,而提供一种基于redis的对象存储网关系统及数据调用方法,该方案在传统应用和对象存储之间建立一个网关系统,一端对接NFS/CIFS标准的NAS网络共享协议,一端对接标准的对象存储接口,通过POSIX接口模块、文件元数据模块、文件数据模块、对象存储接口模块,把传统应用的文件系统访问转换为对象存储访问,达到不需要修改传统应用底层接口即可访问对象存储的目的。
本方案是通过如下技术措施来实现的:一种基于redis的对象存储网关系统,包括POSIX接口模块,文件元数据模块、文件数据模块、对象存储接口模块;POSIX接口模块负责实现对接NFS/CIFS网路共享文件系统的文件操作标准接口,并把文件元数据信息传递给文件元数据模块,把文件数据传递给文件数据模块;文件元数据模块以文件路径+名称作为key把变化数据写入到redis数据库中,同时触发对象存储接口模块把元数据变化信息写入到对象存储中;文件数据模块通过文件路径+名称为key的方式从文件元数据模块获取条带大小,把数据切割成对应的条带大小,以文件路径+名称+条带序号为key写入到redis数据库,并且将该条带序号的文件数据写入到redis数据库;并通知文件元数据模块修改信息;对象存储接口模块用于接收文件元数据模块和文件数据模块的触发,修改或者读取对象存储中的元数据或数据,对象存储接口模块把redis中的key+value以对象存储的方式存储到对象存储中。在对文件进行处理时,文件元数据模块把文件路径+名称作为key,除了把文件大小、修改时间、扩展属性等属性作为value外,增加了一个条带大小。文件数据模块把文件数据按照文件元数据模块中的条带大小切割后,以文件路径+名称+条带序号为key,以该条带序号的文件数据为key。
redis数据库设置缓存大小,如果超过设定值,则删除最久未访问的文件数据。在于网关系统启动时,根据配置文件设定Redis数据库缓存大小,淘汰最久未访问的文件数据。
一种基于redis的对象存储数据调用方法,包括如下步骤:1) 调用标准NFS/CIFS协议进行存储访问,POSIX接口模块根据访问类型调用文件元数据模块或文件数据模块;2)如果是文件元数据modify操作,文件元数据模块以文件路径+名称作为key把变化数据写入到redis数据库中,同时触发对象存储接口模块把元数据变化信息写入到对象存储中,如果是文件元数据read操作,直接查找redis数据库,获取信息;3)如果是文件数据modify操作,文件数据模块通过文件路径+名称为key的方式从文件元数据模块获取条带大小,把数据切割成需要所对应的条带大小,以文件路径+名称+条带序号为key,写入redis数据库,同时通知文件元数据模块,进入步骤2),进行文件元数据modify操作;然后触发对象存储接口模块把文件数据变化信息写入到对象存储中,如果是数据read操作,文件数据模块调用对象存储接口模块直接读取数据。
文件元数据和文件数据对应的redis数据库中的两个表。文件元数据模块的数据需要持久化在本地,当POSIX接口有遍历查询当前文件时,文件元数据模块从本地持久化的数据中读取。
本方案的有益效果可根据对上述方案的叙述得知,由于在该方案中通过POSIX接口模块、文件元数据模块、文件数据模块、对象存储接口模块,把传统应用的文件系统访问转换为对象存储访问,达到不需要修改传统应该底层接口即可访问对象存储的目的,POSIX接口模块对接NFS/CIFS标准访问协议,文件元数据模块及文件数据模块通过redis数据库保存相关变换信息,对象存储接口模块把redis中的key+value以对象存储的方式存储到对象存储中。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
图1为本发明具体实施方式的结构示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过一个具体实施方式,并结合其附图,对本方案进行阐述。
通过附图可以看出,本方案的基于redis的对象存储网关系统,包括POSIX接口模块,文件元数据模块、文件数据模块、对象存储接口模块;POSIX接口模块负责实现对接NFS/CIFS网路共享文件系统的文件操作标准接口,并把文件元数据信息传递给文件元数据模块,把文件数据传递给文件数据模块;文件元数据模块以文件路径+名称作为key把变化数据写入到redis数据库中,同时触发对象存储接口模块把元数据变化信息写入到对象存储中;文件数据模块通过文件路径+名称为key的方式从文件元数据模块获取条带大小,把数据切割成对应的条带大小,以文件路径+名称+条带序号为key,以该条带序号的文件数据为key写入到redis数据库;并通知文件元数据模块修改信息;对象存储接口模块用于接收文件元数据模块和文件数据模块的触发,修改或者读取对象存储中的元数据或数据。文件元数据模块或文件数据模块把数据变化写入到redis数据库中,同时触发对象存储接口模块从redis中读取数据写入到对象存储中。
对象存储接口模块把redis中的key+value以对象存储的方式存储到对象存储中。文件元数据模块的key对应的value包括文件大小、修改时间、扩展属性和条带大小。redis数据库设置缓存大小,如果超过设定值,则删除最久未访问的文件数据。
一种利用上述系统进行对象存储数据调用的方法,包括如下步骤:1) 调用标准NFS/CIFS协议进行存储访问,POSIX接口模块根据访问类型调用文件元数据模块或文件数据模块;2)如果是文件元数据modify操作,文件元数据模块以文件路径+名称作为key把变化数据写入到redis数据库中,同时触发对象存储接口模块把元数据变化信息写入到对象存储中,如果是文件元数据read操作,直接查找redis数据库,获取信息;3)如果是文件数据modify操作,文件数据模块通过文件路径+名称为key的方式从文件元数据模块获取条带大小,把数据切割成需要所对应的条带大小,以文件路径+名称+条带序号为key,写入redis数据库,通知文件元数据模块,进入步骤2),进行文件元数据modify操作,然后触发对象存储接口模块把文件数据变化信息写入到对象存储中,如果是数据read操作,文件数据模块调用对象存储接口模块直接读取数据。
文件元数据和文件数据对应的redis数据库中的两个表。文件元数据模块的数据需要持久化在本地,当POSIX接口有遍历查询当前文件时,文件元数据模块从本地持久化的数据中读取。
本发明并不仅限于上述具体实施方式,本领域普通技术人员在本发明的实质范围内做出的变化、改型、添加或替换,也应属于本发明的保护范围。
Claims (8)
1.一种基于redis的对象存储网关系统,其特征是:包括POSIX接口模块,文件元数据模块、文件数据模块、对象存储接口模块;
POSIX接口模块负责实现对接NFS/CIFS网路共享文件系统的文件操作标准接口,并把文件元数据信息传递给文件元数据模块,把文件数据传递给文件数据模块;
文件元数据模块以文件路径+名称作为key把变化数据写入到redis数据库中,同时触发对象存储接口模块把元数据变化信息写入到对象存储中;
文件数据模块通过文件路径+名称为key的方式从文件元数据模块获取条带大小,把数据切割成对应的条带大小,以文件路径+名称+条带序号为key写入到redis数据库;并通知文件元数据模块修改信息;
对象存储接口模块用于接收文件元数据模块和文件数据模块的触发,修改或者读取对象存储中的元数据或数据。
2.根据权利要求1所述的基于redis的对象存储网关系统,其特征是:所述的文件元数据模块的key对应的value包括文件大小、修改时间、扩展属性和条带大小。
3.根据权利要求1或2所述的基于redis的对象存储网关系统,其特征是:redis数据库设置缓存大小,如果超过设定值,则删除最久未访问的文件数据。
4.根据权利要求1或2所述的基于redis的对象存储网关系统,其特征是:对象存储接口模块把redis中的key+value以对象存储的方式存储到对象存储中。
5.一种基于redis的对象存储数据调用方法,其特征是包括如下步骤:
1) 调用标准NFS/CIFS协议进行存储访问,POSIX接口模块根据访问类型调用文件元数据模块或文件数据模块;
2)如果是文件元数据modify操作,文件元数据模块以文件路径+名称作为key把变化数据写入到redis数据库中,同时触发对象存储接口模块把元数据变化信息写入到对象存储中,如果是文件元数据read操作,直接查找redis数据库,获取信息;
3)如果是文件数据modify操作,文件数据模块通过文件路径+名称为key的方式从文件元数据模块获取条带大小,把数据切割成需要所对应的条带大小,以文件路径+名称+条带序号为key,写入redis数据库,然后触发对象存储接口模块把文件数据变化信息写入到对象存储中,如果是数据read操作,文件数据模块调用对象存储接口模块直接读取数据。
6.根据权利要求5所述的基于redis的对象存储网关系统,其特征是:步骤3)中写入redis数据库时,同时通知文件元数据模块,进入步骤2),进行文件元数据modify操作。
7.根据权利要求5所述的基于redis的对象存储网关系统,其特征是:文件元数据和文件数据对应的redis数据库中的两个表。
8.根据权利要求5所述的基于redis的对象存储网关系统,其特征是:文件元数据模块的数据需要持久化在本地,当POSIX接口有遍历查询当前文件时,文件元数据模块从本地持久化的数据中读取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811474919.9A CN109656897A (zh) | 2018-12-04 | 2018-12-04 | 基于redis的对象存储网关系统及数据调用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811474919.9A CN109656897A (zh) | 2018-12-04 | 2018-12-04 | 基于redis的对象存储网关系统及数据调用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109656897A true CN109656897A (zh) | 2019-04-19 |
Family
ID=66112327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811474919.9A Pending CN109656897A (zh) | 2018-12-04 | 2018-12-04 | 基于redis的对象存储网关系统及数据调用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109656897A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110133687A (zh) * | 2019-06-13 | 2019-08-16 | 大连民族大学 | 一种新型班车定位的系统和方法 |
CN110290062A (zh) * | 2019-07-04 | 2019-09-27 | 西门子工厂自动化工程有限公司 | 一种网关及一种网关的数据处理方法 |
CN111339046A (zh) * | 2020-02-26 | 2020-06-26 | 中国工商银行股份有限公司 | 针对文件的数据写入、读取和删除方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9141814B1 (en) * | 2014-06-03 | 2015-09-22 | Zettaset, Inc. | Methods and computer systems with provisions for high availability of cryptographic keys |
CN106709048A (zh) * | 2017-01-05 | 2017-05-24 | 无锡江南计算技术研究所 | 一种面向高性能计算的分布式数据组织方法 |
CN107409126A (zh) * | 2015-02-24 | 2017-11-28 | 思科技术公司 | 用于保护企业计算环境安全的系统和方法 |
CN107766895A (zh) * | 2017-11-16 | 2018-03-06 | 苏州大学 | 一种诱导式非负投影半监督数据分类方法及系统 |
CN107967124A (zh) * | 2017-12-14 | 2018-04-27 | 南京云创大数据科技股份有限公司 | 一种分布式持久性内存存储系统及方法 |
-
2018
- 2018-12-04 CN CN201811474919.9A patent/CN109656897A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9141814B1 (en) * | 2014-06-03 | 2015-09-22 | Zettaset, Inc. | Methods and computer systems with provisions for high availability of cryptographic keys |
CN107409126A (zh) * | 2015-02-24 | 2017-11-28 | 思科技术公司 | 用于保护企业计算环境安全的系统和方法 |
CN106709048A (zh) * | 2017-01-05 | 2017-05-24 | 无锡江南计算技术研究所 | 一种面向高性能计算的分布式数据组织方法 |
CN107766895A (zh) * | 2017-11-16 | 2018-03-06 | 苏州大学 | 一种诱导式非负投影半监督数据分类方法及系统 |
CN107967124A (zh) * | 2017-12-14 | 2018-04-27 | 南京云创大数据科技股份有限公司 | 一种分布式持久性内存存储系统及方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110133687A (zh) * | 2019-06-13 | 2019-08-16 | 大连民族大学 | 一种新型班车定位的系统和方法 |
CN110290062A (zh) * | 2019-07-04 | 2019-09-27 | 西门子工厂自动化工程有限公司 | 一种网关及一种网关的数据处理方法 |
CN110290062B (zh) * | 2019-07-04 | 2021-12-28 | 西门子工厂自动化工程有限公司 | 一种网关及一种网关的数据处理方法 |
CN111339046A (zh) * | 2020-02-26 | 2020-06-26 | 中国工商银行股份有限公司 | 针对文件的数据写入、读取和删除方法及装置 |
CN111339046B (zh) * | 2020-02-26 | 2023-09-19 | 中国工商银行股份有限公司 | 针对文件的数据写入、读取和删除方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299102B (zh) | 一种基于Elastcisearch的HBase二级索引系统及方法 | |
EP3254210B1 (en) | Big data statistics at data-block level | |
TWI706259B (zh) | 資料的查詢方法及查詢裝置 | |
CN103473239B (zh) | 一种非关系型数据库数据更新方法和装置 | |
CN109656897A (zh) | 基于redis的对象存储网关系统及数据调用方法 | |
WO2018064962A1 (zh) | 数据存储方法、电子设备和计算机非易失性存储介质 | |
CN104424258B (zh) | 多维数据查询的方法、查询服务器、列存储服务器及系统 | |
CN108491549B (zh) | 一种分布式存储系统中文件目录的创建方法及装置 | |
CN111538724B (zh) | 管理索引的方法 | |
CN104252536A (zh) | 一种基于hbase的上网日志数据查询方法及装置 | |
CN103678491A (zh) | 一种基于Hadoop中小文件优化和倒排索引的方法 | |
CN103559217A (zh) | 一种面向异构数据库的海量组播数据入库实现方法 | |
CN104239377A (zh) | 跨平台的数据检索方法及装置 | |
CN104408111A (zh) | 一种删除重复数据的方法及装置 | |
CN103279502B (zh) | 一种具有与并行文件系统结合的重复数据删除文件系统的架构及方法 | |
US9405801B2 (en) | Processing a data stream | |
US20140244606A1 (en) | Method, apparatus and system for storing, reading the directory index | |
US11625412B2 (en) | Storing data items and identifying stored data items | |
US20180203874A1 (en) | Space-efficient secondary indexing on distributed data stores | |
CN105159616A (zh) | 一种磁盘空间管理方法及装置 | |
CN104281414A (zh) | 分布式文件系统及其小文件访问方法 | |
WO2020125630A1 (zh) | 文件读取 | |
CN103646051A (zh) | 一种基于列存储的大数据并行处理系统及方法 | |
CN102779138A (zh) | 实时数据的硬盘存取方法 | |
CN109063192A (zh) | 一种高性能海量文件存储系统工作方法 |
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: 20190419 |
|
RJ01 | Rejection of invention patent application after publication |