CN110851407A - 一种数据分布式存储系统及方法 - Google Patents

一种数据分布式存储系统及方法 Download PDF

Info

Publication number
CN110851407A
CN110851407A CN201911116564.0A CN201911116564A CN110851407A CN 110851407 A CN110851407 A CN 110851407A CN 201911116564 A CN201911116564 A CN 201911116564A CN 110851407 A CN110851407 A CN 110851407A
Authority
CN
China
Prior art keywords
data
module
database
cache
file
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
CN201911116564.0A
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.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN201911116564.0A priority Critical patent/CN110851407A/zh
Publication of CN110851407A publication Critical patent/CN110851407A/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/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种数据分布式存储系统及方法,该方法包括以下步骤:对将要操作的数据进行数据预处理;对于结构化的数据,进行基于分布式数据库的存储;对于非结构化的数据,进行基于分布式文件系统的存储;访问数据时,首先遍历访问缓存中的数据,如可获得结果,即请求成功;如没有获得所需要的数据,则通过数据库模块或文件模块进行查询,并将结果存入缓存模块中。本发明有效提升了分布式存储架构的可用性,提升了数据层的稳定性,减少硬盘I/O读取速度,有效加快数据了数据响应速度,使应用系统更加可靠。

Description

一种数据分布式存储系统及方法
技术领域
本发明涉及一种数据分布式存储系统及方法,属于互联网应用技术领域。
背景技术
随着互联网技术的不断发展,“互联网+”的概念逐渐应用到我们生活中的各个领域。电商、医疗、农业、金融等领域渐渐采用互联网技术提供可靠、方便的服务。但是,在数据大规模增长的大数据时代,传统的单机数据库存储方式已满足不了数据处理的需求,因为单机数据库有着单机崩坏的风险以及容量的瓶颈,大大影响了系统的可用性。在这样的背景下,数据的分布式存储技术得到了广泛的应用。
随着系统业务的发展,数据量和访问量都在增长,传统的单机数据库存储方式已不再适合。引入分布式数据库,可以有效地支持大数据、高并发应用。分布式文件系统则可以解决例如文档、网络日志、图片、影像等小文件和大文件的存储问题,并在分布式文件系统中,采用分布式的元数据服务器,避免了主节点失效的问题。缓存技术的使用,可以有效减轻数据层的访问压力,大大加快访问请求的响应速度。在此基础上,设计了一种数据分布式存储的方案。
发明内容
本发明技术以及存在的缺陷,提出一种数据分布式存储系统及方法,能够在大规模数据量的情况下提供高可靠、高可用、高响应速率的存储方法。
一种数据分布式存储系统,包括服务端模块、数据库模块、文件模块和缓存模块;
服务处理模块解析客户端请求,对其数据访问请求按照实际的需要选择数据库、文件系统或者缓存来处理;
数据库模块持久存储业务相关的结构化数据,为缓存模块中的数据库缓存单元提供数据源;
文件模块持存储业务相关的非结构化数据,其中的元数据服务器为缓存模块中的元数据缓存单元提供数据源;
缓存模块采取键值形式的内存数据库作缓存,将数据按照key/value的形式存储、读取缓存数据;
服务处理模块与数据库模块、文件模块和缓存模块连接,数据库模块和文件模块再均与缓存模块连接;
结构化数据以数据库、文本为主,非结构化数据包括网络日志、音频、视频、图片等。
进一步地,服务处理模块包括:
写单元:将数据写入数据库模块或文件模块;
读单元:从数据库模块或文件模块读取数据;
数据预处理单元:区分结构化和非结构化数据,并提取相应的主键key。
进一步地,数据库模块以分布式数据库方式来存储数据。
进一步地,文件模块包括:
元数据单元:包含元数据服务器集群,以管理文件的元数据,元数据包括文件的名字空间信息、访问控制信息、文件和块的映射关系,采取分布式的方式,防止单机崩溃;
数据块单元:包含数据块服务器集群,用于对非结构化的数据进行存储。
进一步地,缓存模块包括:
数据库缓存单元:存储、读取数据库的缓存信息,管理缓存的添加和删除;
元数据缓存单元:存储、读取元数据服务器的缓存信息,管理缓存的添加和删除。
一种数据分布式存储方法,该方法包括以下步骤:
步骤1:对将要操作的数据进行数据预处理;
步骤2:对于结构化的数据,进行基于分布式数据库的存储;
步骤3:对于非结构化的数据,进行基于分布式文件系统的存储;
步骤4:访问数据时,首先遍历访问数据库缓存单元或元数据缓存单元的数据,若可获得结果,则请求成功,分别对数据库或是数据块服务器进行访问;
步骤5:若没有在缓存中获得所需要的数据,则通过数据库模块或文件模块进行查询,并将结果存入缓存模块中。
进一步地,步骤1中对数据的预处理包括对数据进行结构化和非结构化的区分,对结构化的数据提取其中某个字段的整数值作为主键key,此字段一般为数据的id,对非结构化的数据提取文件的名称空间信息生成主键key。
进一步地,步骤2中将结构化数据的主键key与分布式数据库节点个数m取模,获得将要存储的数据库节点id,进行存储;同时,若数据库缓存单元中存在key这条数据的记录,则将其删除。
进一步地,步骤3中对于非结构化的数据,对其名称空间信息生成整数型主键key,通过将key与元数据服务器节点个数m取模,定位到所需要的元数据服务器,在元数据服务器中查询其将要存储的数据服务器的地址,进行存储;同时,若元数据缓存单元中存在key这条数据的记录,则将其删除。
进一步地,步骤5中如果没有在缓存中查询到需要的数据记录,对于结构化的数据在数据库中查找,并将结果直接返回服务端同时在数据库缓存单元中保存,对于非结构化的数据,首先在元数据服务器中定位到文件对应的数据块服务器,然后到数据块服务器中查询结果直接返回到服务端,同时将元数据服务器中文件对应的数据块服务器记录保存至元数据缓存单元中。
本发明达到的有益效果为:本发明有效提升了分布式存储架构的可用性,提升了数据层的稳定性,减少硬盘I/O读取速度,有效加快数据了数据响应速度,使应用系统更加可靠。
附图说明
图1为本申请实施例提供的系统结构示意图。
图2为本申请实施例提供的数据写入流程示意图。
图3为本申请实施例提供的数据访问流程示意图。
具体实施方式
下面结合说明书附图对本发明的技术方案做进一步的详细说明。
一种数据分布式存储系统,包括服务端模块、数据库模块、文件模块和缓存模块。
服务处理模块解析客户端请求,对其数据访问请求按照实际的需要选择数据库、文件系统或者缓存来处理。
服务处理模块包括:
写单元:将数据写入数据库模块或文件模块。
读单元:从数据库模块或文件模块读取数据。
数据预处理单元:区分结构化和非结构化数据,并提取相应的主键key。
数据库模块持久存储业务相关的结构化数据,为缓存模块中的数据库缓存单元提供数据源。
数据库模块以分布式数据库方式来存储数据。
文件模块持存储业务相关的非结构化数据,其中的元数据服务器为缓存模块中的元数据缓存单元提供数据源。
文件模块包括:
元数据单元:包含元数据服务器集群,以管理文件的元数据,元数据包括文件的名字空间信息、访问控制信息、文件和块的映射关系,采取分布式的方式,防止单机崩溃。
数据块单元:包含数据块服务器集群,用于对非结构化的数据进行存储。
缓存模块采取键值形式的内存数据库作缓存,将数据按照key/value的形式存储、读取缓存数据。
缓存模块包括:
数据库缓存单元:存储、读取数据库的缓存信息,管理缓存的添加和删除。
元数据缓存单元:存储、读取元数据服务器的缓存信息,管理缓存的添加和删除。
服务处理模块与数据库模块、文件模块和缓存模块连接,数据库模块和文件模块再均与缓存模块连接;
结构化数据以数据库、文本为主,非结构化数据包括网络日志、音频、视频、图片等。
一种数据分布式存储方法,包括以下步骤:
步骤1:对将要操作的数据进行数据预处理。
步骤2:对于结构化的数据,进行基于分布式数据库的存储。
步骤3:对于非结构化的数据,进行基于分布式文件系统的存储。
步骤4:访问数据时,首先遍历访问数据库缓存单元或元数据缓存单元的数据,若可获得结果,则请求成功,分别对数据库或是数据块服务器进行访问。
步骤5:若没有在缓存中获得所需要的数据,则通过数据库模块或文件模块进行查询,并将结果存入缓存模块中。
步骤1中对数据的预处理包括对数据进行结构化和非结构化的区分,对结构化的数据提取其中某个字段的整数值作为主键key,此字段一般为数据的id,对非结构化的数据提取文件的名称空间信息生成主键key。
步骤2中将结构化数据的主键key与分布式数据库节点个数m取模,获得将要存储的数据库节点id,进行存储;同时,若数据库缓存单元中存在key这条数据的记录,则将其删除。
步骤3中对于非结构化的数据,对其名称空间信息生成整数型主键key,通过将key与元数据服务器节点个数m取模,定位到所需要的元数据服务器,在元数据服务器中查询其将要存储的数据服务器的地址,进行存储;同时,若元数据缓存单元中存在key这条数据的记录,则将其删除。
步骤5中如果没有在缓存中查询到需要的数据记录,对于结构化的数据在数据库中查找,并将结果直接返回服务端同时在数据库缓存单元中保存,对于非结构化的数据,首先在元数据服务器中定位到文件对应的数据块服务器,然后到数据块服务器中查询结果直接返回到服务端,同时将元数据服务器中文件对应的数据块服务器记录保存至元数据缓存单元中。
以上仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。

Claims (10)

1.一种数据分布式存储系统,其特征在于:包括服务端模块、数据库模块、文件模块和缓存模块;
服务处理模块解析客户端请求,对其数据访问请求按照实际的需要选择数据库、文件系统或者缓存来处理;
数据库模块持久存储业务相关的结构化数据,为缓存模块中的数据库缓存单元提供数据源;
文件模块持存储业务相关的非结构化数据,其中的元数据服务器为缓存模块中的元数据缓存单元提供数据源;
缓存模块采取键值形式的内存数据库作缓存,将数据按照key/value的形式存储、读取缓存数据;
所述服务处理模块与数据库模块、文件模块和缓存模块连接,所述数据库模块和文件模块再均与缓存模块连接;
所述结构化数据以数据库、文本为主,非结构化数据包括网络日志、音频、视频、图片等。
2.根据权利要求1所述的一种数据分布式存储系统,其特征在于:所述服务处理模块包括:
写单元:将数据写入数据库模块或文件模块;
读单元:从数据库模块或文件模块读取数据;
数据预处理单元:区分结构化和非结构化数据,并提取相应的主键key。
3.根据权利要求1所述的一种数据分布式存储系统,其特征在于:所述数据库模块以分布式数据库方式来存储数据。
4.根据权利要求1所述的一种数据分布式存储系统,其特征在于:所述文件模块包括:
元数据单元:包含元数据服务器集群,以管理文件的元数据,所述元数据包括文件的名字空间信息、访问控制信息、文件和块的映射关系,采取分布式的方式,防止单机崩溃;
数据块单元:包含数据块服务器集群,用于对非结构化的数据进行存储。
5.根据权利要求1所述的一种数据分布式存储系统,其特征在于:所述缓存模块包括:
数据库缓存单元:存储、读取数据库的缓存信息,管理缓存的添加和删除;
元数据缓存单元:存储、读取元数据服务器的缓存信息,管理缓存的添加和删除。
6.一种数据分布式存储方法,其特征在于:该方法包括以下步骤:
步骤1:对将要操作的数据进行数据预处理;
步骤2:对于结构化的数据,进行基于分布式数据库的存储;
步骤3:对于非结构化的数据,进行基于分布式文件系统的存储;
步骤4:访问数据时,首先遍历访问数据库缓存单元或元数据缓存单元的数据,若可获得结果,则请求成功,分别对数据库或是数据块服务器进行访问;
步骤5:若没有在缓存中获得所需要的数据,则通过数据库模块或文件模块进行查询,并将结果存入缓存模块中。
7.根据权利要求6所述的一种数据分布式存储方法,其特征在于:步骤1中对数据的预处理包括对数据进行结构化和非结构化的区分,对结构化的数据提取其中某个字段的整数值作为主键key,此字段一般为数据的id,对非结构化的数据提取文件的名称空间信息生成主键key。
8.根据权利要求6所述的一种数据分布式存储方法,其特征在于:步骤2中将结构化数据的主键key与分布式数据库节点个数m取模,获得将要存储的数据库节点id,进行存储;同时,若数据库缓存单元中存在key这条数据的记录,则将其删除。
9.根据权利要求6所述的一种数据分布式存储方法,其特征在于:步骤3中对于非结构化的数据,对其名称空间信息生成整数型主键key,通过将key与元数据服务器节点个数m取模,定位到所需要的元数据服务器,在元数据服务器中查询其将要存储的数据服务器的地址,进行存储;同时,若元数据缓存单元中存在key这条数据的记录,则将其删除。
10.根据权利要求6所述的一种数据分布式存储方法,其特征在于:步骤5中如果没有在缓存中查询到需要的数据记录,对于结构化的数据在数据库中查找,并将结果直接返回服务端同时在数据库缓存单元中保存,对于非结构化的数据,首先在元数据服务器中定位到文件对应的数据块服务器,然后到数据块服务器中查询结果直接返回到服务端,同时将元数据服务器中文件对应的数据块服务器记录保存至元数据缓存单元中。
CN201911116564.0A 2019-11-15 2019-11-15 一种数据分布式存储系统及方法 Pending CN110851407A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911116564.0A CN110851407A (zh) 2019-11-15 2019-11-15 一种数据分布式存储系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911116564.0A CN110851407A (zh) 2019-11-15 2019-11-15 一种数据分布式存储系统及方法

Publications (1)

Publication Number Publication Date
CN110851407A true CN110851407A (zh) 2020-02-28

Family

ID=69601523

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911116564.0A Pending CN110851407A (zh) 2019-11-15 2019-11-15 一种数据分布式存储系统及方法

Country Status (1)

Country Link
CN (1) CN110851407A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792111A (zh) * 2021-09-07 2021-12-14 曙光星云信息技术(北京)有限公司 一种基于分布式存储的非结构化数据管理系统及其方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116643A (zh) * 2013-02-25 2013-05-22 江苏物联网研究发展中心 基于Hadoop的智慧医疗数据管理方法
CN109033292A (zh) * 2018-07-13 2018-12-18 南京邮电大学 一种数据库分布式缓存系统及方法
US20190042638A1 (en) * 2017-08-01 2019-02-07 Salesforce.Com, Inc. High availability database through distributed store
CN109783438A (zh) * 2018-12-05 2019-05-21 南京华讯方舟通信设备有限公司 基于librados的分布式NFS系统及其构建方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116643A (zh) * 2013-02-25 2013-05-22 江苏物联网研究发展中心 基于Hadoop的智慧医疗数据管理方法
US20190042638A1 (en) * 2017-08-01 2019-02-07 Salesforce.Com, Inc. High availability database through distributed store
CN109033292A (zh) * 2018-07-13 2018-12-18 南京邮电大学 一种数据库分布式缓存系统及方法
CN109783438A (zh) * 2018-12-05 2019-05-21 南京华讯方舟通信设备有限公司 基于librados的分布式NFS系统及其构建方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792111A (zh) * 2021-09-07 2021-12-14 曙光星云信息技术(北京)有限公司 一种基于分布式存储的非结构化数据管理系统及其方法
CN113792111B (zh) * 2021-09-07 2023-10-13 中科星云物连科技(北京)有限公司 一种基于分布式存储的非结构化数据管理系统及其方法

Similar Documents

Publication Publication Date Title
US8843454B2 (en) Elimination of duplicate objects in storage clusters
CN109254733B (zh) 用于存储数据的方法、装置和系统
US10649827B2 (en) Two level addressing in storage clusters
CN110825748B (zh) 利用差异化索引机制的高性能和易扩展的键值存储方法
US8219562B1 (en) Efficient storage and retrieval for large number of data objects
US8015146B2 (en) Methods and systems for assisting information processing by using storage system
US6061678A (en) Approach for managing access to large objects in database systems using large object indexes
WO2015106711A1 (zh) 一种为半结构化数据构建NoSQL数据库索引的方法及装置
US20150347553A1 (en) Object Storage System with Local Transaction Logs, a Distributed Namespace, and Optimized Support for User Directories
US9996557B2 (en) Database storage system based on optical disk and method using the system
US9384201B2 (en) Method of managing data of file system using database management system
CN109033292A (zh) 一种数据库分布式缓存系统及方法
CN106909651A (zh) 一种基于hdfs小文件写入和读取的方法
CN108021717B (zh) 一种轻量级嵌入式文件系统的实现方法
JP5241298B2 (ja) 履歴上のファイル名およびロケーションをインデックス付きにすることによりファイル・サーチおよびファイル操作を支援するためのシステムおよび方法
CN103942301A (zh) 一种面向多数据类型访问应用的分布式文件系统
CN108280123B (zh) 一种HBase的列聚合方法
CN110851407A (zh) 一种数据分布式存储系统及方法
Cheng et al. Optimizing small file storage process of the HDFS which based on the indexing mechanism
KR100912129B1 (ko) 객체 파일 시스템을 이용한 비정형 데이터 관리 방법 및장치
KR100831550B1 (ko) 엑스엠엘 계층구조를 이용한 비디오 검색 시스템 및 그 방법
WO2024119797A1 (zh) 一种数据处理方法、系统、设备以及存储介质
US11687701B1 (en) System, method, and computer program for enabling text editing across multiple content blocks in a system
CN114328437B (zh) 一种历史数据快速删除方法、装置、设备及介质
WO2021189306A1 (en) Write operation in object storage system using enhanced meta structure

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: 20200228