一种网盘文件分表方法及装置与流程

文档序号:12666807阅读:215来源:国知局
一种网盘文件分表方法及装置与流程

本发明涉及云存储技术领域,更具体地说,涉及一种网盘文件分表方法及装置。



背景技术:

随着互联网技术的不断发展以及云计算的崛起,网络数据越来越丰富。私有云和公有云越来越得到普及,普通用户亦可以通过申请网盘账户将自己的文件上传到云端服务器,而企业更是可以借助云服务提供商搭建自己的私有云服务,云服务的一项重要功能便是提供云端存储,可将文件存放云端,其好处是可以自动同步,进行历史版本管理,文件永不丢失等。

越来越多的人申请云盘,并不断的上传文件,这就导致了用户量和数据量的增加,而随着用户量的不断增加,用户上传的文件也在不断的增加。一般的用户的文件信息会保存在一张数据库表中,该表的数据会不断的增长,当数据量过大的时候,对该表的操作效率会下降,影响到用户体验。

综上所述,现有技术中的数据库表存在由于数据量过大导致操作效率较低的问题。



技术实现要素:

本发明的目的是提供一种网盘文件分表方法及装置,以解决现有技术中的数据库表存在的由于数据量过大导致操作效率较低的问题。

为了实现上述目的,本发明提供如下技术方案:

一种网盘文件分表方法,包括:

当有新的网盘用户创建时,判断当前文件子表中包含的用户数量是否小于用户量阈值并判断当前文件子表中包含的记录条数是否小于条数阈值;

如果上述两项判断的判断结果均为是,则将所述新的网盘用户对应的数据作为记录存储至当前文件子表中,如果上述两项判断中任一项判断的判断结果为否,则创建新的文件子表并将所述新的网盘用户对应的数据作为记录存储至该新的文件子表中;

在预先设置的映射表中添加所述新的网盘用户的标识与存储所述新的网盘用户的文件子表的标识的对应关系。

优选的,还包括:

接收已经创建的网盘用户的数据记录请求,基于该网盘用户的标识确定出对应的文件子表的标识,并将所述数据记录请求对应的数据作为记录存储至查询出的文件子表的标识对应的文件子表中。

优选的,还包括:

每创建一个新的文件子表,则以递增的方式记录当前已经创建的文件子表的个数,并将该值作为子表名称后缀添加到当前创建的新的文件子表的子表名称后。

优选的,在预先设置的映射表中添加所述新的网盘用户的标识与存储所述新的网盘用户的文件子表的标识的对应关系,包括:

在预先设置的映射表中添加所述新的网盘用户的ID与存储所述新的网盘用户的文件子表的子表名称后缀的对应关系。

一种网盘文件分表装置,包括:

判断模块,用于当有新的网盘用户创建时,判断当前文件子表中包含的用户数量是否小于用户量阈值并判断当前文件子表中包含的记录条数是否小于条数阈值;

第一存储模块,用于如果上述两项判断的判断结果均为是,则将所述新的网盘用户对应的数据作为记录存储至当前文件子表中,如果上述两项判断中任一项判断的判断结果为否,则创建新的文件子表并将所述新的网盘用户对应的数据作为记录存储至该新的文件子表中;

映射模块,用于在预先设置的映射表中添加所述新的网盘用户的标识与存储所述新的网盘用户的文件子表的标识的对应关系。

优选的,还包括:

第二存储模块,用于接收已经创建的网盘用户的数据记录请求,基于该网盘用户的标识确定出对应的文件子表的标识,并将所述数据记录请求对应的数据作为记录存储至查询出的文件子表的标识对应的文件子表中。

优选的,还包括:

命名模块,用于每创建一个新的文件子表,则以递增的方式记录当前已经创建的文件子表的个数,并将该值作为子表名称后缀添加到当前创建的新的文件子表的子表名称后。

优选的,所述映射模块包括:

映射单元,用于在预先设置的映射表中添加所述新的网盘用户的ID与存储所述新的网盘用户的文件子表的子表名称后缀的对应关系。

本发明提供了一种网盘文件分表方法及装置,其中该方法包括:当有新的网盘用户创建时,判断当前文件子表中包含的用户数量是否小于用户量阈值并判断当前文件子表中包含的记录条数是否小于条数阈值;如果上述两项判断的判断结果均为是,则将所述新的网盘用户对应的数据作为记录存储至当前文件子表中,如果上述两项判断中任一项判断的判断结果为否,则创建新的文件子表并将所述新的网盘用户对应的数据作为记录存储至该新的文件子表中;在预先设置的映射表中添加所述新的网盘用户的标识与存储所述新的网盘用户的文件子表的标识的对应关系。本申请公开的技术方案中,在新的网盘用户创建时通过对当前文件子表的用户量及记录条数的判断确定是否需要创建新的文件子表,如果需要则创建新的文件子表并将新的网盘用户的数据存储至该文件子表中,否则则直接将新的网盘用户的数据存储至当前文件子表中,从而实现了分表过程,分表可以将较大数据量的表划分成多个文件子表,随着数据量的增加,对应的子表随之增加,并且通过上述判断实现了分表的阈值策略,从而避免了现有技术中由于数据表的数据量过大导致操作效率较低的问题,也即本申请公开的技术方案大大提高了操作效率,提升了用户体验。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种网盘文件分表方法的流程图;

图2为本发明实施例提供的一种网盘文件分表装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,其示出了本发明实施例提供的一种网盘文件分表方法的流程图,可以包括:

S11:当有新的网盘用户创建时,判断当前文件子表中包含的用户数量是否小于用户量阈值并判断当前文件子表中包含的记录条数是否小于条数阈值。

其中用户量阈值和条数阈值均可以根据实际需要进行设定。每当有新的网盘用户创建时,均需执行上述判断及后续步骤。

S12:如果上述两项判断的判断结果均为是,则将新的网盘用户对应的数据作为记录存储至当前文件子表中,如果上述两项判断中任一项判断的判断结果为否,则创建新的文件子表并将新的网盘用户对应的数据作为记录存储至该新的文件子表中。

如果用户数量小于用户量阈值且记录条数小于条数阈值,则说明对应文件子表中仍然可以添加用户及对应的数据,因此此时将新的网盘用户对应的数据作为记录存储至当前文件夹中,只要上述两项判断中有一项不符合,则说明当前文件子表中包含的数据量或者用户量已经达到上限,不可以增加用户,此时则创建新的文件子表,并将新的网盘用户对应数据作为记录存储至该新的文件子表中。具体来说,用户量阈值为整数值,可以用a表示,此时判断当前文件子表的用户数量是否小于用户量阈值也可以理解为将当前文件子表的用户数量做做取模运算,即当前文件子表的用户数量模以a的值等于0(也就是当前文件子表的用户数量除以a的余数为0)的时候表明需要创建新的文件子表。条数阈值为整数值,可以用b表示,当当前文件子表的记录条数大于或者等于b值时,创建新的文件子表。

S13:在预先设置的映射表中添加新的网盘用户的标识与存储新的网盘用户的文件子表的标识的对应关系。

映射表中存储有网盘用户标识与其对应文件子表标识的对应关系,由此当网盘用户需要查询其存储的数据时只需由映射表中确定出与其标识对应的文件子表,进而在该文件子表中进行查询即可。

本申请公开的技术方案中,在新的网盘用户创建时通过对当前文件子表的用户量及记录条数的判断确定是否需要创建新的文件子表,如果需要则创建新的文件子表并将新的网盘用户的数据存储至该文件子表中,否则则直接将新的网盘用户的数据存储至当前文件子表中,从而实现了分表过程,分表可以将较大数据量的表划分成多个文件子表,随着数据量的增加,对应的子表随之增加,并且通过上述判断实现了分表的阈值策略,从而避免了现有技术中由于数据表的数据量过大导致操作效率较低的问题,也即本申请公开的技术方案大大提高了操作效率,提升了用户体验。

本发明实施例提供的一种网盘文件分表方法,还可以包括:

接收已经创建的网盘用户的数据记录请求,基于该网盘用户的标识确定出对应的文件子表的标识,并将数据记录请求对应的数据作为记录存储至查询出的文件子表的标识对应的文件子表中。

后期如果有已经创建的网盘用户请求数据记录,则确定出该网盘用户对应的文件子表,并将其需记录的数据存储至对应文件子表中,由此,能够保证同一网盘用户的数据全部存储于同一文件子表中,避免了大量的跨表查询等操作,提高了数据库查询效率。另外一般条数阈值要设置的小于文件子表可以包含的总记录条数,从而能够文件子表中记录条数达到条数阈值之后还能够有已经创建的网盘用户在该文件子表中实现数据存储。

本发明实施例提供的一种网盘文件分表方法,还可以包括:

每创建一个新的文件子表,则以递增的方式记录当前已经创建的文件子表的个数,并将该值作为子表名称后缀添加到当前创建的新的文件子表的子表名称后。

具体来说,可以设置一个子表计数器,该子表计数器以递增的方式记录文件子表的个数,每次有新的文件子表创建时,该值递增1。对应的,每当有新的文件子表创建时,获取到已经创建的文件子表的个数,也即子表计数器的值,并将该值作为当前创建的文件子表的子表名称后缀,其中文件子表的子表名称是固定的,如简单来说文件子表的命名方式为:子表名称+名称后缀,如子表名称为tb_sub_file,当前文件子表的个数为3,那么新创建的文件子表名称为tb_sub_file3。这种文件子表的命名规则可以方便获取用户对应的文件子表。

本发明实施例提供的一种网盘文件分表方法,在预先设置的映射表中添加新的网盘用户的标识与存储新的网盘用户的文件子表的标识的对应关系,可以包括:

在预先设置的映射表中添加新的网盘用户的ID与存储新的网盘用户的文件子表的子表名称后缀的对应关系。

由此当网盘用户进行数据库操作时,可以根据网盘用户ID确定出对应的文件子表名称后缀,即对应文件子表的计数值,进而基于上述命名规则快速获取到该网盘用户对应的文件子表,对该文件子表进行数据库操作。

本发明实施例还提供了一种网盘文件分表装置,如图2所示,可以包括:

判断模块11,用于当有新的网盘用户创建时,判断当前文件子表中包含的用户数量是否小于用户量阈值并判断当前文件子表中包含的记录条数是否小于条数阈值;

第一存储模块12,用于如果上述两项判断的判断结果均为是,则将新的网盘用户对应的数据作为记录存储至当前文件子表中,如果上述两项判断中任一项判断的判断结果为否,则创建新的文件子表并将新的网盘用户对应的数据作为记录存储至该新的文件子表中;

映射模块13,用于在预先设置的映射表中添加新的网盘用户的标识与存储新的网盘用户的文件子表的标识的对应关系。

本发明实施例提供的一种网盘文件分表装置,还可以包括:

第二存储模块,用于接收已经创建的网盘用户的数据记录请求,基于该网盘用户的标识确定出对应的文件子表的标识,并将数据记录请求对应的数据作为记录存储至查询出的文件子表的标识对应的文件子表中。

本发明实施例提供的一种网盘文件分表装置,还可以包括:

命名模块,用于每创建一个新的文件子表,则以递增的方式记录当前已经创建的文件子表的个数,并将该值作为子表名称后缀添加到当前创建的新的文件子表的子表名称后。

本发明实施例提供的一种网盘文件分表装置,映射模块可以包括:

映射单元,用于在预先设置的映射表中添加新的网盘用户的ID与存储新的网盘用户的文件子表的子表名称后缀的对应关系。

本发明实施例提供的一种网盘文件分表装置中相关部分的说明请参见本发明实施例提供的一种网盘文件分表方法中对应部分的详细说明,在此不再赘述。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1