CN110019105A - 一种可靠高效的分布式文件系统 - Google Patents
一种可靠高效的分布式文件系统 Download PDFInfo
- Publication number
- CN110019105A CN110019105A CN201910068998.1A CN201910068998A CN110019105A CN 110019105 A CN110019105 A CN 110019105A CN 201910068998 A CN201910068998 A CN 201910068998A CN 110019105 A CN110019105 A CN 110019105A
- Authority
- CN
- China
- Prior art keywords
- distributed file
- memory
- control module
- standby
- file system
- 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
- 238000000034 method Methods 0.000 claims abstract description 49
- 230000008569 process Effects 0.000 claims abstract description 38
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000012546 transfer Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000013500 data storage Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种可靠高效的分布式文件系统,属于数据存储技术领域,一种可靠高效的分布式文件系统,包括日志模块,系统控制模块和存储模块,所述日志模块包括日志记录,所述系统控制模块包括主控节点、备用节点和主备模式进程,所述主控节点与备用节点之间通过主备模式进程连接,所述存储模块包括磁盘和内存缓存层,所述日志记录分别与主控节点和备用节点连接,所述系统控制模块分别与内存缓存层和磁盘连接,所述系统控制模块还连接有多个存储节点,能够很好的处理单点失效问题,并能利用系统中的内存缓存层,极大的提升系统对于小文件的读取效率。
Description
技术领域
本发明涉及数据存储技术领域,更具体地说,涉及一种可靠高效的分布式文件系统。
背景技术
随着云计算及大数据技术的广泛应用,海量数据的存储即分布式文件系统也来也受到关注,其中存储系统的可靠性和文件读取的效率是研究的热点问题。
现有技术中《分布式文件系统和分布式文件系统的数据备份方法》于2016 年1月13日中国国家知识产权局申请专利并公开,公开号105242988B。该专利设计了具备异地备份功能的分布式文件系统,采用Syncserver实现异地数据同步,采用DNS智能解析实现用户数据切换。
本方案采用异地备份,仅仅实现了数据备份,试想如果连本地的分布式数据节点都宕机了,那么本地的主控点Master宕机的可能性就非常的大,这种情况下,异地的数据依然用不了。此方案,仅仅能够保障数据不丢失,不能保障服务的可持续性,因为它缺少主控的备份模块——备控Slave。
现有技术中申请号为2014102959855的《一种分布式文件系统》于 2014-6-27日向中国国家知识产权局申请专利,于2017年10月31日,获得授权。本发明提供了一种分布式文件系统。将大文件和小文件分开存储,大文件进行分块存储在大文件存储服务器上,小文件则存储在缓存服务器上,有效提高大小文件的读写效率。
本方案对访问量大的大文件进行缓存,实际上大文件已经分块处理且分布式存放,其访问效率已经很高;而通常情况下,小文件在整个系统文件中的占有比非常高,使用频率也比大文件高,因此必须对小文件进行高访问量的缓冲处理,但该方案没有提供。
分布式文件系统中,最有名的商业系统就是谷歌的GFS,其开源实现HDFS 更是得到了广泛的研究和应用。HDFS使用中也存在一些问题,譬如单Master 节点,所有文件的请求都经过它,即成为瓶颈,也导致了单点失效;另外, Namenode将文件系统的元数据存放到内存中,每个小文件都需要占据150字节左右的空间,大量小文件对内存消耗过大,现有硬件对数以亿计或更多的小文件处理则捉襟见肘。
发明内容
1.要解决的技术问题
针对现有技术中存在的问题,本发明的目的在于提供一种可靠高效的分布式文件系统,与现有技术相比,本发明提出的分布式文件系统方案,能够很好的处理单点失效问题,并能利用系统中的内存缓存层,极大的提升系统对于小文件的读取效率。
2.技术方案
为解决上述问题,本发明采用如下的技术方案。
一种可靠高效的分布式文件系统,包括日志模块,系统控制模块和存储模块,所述日志模块包括日志记录,所述系统控制模块包括主控节点、备用节点和主备模式进程,所述主控节点与备用节点之间通过主备模式进程连接,所述存储模块包括磁盘和内存缓存层,所述日志记录分别与主控节点和备用节点连接,所述系统控制模块分别与内存缓存层和磁盘连接,所述系统控制模块还连接有多个存储节点,本发明提出的分布式文件系统方案,能够很好的处理单点失效问题,并能利用系统中的内存缓存层,极大的提升系统对于小文件的读取效率。
进一步的,所述主备模式进程切换的判定条件是主控节点收到检测数据包后1s内是否有回应,1s内无回应则主备模式进程将主控节点切换成备用节点,将备用节点切换成主控节点。
进一步的,所述系统控制模块还包括数据传输模块,所述数据传输模块包括邮件发送程序和短信发送程序,系统控制模块通过邮件和短信通知用户主控节点宕机。
进一步的,所述主备模式连接有云记忆模块,所述云记忆模块包括云数据服务平台和云记忆方块。
进一步的,所述云记忆方块包括存储器进程、数据传输进程和计时进程。
进一步的,所述系统控制模块可包括多个备用节点,所述云记忆方块包括存储器进程、数据传输进程、计时进程和备用节点优选进程。
进一步的,所述云数据服务平台设有加密进程,加密进程能够增强云记忆方块使用过程中的安全性。
进一步的,所述内存缓存层内缓存的文件大小为0-150字节,将文件大小为0-150字节的小文件从磁盘中提取到内存缓存层,当用户再次访问的时候,可以直接从内存缓存层获取该文件,提升对小文件的访问效率。
进一步的,所述系统控制模块采用多进程模型实时监听用户请求。
进一步的,所述中间缓存层采用redis,redis支持将数据同步到多台从数据库上,这种特性对提高读取性能非常有益,将其作为中间缓存层随着云记忆模块的推广使用,可以通过现有技术将云存储和局域网存储在分布式文件系统上更进一步结合运用。
3.有益效果
相比于现有技术,本发明的优点在于:
(1)相比较现有技术出现的单点故障问题,新添加了备控模块。当主控节点宕机的时候,备用节点启用,同时通过日志模块恢复到主节点当前状态。
(2)相比较现有技术对于小文件的读取以及存储问题,添加了一层内存缓存层,对频繁读取的小文件进行必要的内存缓冲,减小了对于磁盘的负载压力,提高了整个系统对于文件的读取效率。
本发明提供了一种可靠高效的分布式文件系统,有效解决了单点故障问题,能够实现对于海量小文件的高效读取。
附图说明
图1为本发明的原理框图;
图2为本发明的云记忆模块原理框图;
图3为本发明的主备切换流程图;
图4为本发明小文件缓存流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述;显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”、“顶/底端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“套设/接”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
实施例1:
请参阅图1-2,一种可靠高效的分布式文件系统,包括日志模块,系统控制模块和存储模块,日志模块包括日志记录,系统控制模块包括主控节点、备用节点和主备模式进程,主控节点与备用节点之间通过主备模式进程连接,主备模式进程切换的判定条件是主控节点收到检测数据包后1s内是否有回应,存储模块包括磁盘和内存缓存层,日志记录分别与主控节点和备用节点连接,系统控制模块分别与内存缓存层和磁盘连接,系统控制模块还连接有多个存储节点,系统控制模块还包括数据传输模块,数据传输模块包括邮件发送程序和短信发送程序,主备模式连接有云记忆模块,云记忆模块包括云数据服务平台和云记忆方块,云记忆方块包括存储器进程、数据传输进程和计时进程。
系统控制模块可包括多个备用节点,云记忆方块包括存储器进程、数据传输进程、计时进程和备用节点优选进程。
请参阅图1,如图1所示的原理框图,结合现有技术作如下介绍:
第一阶段为文件存储阶段(包括两个步骤),该阶段完成了对于用户文件请求的处理。
第一步系统控制模块采用多进程模型实时监听用户请求,当有用户请求到来的时候,会获取用户需要处理的文件信息,包括文件大小,文件名等。系统控制模块,根据读写情况区别处理。当读取时,控制模块可以快速的判断该文件是处于内存缓存中,还是存在于磁盘上,然后将文件返回给用户进行处理;当写入时,则根据分块算法,调用存储模块以分布式方式写入各个存储服务器,并写入日志。
第二步当用户完成了对于文件的处理后,主控节点会修改该文件的访问频率参数并在向日志系统提交此次文件操作的日志记录信息。
第二阶段为主备切换阶段,图3是本发明提供的主备切换流程图,如图2 所示,该图示意了一种主备切换判断方法,该阶段提高了整个系统的高可用性,当主控节点正常工作时,备用节点处于待机状态,主控节点向日志模块实时提交文件信息;当主控节点宕机时,1s内主控节点没有回应,备用节点的备控模块就将被唤醒,并发出邮件和短信警示用户,同时根据日志模块中记录的日志记录,可以帮助备用节点恢复到当前状态,当主控节点宕机的同时,云记忆方块的数据传输进程将日志记录上传到云数据服务平台,云数据平台技术人员通过所有用户的云记忆方块数据对容易造成主控节点宕机的日志记录进行分析归类,然后传输到云记忆方块的存储器进程中。
如图3所示,系统控制模块在进行第二个流程框(后台进程向主控节点发送检测数据包)的同时,另外会实时进行本地日志记录与云记忆方块中日志记录匹配,当匹配到相同的日志记录时,主动唤醒备控模块,无需等待主控节点1s的回应,云记忆方块的计时进程根据实际需要设置定时从云数据服务平台更新日志记录,使主备切换更加高效。
系统控制模块包括多个备用节点时,同样云记忆方块可以通过备用节点优选进程从云数据服务平台下载技术人员根据日志记录实时更新的优选节点进行切换。
第三阶段为文件缓存阶段,图4是本发明小文件缓存流程图,如图4所示,该图示意了一种小文件缓存方法,该阶段是为了提升该分布式文件系统对于海量小文件的读取效率。当系统收到了用户的文件存储请求,首先将会对该文件的大小进行一级判断。一级判断会将文件的大小和系统默认设置的文件大小阈值进行比较,当判定为小文件时,则对该文件的状态位设置为1;然后对每个文件的访问频率进行实时的记录,将记录的频率数和设置的阈值进行比较,这是二级判断。当该文件通过了一级以及二级判断时,那么说明该文件是需要频繁访问的小文件,则将该文件从磁盘中提取到内存缓存层,当用户再次访问的时候,可以直接从内存缓存层获取该文件,提升对小文件的访问效率,中间缓存层采用redis,redis支持将数据同步到多台从数据库上,这种特性对提高读取性能非常有益。
以上所述,仅为本发明较佳的具体实施方式;但本发明的保护范围并不局限于此。任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其改进构思加以等同替换或改变,都应涵盖在本发明的保护范围内。
Claims (10)
1.一种分布式文件系统,其特征在于:包括日志模块,系统控制模块和存储模块,所述日志模块包括日志记录,所述系统控制模块包括主控节点、备用节点和主备模式进程,所述主控节点与备用节点之间通过主备模式进程连接,所述存储模块包括磁盘和内存缓存层,所述日志记录分别与主控节点和备用节点连接,所述系统控制模块分别与内存缓存层和磁盘连接,所述系统控制模块还连接有多个存储节点。
2.根据权利要求1所述的一种分布式文件系统,其特征在于:所述主备模式进程切换的判定条件是主控节点收到检测数据包后1s内是否有回应。
3.根据权利要求1所述的一种分布式文件系统,其特征在于:所述系统控制模块还包括数据传输模块,所述数据传输模块包括邮件发送程序和短信发送程序。
4.根据权利要求1所述的一种分布式文件系统,其特征在于:所述主备模式连接有云记忆模块,所述云记忆模块包括云数据服务平台和云记忆方块。
5.根据权利要求4所述的一种分布式文件系统,其特征在于:所述云记忆方块包括存储器进程、数据传输进程和计时进程。
6.根据权利要求1和4所述的一种分布式文件系统,其特征在于:所述系统控制模块可包括多个备用节点,所述云记忆方块包括存储器进程、数据传输进程、计时进程和备用节点优选进程。
7.根据权利要求1所述的一种分布式文件系统,其特征在于:所述云数据服务平台设有加密进程。
8.根据权利要求1所述的一种分布式文件系统,其特征在于:所述内存缓存层内缓存的文件大小为0-150字节。
9.根据权利要求1所述的一种分布式文件系统,其特征在于:所述系统控制模块采用多进程模型实时监听用户请求。
10.根据权利要求1所述的一种分布式文件系统,其特征在于:所述中间缓存层采用redis。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910068998.1A CN110019105A (zh) | 2019-01-24 | 2019-01-24 | 一种可靠高效的分布式文件系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910068998.1A CN110019105A (zh) | 2019-01-24 | 2019-01-24 | 一种可靠高效的分布式文件系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110019105A true CN110019105A (zh) | 2019-07-16 |
Family
ID=67188861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910068998.1A Pending CN110019105A (zh) | 2019-01-24 | 2019-01-24 | 一种可靠高效的分布式文件系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110019105A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111208946A (zh) * | 2020-01-06 | 2020-05-29 | 北京同有飞骥科技股份有限公司 | 支持kb级别小文件并发io的数据持久化方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051681A (zh) * | 2012-12-06 | 2013-04-17 | 华中科技大学 | 一种面向分布式文件系统的协作式日志系统 |
CN103546914A (zh) * | 2013-10-21 | 2014-01-29 | 大唐移动通信设备有限公司 | 一种hss主备管理的方法及装置 |
CN105335513A (zh) * | 2015-10-30 | 2016-02-17 | 迈普通信技术股份有限公司 | 一种分布式文件系统及文件存储方法 |
CN108108476A (zh) * | 2018-01-03 | 2018-06-01 | 中科边缘智慧信息科技(苏州)有限公司 | 高可靠分布式日志系统的工作方法 |
-
2019
- 2019-01-24 CN CN201910068998.1A patent/CN110019105A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051681A (zh) * | 2012-12-06 | 2013-04-17 | 华中科技大学 | 一种面向分布式文件系统的协作式日志系统 |
CN103546914A (zh) * | 2013-10-21 | 2014-01-29 | 大唐移动通信设备有限公司 | 一种hss主备管理的方法及装置 |
CN105335513A (zh) * | 2015-10-30 | 2016-02-17 | 迈普通信技术股份有限公司 | 一种分布式文件系统及文件存储方法 |
CN108108476A (zh) * | 2018-01-03 | 2018-06-01 | 中科边缘智慧信息科技(苏州)有限公司 | 高可靠分布式日志系统的工作方法 |
Non-Patent Citations (1)
Title |
---|
张馨月: ""智慧城市中数据服务平台的研究与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111208946A (zh) * | 2020-01-06 | 2020-05-29 | 北京同有飞骥科技股份有限公司 | 支持kb级别小文件并发io的数据持久化方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103116661B (zh) | 一种数据库的数据处理方法 | |
CN102521269B (zh) | 一种基于索引的计算机连续数据保护方法 | |
US9110909B2 (en) | File level hierarchical storage management system, method, and apparatus | |
CN104111804B (zh) | 一种分布式文件系统 | |
US8639956B2 (en) | Reducing energy consumption in a computing cluster | |
CN104202423B (zh) | 一种通过软件架构扩展缓存的系统 | |
US8627130B2 (en) | Power saving archive system | |
CN101398823B (zh) | 利用虚拟文件系统技术实现远程存储的方法及系统 | |
CN102033912A (zh) | 一种分布式数据库访问方法及系统 | |
US20120042130A1 (en) | Data Storage System | |
CN106156359A (zh) | 一种云计算平台下的数据同步更新方法 | |
CN103207841A (zh) | 基于键值对缓存的数据读写方法及装置 | |
CN104202424B (zh) | 一种使用软件架构扩展缓存的方法 | |
CN103488685B (zh) | 一种基于分布式存储系统的碎片文件存储方法 | |
CN109299056B (zh) | 一种基于分布式文件系统的数据同步方法和装置 | |
CN107800808A (zh) | 一种基于Hadoop架构的数据存储系统 | |
CN104735110A (zh) | 元数据管理方法和系统 | |
CN103581332A (zh) | HDFS架构及HDFS架构中NameNode节点的压力分解方法 | |
CN109005226A (zh) | 服务器中传感器数据的获取方法、获取系统和相关装置 | |
CN110807039A (zh) | 一种云计算环境下数据一致性维护系统及方法 | |
CN104281673A (zh) | 一种数据库的缓存构建系统及对应的构建方法 | |
CN105407044A (zh) | 一种基于nfs的云存储网关系统的实现方法 | |
CN103036952A (zh) | 一种企业级异构融合存储管理系统 | |
CN110019105A (zh) | 一种可靠高效的分布式文件系统 | |
CN103246716B (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: 20190716 |