CN112131202B - 一种分布式文件存储和读取方法、终端设备及存储介质 - Google Patents
一种分布式文件存储和读取方法、终端设备及存储介质 Download PDFInfo
- Publication number
- CN112131202B CN112131202B CN202011076812.6A CN202011076812A CN112131202B CN 112131202 B CN112131202 B CN 112131202B CN 202011076812 A CN202011076812 A CN 202011076812A CN 112131202 B CN112131202 B CN 112131202B
- Authority
- CN
- China
- Prior art keywords
- file
- stored
- storage
- unique
- data
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种分布式文件存储和读取方法、终端设备及存储介质,该方法中包括:根据文件待存储的服务器ID、文件存储请求信息中包含的日期、和随机编码生成固定长度的待存储文件的文件唯一标识;根据日期和随机编码在服务器ID对应的服务器内构建多层文件夹,并将待存储文件存储于最后一层文件夹内;将待存储文件的文件唯一标识返回给客户端存储;根据客户端发送的文件唯一标识提取文件存储的服务器ID和文件夹地址组成文件最终存储地址,根据文件最终存储地址提取文件,并发送至客户端。本发明用文件编码直接读写文件,读写的全程无任何数据库读写操作,减少了IO处理,提高了文件的写入效率和读写时的检索效率。
Description
技术领域
本发明涉及文件存储领域,尤其涉及一种分布式文件存储和读取方法、终端设备及存储介质。
背景技术
现有的文件存储方法大多是使用单文件夹或者单用户单文件夹的方式存储,造成单个文件夹内文件过多、占用内存空间过大,严重影响了文件读取的效率。
发明内容
为了解决上述问题,本发明提出了一种分布式文件存储和读取方法、终端设备及存储介质。
具体方案如下:
一种分布式文件存储和读取方法,包括以下步骤:
根据文件待存储的服务器ID、文件存储请求信息中包含的日期、和随机编码生成固定长度的待存储文件的文件唯一标识;
根据日期和随机编码在服务器ID对应的服务器内构建多层文件夹,并将待存储文件存储于最后一层文件夹内;
将待存储文件的文件唯一标识返回给客户端存储;
根据客户端发送的文件唯一标识提取文件存储的服务器ID和文件夹地址组成文件最终存储地址,根据文件最终存储地址提取文件,并发送至客户端。
进一步的,日期包含年数据、月数据和日数据,其中,将年数据、月数据和日数据经过处理后分别存储至文件唯一标识的不同位置。
进一步的,将年数据减去额定年份后进行62进制的编码,并将编码后的结果存入文件唯一标识的相邻的两位内。
进一步的,当编码后的结果为1位时,将该1位结果存入相邻的两位中的低位,高位补0。
进一步的,将月数据和日数据分别进行62进制的编码,并将月数据存入文件唯一标识的相邻的两位中的高位,将日数据存入文件唯一标识的相邻的两位中的低位。
进一步的,将文件待存储的服务器ID进行62进制的编码,并将结果存入文件唯一标识的相邻的两位内,如结果只有一位,则高位补0。
进一步的,多层文件夹的构建包括:创建第一级文件夹并设定名称为年数据,创建第二级文件夹并设定名称为月数据和日数据,创建第三级文件夹并设定名称为随机编码的第一位,创建第四级文件夹并设定名称为随机编码,将文件存储于第四级文件夹内。
进一步的,文件唯一标识还包括代表文件存储请求信息的类型的值。
一种分布式文件存储和读取终端设备,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例上述的方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例上述的方法的步骤。
本发明采用如上技术方案,实现了一种用文件编码直接读写文件的方法,读写的全程无任何数据库读写操作,减少了IO处理,仅用文件编码便可以快速准确地获取文件,提高了文件的写入效率和读写时的检索效率。
附图说明
图1所示为本发明实施例一方法的流程图。
具体实施方式
为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。
现结合附图和具体实施方式对本发明进一步说明。
实施例一:
本发明实施例提供了一种分布式文件存储和读取方法,如图1所示,包括文件存储和文件读取两个过程。
文件存储包括:
步骤1:根据文件待存储的服务器ID、文件存储请求信息中包含的日期、和随机编码生成固定长度的待存储文件的文件唯一标识。
该实施例中设定文件唯一标识包括39位,其中:
第一位为预留位,该实施例中第一位用于存储代表文件存储请求信息的类型的值,设定请求信息的类型如为HTTP类型则值为0,如为HTTPS类型则值为1。
第二位和第三位用于存储服务器ID,将服务器ID进行62进制的编码,并将结果存入文件唯一标识的相邻的两位内,如结果只有一位,则高位补0。
该实施例中设定日期包含年数据、月数据和日数据。
第四位和第五位用于存储年数据:将年数据减去额定年份后进行62进制的编码,并将编码后的结果存入文件唯一标识的第四位和第五位内。当编码后的结果为1位时,将该1位结果存入相邻的两位中的低位,高位补0。
该实施例中设定额定年份为2000。设定额定年份的用途是确保年数据减去额定年份后进行62进制编码的结果不超过两位。
第六位和第七位分别用于存储月数据和日数据,将月数据和日数据分别进行62进制的编码,并将月数据存入第六位,将日数据存入第七位。
最后32位用于存储生成的待存储文件对应的32位唯一编码。
上述文件唯一标识的设定方式仅为一种实施方式,在其他实施例中可以调整各参数存储位置和存储大小,还可以增加其他参数,在此不做限制。
本实施例设定的62进制编码方式为根据文件唯一标识的大小设定的优选编码方式,如采用其他编码方式,编码后的结果可能过长或过短。
步骤2:根据日期和随机编码在服务器ID对应的服务器内构建多层文件夹,并将待存储文件存储于最后一层文件夹内。
该实施例中多层文件夹的构建方式为:创建第一级文件夹并设定名称为四位的年数据,创建第二级文件夹并设定名称为月数据和日数据组成的四位数字,创建第三级文件夹并设定名称为随机编码的第一位,创建第四级文件夹并设定名称为随机编码,将文件存储于第四级文件夹内。
通过构建多层文件夹,可以提升文件查找的效率。
步骤3:将待存储文件的文件唯一标识返回给客户端存储。
文件读取包括:根据客户端发送的文件唯一标识提取文件存储的服务器ID和文件夹地址组成文件最终存储地址,根据文件最终存储地址提取文件,并发送至客户端。
该实施例中文件最终存储地址的组成方法包括以下步骤:
S201:通过62进制解码文件唯一标识的第二位和第三位,获取文件存储的服务器ID,进而获得服务器的地址。
S202:通过62进制解码文件唯一标识的第四位和第五位,并将结果加上额定年份后得到年数据,根据年数据获取文件存储的第一级文件夹的名称。
S203:通过62进制解码文件唯一标识的第六位和第七位,得到月数据和日数据,根据月数据和日数据获取文件存储的第二级文件夹的名称。
S204:根据文件唯一标识的后32位,获取第三级文件夹和第四级文件夹的名称。
S205:根据第一、二、三和四级文件夹的名称和服务器的地址组成文件最终存储地址。
本发明实施例一实现了一种用文件编码直接读写文件的方法,读写的全程无任何数据库读写操作,减少了IO处理,仅用文件编码便可以快速准确地获取文件,提高了文件的写入效率和读写时的检索效率。
实施例二:
本发明还提供一种分布式文件存储和读取终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例一的上述方法实施例中的步骤。
进一步地,作为一个可执行方案,所述分布式文件存储和读取终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述分布式文件存储和读取终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,上述分布式文件存储和读取终端设备的组成结构仅仅是分布式文件存储和读取终端设备的示例,并不构成对分布式文件存储和读取终端设备的限定,可以包括比上述更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述分布式文件存储和读取终端设备还可以包括输入输出设备、网络接入设备、总线等,本发明实施例对此不做限定。
进一步地,作为一个可执行方案,所称处理器可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述分布式文件存储和读取终端设备的控制中心,利用各种接口和线路连接整个分布式文件存储和读取终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述分布式文件存储和读取终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例上述方法的步骤。
所述分布式文件存储和读取终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)以及软件分发介质等。
尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。
Claims (8)
1.一种分布式文件存储和读取方法,其特征在于,包括以下步骤:
根据文件待存储的服务器ID、文件存储请求信息中包含的日期、和随机编码生成固定长度的待存储文件的文件唯一标识;日期包含年数据、月数据和日数据,其中,将年数据、月数据和日数据经过处理后分别存储至文件唯一标识的不同位置;
根据日期和随机编码在服务器ID对应的服务器内构建多层文件夹,并将待存储文件存储于最后一层文件夹内;多层文件夹的构建包括:创建第一级文件夹并设定名称为年数据,创建第二级文件夹并设定名称为月数据和日数据,创建第三级文件夹并设定名称为随机编码的第一位,创建第四级文件夹并设定名称为随机编码,将文件存储于第四级文件夹内;
将待存储文件的文件唯一标识返回给客户端存储;
根据客户端发送的文件唯一标识提取文件存储的服务器ID和文件夹地址组成文件最终存储地址,根据文件最终存储地址提取文件,并发送至客户端。
2.根据权利要求1所述的分布式文件存储和读取方法,其特征在于:将年数据减去额定年份后进行62进制的编码,并将编码后的结果存入文件唯一标识的相邻的两位内。
3.根据权利要求2所述的分布式文件存储和读取方法,其特征在于:当编码后的结果为1位时,将该1位结果存入相邻的两位中的低位,高位补0。
4.根据权利要求1所述的分布式文件存储和读取方法,其特征在于:将月数据和日数据分别进行62进制的编码,并将月数据存入文件唯一标识的相邻的两位中的高位,将日数据存入文件唯一标识的相邻的两位中的低位。
5.根据权利要求1所述的分布式文件存储和读取方法,其特征在于:将文件待存储的服务器ID进行62进制的编码,并将结果存入文件唯一标识的相邻的两位内,如结果只有一位,则高位补0。
6.根据权利要求1所述的分布式文件存储和读取方法,其特征在于:文件唯一标识还包括代表文件存储请求信息的类型的值。
7.一种分布式文件存储和读取终端设备,其特征在于:包括处理器、存储器以及存储在所述存储器中并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1~6中任一所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1~6中任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011076812.6A CN112131202B (zh) | 2020-10-10 | 2020-10-10 | 一种分布式文件存储和读取方法、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011076812.6A CN112131202B (zh) | 2020-10-10 | 2020-10-10 | 一种分布式文件存储和读取方法、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112131202A CN112131202A (zh) | 2020-12-25 |
CN112131202B true CN112131202B (zh) | 2022-08-16 |
Family
ID=73844124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011076812.6A Active CN112131202B (zh) | 2020-10-10 | 2020-10-10 | 一种分布式文件存储和读取方法、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131202B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220649A (zh) * | 2021-04-21 | 2021-08-06 | 浙江大华技术股份有限公司 | 文件存储、检索方法、装置、电子设备及存储介质 |
CN113220868B (zh) * | 2021-05-28 | 2024-08-13 | 国网绿色能源有限公司 | 一种文本数据过滤、获取方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005182108A (ja) * | 2003-12-16 | 2005-07-07 | Hitachi Ltd | 電子カルテ参照系システムにおける診療録情報漏洩防止ファイリングシステム及び電子カルテ参照方法 |
CN104202384A (zh) * | 2014-08-27 | 2014-12-10 | 四川长虹电器股份有限公司 | 一种分布式文件系统的文件上传及查找方法 |
CN105763604A (zh) * | 2016-02-04 | 2016-07-13 | 四川长虹电器股份有限公司 | 轻量级分布式文件系统及恢复下载文件原名的方法 |
CN109144968A (zh) * | 2018-08-15 | 2019-01-04 | 深圳市诺信连接科技有限责任公司 | 一种数据分布管理系统 |
CN109491967A (zh) * | 2018-11-02 | 2019-03-19 | 科大国创软件股份有限公司 | 一种基于uuid的分布式文件管理方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069009A (zh) * | 2015-07-06 | 2015-11-18 | 无锡天脉聚源传媒科技有限公司 | 一种上传、下载文件夹的方法及装置 |
CN109446491B (zh) * | 2018-09-26 | 2023-04-18 | 深圳竹云科技有限公司 | 一种紧凑且唯一的随机字符串的生成方法 |
-
2020
- 2020-10-10 CN CN202011076812.6A patent/CN112131202B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005182108A (ja) * | 2003-12-16 | 2005-07-07 | Hitachi Ltd | 電子カルテ参照系システムにおける診療録情報漏洩防止ファイリングシステム及び電子カルテ参照方法 |
CN104202384A (zh) * | 2014-08-27 | 2014-12-10 | 四川长虹电器股份有限公司 | 一种分布式文件系统的文件上传及查找方法 |
CN105763604A (zh) * | 2016-02-04 | 2016-07-13 | 四川长虹电器股份有限公司 | 轻量级分布式文件系统及恢复下载文件原名的方法 |
CN109144968A (zh) * | 2018-08-15 | 2019-01-04 | 深圳市诺信连接科技有限责任公司 | 一种数据分布管理系统 |
CN109491967A (zh) * | 2018-11-02 | 2019-03-19 | 科大国创软件股份有限公司 | 一种基于uuid的分布式文件管理方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112131202A (zh) | 2020-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112131202B (zh) | 一种分布式文件存储和读取方法、终端设备及存储介质 | |
CN103942292A (zh) | 虚拟机镜像文件处理方法、装置及系统 | |
CN113157655A (zh) | 一种数据压缩、解压方法、装置、电子设备和存储介质 | |
CN111984651A (zh) | 一种基于持久性内存的列式存储方法、装置及设备 | |
CN107577432A (zh) | 一种证券交易数据压缩方法及装置 | |
CN110377276B (zh) | 源代码文件管理方法及设备 | |
CN112506950A (zh) | 数据聚合处理方法、计算节点、计算集群及存储介质 | |
CN115114232A (zh) | 一种历史版本对象列举方法、装置及其介质 | |
CN113468118B (zh) | 一种基于区块链的文件增量存储方法、装置及存储介质 | |
CN107832341B (zh) | Agnss用户去重统计方法 | |
CN110647577A (zh) | 数据立方体的分区方法、装置、计算机设备及存储介质 | |
CN111159985B (zh) | 数据导出方法、装置、计算机设备和计算机可读存储介质 | |
CN106293542B (zh) | 一种文件解压缩的方法及装置 | |
CN115934730B (zh) | 数据处理方法和装置、介质和计算机设备 | |
CN111078753A (zh) | 基于HBase数据库的时序数据的存储方法及装置 | |
CN113590581B (zh) | 数据传输方法、装置、设备及存储介质 | |
CN114328283B (zh) | 计数地址获取方法、计数方法、装置、设备及存储介质 | |
CN112527745B (zh) | 嵌入式文件系统多分区解析方法、终端设备及存储介质 | |
CN112948376B (zh) | 一种ip地理位置信息查询方法、终端设备及存储介质 | |
CN112380174B (zh) | 含删除文件的xfs文件系统解析方法、终端设备及存储介质 | |
CN110134691B (zh) | 数据校验方法、装置、设备和介质 | |
CN108052566A (zh) | 城市元素信息处理方法、装置、服务器和存储介质 | |
CN116166221A (zh) | 随机码生成方法、装置、计算设备及存储介质 | |
CN117149713A (zh) | 编码数据处理方法、装置、设备及存储介质 | |
CN115935922A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A distributed file storage and reading method, terminal device and storage medium Effective date of registration: 20221213 Granted publication date: 20220816 Pledgee: Bank of China Limited Xiamen hi tech Park sub branch Pledgor: Xiamen Yuexin Information Technology Co.,Ltd. Registration number: Y2022980027437 |