CN109597791A - 基于OpenStack平台的归档系统 - Google Patents

基于OpenStack平台的归档系统 Download PDF

Info

Publication number
CN109597791A
CN109597791A CN201811451139.2A CN201811451139A CN109597791A CN 109597791 A CN109597791 A CN 109597791A CN 201811451139 A CN201811451139 A CN 201811451139A CN 109597791 A CN109597791 A CN 109597791A
Authority
CN
China
Prior art keywords
file
task
filing
module
result
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
CN201811451139.2A
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.)
Hua Luguang Storage Research Institute (dalian) Ltd
China Hualu Group Co Ltd
Original Assignee
Hua Luguang Storage Research Institute (dalian) Ltd
China Hualu Group 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 Hua Luguang Storage Research Institute (dalian) Ltd, China Hualu Group Co Ltd filed Critical Hua Luguang Storage Research Institute (dalian) Ltd
Priority to CN201811451139.2A priority Critical patent/CN109597791A/zh
Publication of CN109597791A publication Critical patent/CN109597791A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于OpenStack平台的归档系统。该系统包括:客户端模块、数据库访问模块、权限管理模块、对象存储模块、管理界面模块。客户端根据客户在管理界面模块的界面设置的任务进行文件的归档,把文件实体内容上传到对象存储模块,并把归档的文件属性通过数据库访问模块上传到搜索引擎数据库中。用户通过浏览器可以登陆管理界面模块的界面,对归档的文件进行查询,也可以对归档的文件进行下载或者恢复。本发明实现了基于OpenStack平台的归档系统,可以对文件进行自动归档,实时的查询归档的文件,有选择的进行文件的恢复,是一种高效便捷的归档系统。

Description

基于OpenStack平台的归档系统
技术领域
本发明涉及数据管理技术领域,尤其涉及一种基于OpenStack平台的归档系统。
背景技术
OpenStack平台采用模块化的设计,模块直接采用了松耦合的设计方法,可以根据需求进行模块的组合,从而产生可用的软件。OpenStack的模块采用了RESTful API的方式提供了访问方法,为各模块的部署提供了方便。
OpenStack的组件可以实现简单的文件打包上传和文件恢复功能,不支持单个文件的操作,大大降低了恢复的效率。
发明内容
本发明提供一种基于OpenStack平台的归档系统,以克服上述问题。
本发明的基于OpenStack平台的文件管理系统,包括:
客户端、数据库访问模块、数据库、对象管理模块以及检索引擎;
所述客户端用于向所述数据库访问模块发送恢复/归档任务列表请求,将所述归档任务对应的文件上传至所述对象存储模块,并将所述归档任务的执行结果通过数据库访问模块上传至所述数据库中,接收所述对象管理模块发送的恢复/归档任务对应的文件;
所述数据库访问模块接收所述客户端发送的恢复/归档任务列表请求,所述恢复/归档任务列表包括:恢复/归档任务文件所在容器、所述恢复/归档任务文件大小、所述恢复/归档任务文件路径以及所述归档文件在压缩包中的开始位置,根据所述恢复/归档任务列表通过检索引擎访问数据库查询并获取所述恢复任务列表对应的恢复任务,并将所述恢复任务以及至执行结果按照周期时间返回至所述客户端,所述执行结果包括:恢复/归档任务名称、恢复/归档任务执行成功/失败,请求客户端以及任务执行时间;
所述对象管理模块用于存储归档任务对应的文件的实体数据。
进一步地,还包括:
权限管理模块和登录界面模块;
所述权限管理模块用于通过密钥对所述客户端进行登录管理。
进一步地,还包括:
文件查询单元,所述文件查询单元用于通过浏览器向数据库访问模块发送的查询请求,所述查询请求包括:客户端名称、查询文件名称、查询文件所在的容器、任务名、任务开始时间以及任务结束时间;
所述数据库访问模块用于在数据库中查询所述查询请求对应的文件,并将查询文件的结果至所述文件查询单元。
进一步地,还包括:
文件下载单元,所述文件下载单元用于调用对象存储模块;
所述对象存储模块根据文件在压缩包中的位置返回文件流,界面管理模块把文件流返回给浏览器,浏览器端进行文件下载。
进一步地,包括:
任务结果查询用于通过浏览器向界面管理模块发送任务结果查询请求,所述任务结果查询请求包括:主机名、任务名、任务类型、任务结果、任务开始时间以及任务结束时间;
所述界面管理模块用于根据所述任务结果查询请求调用数据库访问模块查询任务结果,数据库访问模块调用搜索引擎在数据库查询任务结果并将查询结果反馈给界面管理模块,界面管理模块根据查询结果数据组织任务结果画面发送给浏览器,浏览器渲染画面给用户。
本发明的文件属性可以保存到数据库中,方便用户查询文件属于的归档批次,并且提供了单文件恢复/归档功能,在浏览器端就可以下载用户想要的文件。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明基于OpenStack平台的归档系统结构示意图;
图2为本发明客户端模块通过数据库访问模块把文件属性和任务结果保存到数据库的流程图;
图3本发明界面管理模块文件查询界面的流程图;
图4本发明界面管理模块文件下载流程图;
图5本发明界面管理模块任务设置画面设置单批次恢复任务流程图;
图6本发明界面管理模块任务结果画面查询流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明基于OpenStack平台的归档系统结构示意图,如图1所示,本实施例的系统可以包括:
客户端101、数据库访问模块102、数据库103、对象管理模块104以及检索引擎105;
所述客户端用于向所述数据库访问模块发送恢复/归档任务列表请求,将所述归档任务对应的文件上传至所述对象存储模块,并将所述归档任务的执行结果通过数据库访问模块上传至所述数据库中,接收所述对象管理模块发送的恢复/归档任务对应的文件;
所述数据库访问模块接收所述客户端发送的恢复/归档任务列表请求,所述恢复/归档任务列表包括:恢复/归档任务文件所在容器、所述恢复/归档任务文件大小、所述恢复/归档任务文件路径以及所述归档文件在压缩包中的开始位置,根据所述恢复/归档任务列表通过检索引擎访问数据库查询并获取所述恢复任务列表对应的恢复任务,并将所述恢复任务以及至执行结果按照周期时间返回至所述客户端,所述执行结果包括:恢复/归档任务名称、恢复/归档任务执行成功/失败,请求客户端以及任务执行时间;
所述对象管理模块用于存储归档任务对应的文件的实体数据。
具体而言,文件属性保存到数据库的流程如图2所示的步骤③和步骤④,步骤③客户端的功能函数upload_database()通过调用系统模块os的walk()函数遍历文件,通过数据访问模块的RESTfull API(POST/v1/files/)把每个文件的属性发送给数据库访问模块;步骤④保存文件属性通过调用ElasticSearch的库函数index(index=’freezer’,doc_type=’files’)和indices.refresh(index=’freezer’)把文件属性保存到数据库中。
任务结果保存到数据库的流程如图2所示的步骤⑤和步骤⑥,客户端模块运行任务的结果通过管道反馈给周期管理模块,周期管理模块通过调用数据库访问模块的RESTful API(POST/v1/backups/)把任务的执行结果发送给数据库访问模块;步骤⑥保存任务结果通过调用ElasticSearch的库函数index(index=’freezer’,doc_type=’backups’)和indices.refresh(index=’freezer’)把任务执行结果保存到数据库中。
单批次恢复任务的流程如图5所示,步骤①用户在恢复任务设置画面,选择本批次恢复,浏览器把任务信息发送给界面管理模块,步骤②界面管理模块调用数据库访问模块的RESTful API(POST/v1/jobs/)把任务信息发送给数据库访问模块模块,步骤③数据库访问模块通过ElasticSearch的库函数index(index=’freezer’,doc_type=’jobs’)和indices.refresh(index=’freezer’)把任务信息保存到数据库中,步骤④周期管理模块通过数据库访问模块的RESTful API(GET/v1/jobs/)请求获得任务列表,步骤⑤数据库访问模块通过调用ElasticSearch的库函数search(index=’freezer’,doc_type=’jobs’)查询所有归档任务,步骤⑥ElasticSearch返回查询结果,步骤⑦数据库访问模块把查询结果返回给客户端模块,步骤⑧客户端模块根据用户设定的要恢复的批次的时间,通过比较对象管理模块中的文件列表,获取满足条件的文件,步骤⑨对象管理模块返回文件。
进一步地,还包括:
权限管理模块和登录界面模块;
所述权限管理模块用于通过密钥对所述客户端进行登录管理。
具体而言,本实例权限管理模块和登录界面模块是基于keystone实现的权限管理和用户登录功能。
进一步地,还包括:
文件查询单元,所述文件查询单元用于通过浏览器向数据库访问模块发送的查询请求,所述查询请求包括:客户端名称、查询文件名称、查询文件所在的容器、任务名、任务开始时间以及任务结束时间;
所述数据库访问模块用于在数据库中查询所述查询请求对应的文件,并将查询文件的结果至所述文件查询单元。
具体而言,本实施例文件查询的流程如图3所示,步骤①用户在浏览器的文件查询页面输入文件查询的条件(包括:客户端、容器、任务名、文件名、任务开始时间、任务结束时间),按下检索按钮后,调用界面管理模块的RESTful API(GET file/searchFiles/),步骤②界面管理模块调用数据库访问模块的RESTful API(GET/v1/files/_search),步骤③数据库访问模块通过ElasticSearch的库函数search(index=’freezer’,doc_type=’files’),步骤④数据库访问模块获得检索结果,步骤⑤数据库访问模块把结果反馈给界面管理模块,界面管理模块根据检索结果组织文件查询结果画面,步骤⑥浏览器把查询结果画面呈现给用户。
进一步地,还包括:
文件下载单元,所述文件下载单元用于调用对象存储模块;
所述对象存储模块根据文件在压缩包中的位置返回文件流,界面管理模块把文件流返回给浏览器,浏览器端进行文件下载。
具体而言,本实施例文件下载的流程如图4所示,步骤①用户在文件查询画面选择一个文件进行下载,调用界面管理模块的RESTful API(swift/(?P<start_block>[^/]+)/(?P<block_length>[^/]+)/(?P<real_file_name>[^/]+)/containers/(?P<container>[^/]+)/object/(?P<object_name>.+)),步骤②界面管理模块调用对象管理模块的库函数swift_get_object(),步骤③对象管理模块返回文件流,步骤④界面管理模块把文件流返回给浏览器,浏览器端进行文件下载。
进一步地,包括:
任务结果查询用于通过浏览器向界面管理模块发送任务结果查询请求,所述任务结果查询请求包括:主机名、任务名、任务类型、任务结果、任务开始时间以及任务结束时间;
所述界面管理模块用于根据所述任务结果查询请求调用数据库访问模块查询任务结果,数据库访问模块调用搜索引擎在数据库查询任务结果并将查询结果反馈给界面管理模块,界面管理模块根据查询结果数据组织任务结果画面发送给浏览器,浏览器渲染画面给用户。
具体而言,现有技术中的系统在任务上传失败后,系统并不能把结果反馈给用户,用户对任务的执行结果不可获知。本实施例任务结果查询的流程如图6所示,步骤①用户在任务结果画面选择查询条件(包括:主机名、任务名、任务类型、任务结果、任务开始时间、任务结束时间),通过浏览器调用界面管理模块的RESTful API(GET history/SearchHistoriesData/),步骤②界面管理模块调用数据库访问模块的RESTful API(GET/v1/histories)查询任务结果,步骤③数据库访问模块调用ElasticSearch的库函数search(index=’freezer’,doc_type=’histories’)查询任务结果,步骤④ElasticSearch返回查询结果,步骤⑤数据库访问模块把查询结果反馈给界面管理模块,步骤⑥界面管理模块根据查询结果数据组织任务结果画面发送给浏览器,浏览器渲染画面给用户。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (5)

1.一种基于OpenStack平台的文件管理系统,其特征在于,包括:
客户端、数据库访问模块、数据库、对象管理模块以及检索引擎;
所述客户端用于向所述数据库访问模块发送恢复/归档任务列表请求,将所述归档任务对应的文件上传至所述对象存储模块,并将所述归档任务的执行结果通过数据库访问模块上传至所述数据库中,接收所述对象管理模块发送的恢复/归档任务对应的文件;
所述数据库访问模块接收所述客户端发送的恢复/归档任务列表请求,所述恢复/归档任务列表包括:恢复/归档任务文件所在容器、所述恢复/归档任务文件大小、所述恢复/归档任务文件路径以及所述归档文件在压缩包中的开始位置,根据所述恢复/归档任务列表通过检索引擎访问数据库查询并获取所述恢复任务列表对应的恢复任务,并将所述恢复任务以及至执行结果按照周期时间返回至所述客户端,所述执行结果包括:恢复/归档任务名称、恢复/归档任务执行成功/失败,请求客户端以及任务执行时间;
所述对象管理模块用于存储归档任务对应的文件的实体数据。
2.根据权利要求1所述的归档系统,其特征在于,还包括:
权限管理模块和登录界面模块;
所述权限管理模块用于通过密钥对所述客户端进行登录管理。
3.根据权利要求1所述的归档系统,其特征在于,还包括:
文件查询单元,所述文件查询单元用于通过浏览器向数据库访问模块发送的查询请求,所述查询请求包括:客户端名称、查询文件名称、查询文件所在的容器、任务名、任务开始时间以及任务结束时间;
所述数据库访问模块用于在数据库中查询所述查询请求对应的文件,并将查询文件的结果至所述文件查询单元。
4.根据权利要求1所述的归档系统,其特征在于,还包括:
文件下载单元,所述文件下载单元用于调用对象存储模块;
所述对象存储模块根据文件在压缩包中的位置返回文件流,界面管理模块把文件流返回给浏览器,浏览器端进行文件下载。
5.根据权利要求1所述的归档系统,其特征在于,包括:
任务结果查询用于通过浏览器向界面管理模块发送任务结果查询请求,所述任务结果查询请求包括:主机名、任务名、任务类型、任务结果、任务开始时间以及任务结束时间;
所述界面管理模块用于根据所述任务结果查询请求调用数据库访问模块查询任务结果,数据库访问模块调用搜索引擎在数据库查询任务结果并将查询结果反馈给界面管理模块,界面管理模块根据查询结果数据组织任务结果画面发送给浏览器,浏览器渲染画面给用户。
CN201811451139.2A 2018-11-30 2018-11-30 基于OpenStack平台的归档系统 Pending CN109597791A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811451139.2A CN109597791A (zh) 2018-11-30 2018-11-30 基于OpenStack平台的归档系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811451139.2A CN109597791A (zh) 2018-11-30 2018-11-30 基于OpenStack平台的归档系统

Publications (1)

Publication Number Publication Date
CN109597791A true CN109597791A (zh) 2019-04-09

Family

ID=65959195

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811451139.2A Pending CN109597791A (zh) 2018-11-30 2018-11-30 基于OpenStack平台的归档系统

Country Status (1)

Country Link
CN (1) CN109597791A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112559249A (zh) * 2020-12-23 2021-03-26 华录光存储研究院(大连)有限公司 一种文件恢复方法、装置及文件存储集群
CN113176851A (zh) * 2021-04-08 2021-07-27 华录光存储研究院(大连)有限公司 一种基于蓝光的数字信号存储系统及其存储方法
CN113452730A (zh) * 2020-03-25 2021-09-28 阿里巴巴集团控股有限公司 对象读取管理方法、装置、电子设备及计算机存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1489737A (zh) * 2000-12-22 2004-04-14 ��������ķ������ 虚拟磁带存储系统和方法
CN103226502A (zh) * 2013-05-21 2013-07-31 中国工商银行股份有限公司 一种数据灾备控制系统及数据恢复方法
CN104915376A (zh) * 2015-05-05 2015-09-16 华南理工大学 一种云存储中文件的归档压缩方法
CN105279045A (zh) * 2015-10-28 2016-01-27 浪潮(北京)电子信息产业有限公司 一种数据库的数据恢复方法及系统
CN105320769A (zh) * 2015-10-28 2016-02-10 浪潮(北京)电子信息产业有限公司 一种Oracle数据库的数据同步方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1489737A (zh) * 2000-12-22 2004-04-14 ��������ķ������ 虚拟磁带存储系统和方法
CN103226502A (zh) * 2013-05-21 2013-07-31 中国工商银行股份有限公司 一种数据灾备控制系统及数据恢复方法
CN104915376A (zh) * 2015-05-05 2015-09-16 华南理工大学 一种云存储中文件的归档压缩方法
CN105279045A (zh) * 2015-10-28 2016-01-27 浪潮(北京)电子信息产业有限公司 一种数据库的数据恢复方法及系统
CN105320769A (zh) * 2015-10-28 2016-02-10 浪潮(北京)电子信息产业有限公司 一种Oracle数据库的数据同步方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈潇潇 等: "《云计算与数据的应用》", 31 October 2018 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113452730A (zh) * 2020-03-25 2021-09-28 阿里巴巴集团控股有限公司 对象读取管理方法、装置、电子设备及计算机存储介质
CN113452730B (zh) * 2020-03-25 2022-04-29 阿里巴巴集团控股有限公司 对象读取管理方法、装置、电子设备及计算机存储介质
CN112559249A (zh) * 2020-12-23 2021-03-26 华录光存储研究院(大连)有限公司 一种文件恢复方法、装置及文件存储集群
CN113176851A (zh) * 2021-04-08 2021-07-27 华录光存储研究院(大连)有限公司 一种基于蓝光的数字信号存储系统及其存储方法
CN113176851B (zh) * 2021-04-08 2024-04-02 华录光存储研究院(大连)有限公司 一种基于蓝光的数字信号存储系统及其存储方法

Similar Documents

Publication Publication Date Title
US11650959B2 (en) System and method for policy based synchronization of remote and local file systems
US8560569B2 (en) Method and apparatus for performing bulk file system attribute retrieval
US20240020038A1 (en) Distributed Storage Method and Device
US7606871B2 (en) System and method for virtualizing network storages into a single file system view
US11586374B2 (en) Index lifecycle management
US8417746B1 (en) File system management with enhanced searchability
CN109739815B (zh) 文件处理方法、系统、装置、设备及存储介质
CN109597791A (zh) 基于OpenStack平台的归档系统
CN107689976B (zh) 一种文件传输方法及装置
CN102999400A (zh) 一种云存储系统数据备份方法及装置
US20200356445A1 (en) Efficient backup, search and restore
CN107229649B (zh) 数据更新系统及方法
CN103916479A (zh) 一种基于工作组文件的云同步局域网加速系统
CN105824723A (zh) 一种对公有云存储账户的数据进行备份的方法及系统
CN105930233B (zh) 对指定公有云账户的数据进行分别自动备份的方法及系统
CN105956491B (zh) 对公有云存储系统的数据进行多账号备份的方法及系统
US20220335011A1 (en) System and Method for Eliminating Full Rescan Synchronizations on Service Restarts
CN110888840A (zh) 分布式文件系统中的文件查询方法、装置、设备及介质
CN112464049B (zh) 号码详单下载方法、装置和设备
CN114153797A (zh) 一种基于Ceph分布式对象存储检索方法及装置
JP5898026B2 (ja) 分散検索システムにおけるストレージ容量平準化方法
CN114911580B (zh) 镜像状态处理方法、装置与计算设备
US10354062B2 (en) System and method for simultaneous forensic, acquisition, examination and analysis of a computer readable medium at wire speed
CN113542822B (zh) 影像文件传输方法及装置
CN108520016A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190409