
技术摘要:
本申请实施例公开了一种分片路由方法、服务器及计算机存储介质,用于解决分片存储的数据达到极限而导致操作人员需要迁移数据的技术问题。本申请实施例方法包括:服务器将空闲分片确定为默认分片,并获取用户标识与分片标识的对应关系,当目标用户需要访问分片时,服务 全部
背景技术:
应用程序通过设置分片来管理和存储应用程序用户的数据,当用户需要请求数据 时,将用户的数据请求路由到指定的分片,从而用户可以对分片中的数据进行修改、查询、 获取数据以及执行其他操作。其中,一个用户的数据只能存储在一个分片中,不能存储在多 个分片;一个分片可以存储多个用户的数据。 由于分片的负载有限,一个分片只能存储一定数量的数据,当越来越多的用户将 数据存储在源分片时,该源分片的存储压力会越来越大,影响了源分片的执行性能。此时, 需要操作人员将该源分片的一部分用户的数据迁移到目标分片中,以此来分担源分片的存 储压力。 但是,如果有新的用户需要存储数据时,该新的用户的数据仍然会存储在源分片 中,随着新的用户不断增多,源分片存储的数据最终也会达到极限,从而又需要再一次迁移 数据,这无疑增加了操作人员的工作量。
技术实现要素:
本申请实施例提供了一种分片路由方法、服务器及计算机存储介质,用于解决分 片存储的数据达到极限而导致操作人员需要迁移数据的技术问题。 本申请实施例第一方面提供了一种分片路由方法,应用于服务器,所述方法包括: 将空闲分片确定为默认分片,所述空闲分片为包括有空闲存储空间的分片; 获取用户标识与分片标识的对应关系,其中一个所述用户标识对应一个所述分片 标识; 接收目标用户的访问请求,所述访问请求中携带有所述目标用户的用户标识; 判断所述对应关系中是否存在所述目标用户的用户标识对应的目标分片标识; 若存在,则将所述访问请求路由到所述目标分片标识对应的分片; 若不存在,则将所述访问请求路由到所述默认分片。 优选的,所述空闲分片的数量为多个,所述将空闲分片确定为默认分片,包括: 将多个所述空闲分片中空闲存储空间最大的空闲分片确定为所述默认分片。 优选的,所述将空闲分片确定为默认分片,包括: 新建分片,并将新建的分片确定为所述默认分片。 优选的,所述获取用户标识与分片标识的对应关系,包括: 建立包括有所述用户标识与所述分片标识的路由表,所述路由表用于表示用户的 访问请求所路由到的分片。 优选的,所述方法还包括: 4 CN 111600799 A 说 明 书 2/10 页 将所述路由表存储在数据库中; 所述判断所述对应关系中是否存在所述目标用户的用户标识对应的目标分片标 识,包括: 在所述数据库存储的所述路由表中查询所述目标用户的用户标识对应的目标分 片标识; 若存在所述目标分片标识,则将所述访问请求路由到所述目标分片标识对应的分 片; 若不存在所述目标分片标识,则将所述访问请求路由到所述默认分片。 优选的,所述方法还包括: 在缓存中备份所述路由表; 所述在所述数据库存储的所述路由表中查询所述目标用户的用户标识对应的目 标分片标识之前,所述方法还包括: 在所述缓存存储的所述路由表中查询所述目标用户的用户标识对应的目标分片 标识; 若存在所述目标分片标识,则将所述访问请求路由到所述目标分片标识对应的分 片; 若不存在所述目标分片标识,则执行所述在所述数据库存储的所述路由表中查询 所述目标用户的用户标识对应的目标分片标识的步骤。 优选的,若不存在所述目标分片标识,则所述将所述访问请求路由到所述默认分 片之后,所述方法还包括: 建立所述目标用户的用户标识与所述空闲分片的分片标识的目标对应关系,并将 所述目标对应关系写入所述数据库和/或所述缓存存储的路由表中。 优选的,所述空闲分片的数量为多个,所述将空闲分片确定为默认分片,包括: 将多个所述空闲分片中的目标空闲分片确定为所述默认分片; 所述方法还包括: 当所述目标空闲分片的空闲存储空间不足时,更改所述默认分片的配置,将多个 所述空闲分片中除了所述目标空闲分片以外的其他空闲分片确定为默认分片。 本申请实施例第二方面提供了一种服务器,所述服务器包括: 确定单元,用于将空闲分片确定为默认分片,所述空闲分片为包括有空闲存储空 间的分片; 获取单元,用于获取用户标识与分片标识的对应关系,其中一个所述用户标识对 应一个所述分片标识; 接收单元,用于接收目标用户的访问请求,所述访问请求中携带有所述目标用户 的用户标识; 判断单元,用于判断所述对应关系中是否存在所述目标用户的用户标识对应的目 标分片标识; 第一路由单元,用于当存在所述目标用户的用户标识对应的目标分片标识时,将 所述访问请求路由到所述目标分片标识对应的分片; 第二路由单元,用于当不存在所述目标用户的用户标识对应的目标分片标识时, 5 CN 111600799 A 说 明 书 3/10 页 将所述访问请求路由到所述默认分片。 优选的,所述空闲分片的数量为多个,所述确定单元具体用于将多个所述空闲分 片中空闲存储空间最大的空闲分片确定为所述默认分片。 优选的,所述确定单元具体用于新建分片,并将新建的分片确定为所述默认分片。 优选的,所述获取单元具体用于建立包括有所述用户标识与所述分片标识的路由 表,所述路由表用于表示用户的访问请求所路由到的分片。 优选的,所述服务器还包括: 存储单元,用于将所述路由表存储在数据库中; 所述判断单元具体用于在所述数据库存储的所述路由表中查询所述目标用户的 用户标识对应的目标分片标识,当存在所述目标分片标识时,将所述访问请求路由到所述 目标分片标识对应的分片;当不存在所述目标分片标识时,将所述访问请求路由到所述默 认分片。 优选的,所述服务器还包括: 备份单元,用于在缓存中备份所述路由表; 所述判断单元还用于在所述缓存存储的所述路由表中查询所述目标用户的用户 标识对应的目标分片标识,当存在所述目标分片标识时,则将所述访问请求路由到所述目 标分片标识对应的分片,当不存在所述目标分片标识时,则执行所述在所述数据库存储的 所述路由表中查询所述目标用户的用户标识对应的目标分片标识的步骤。 优选的,所述服务器还包括: 建立单元,用于建立所述目标用户的用户标识与所述空闲分片的分片标识的目标 对应关系,并将所述目标对应关系写入所述数据库和/或所述缓存存储的路由表中。 优选的,所述空闲分片的数量为多个,所述确定单元具体用于将多个所述空闲分 片中的目标空闲分片确定为所述默认分片; 所述确定单元还用于当所述目标空闲分片的空闲存储空间不足时,更改所述默认 分片的配置,将多个所述空闲分片中除了所述目标空闲分片以外的其他空闲分片确定为默 认分片。 本申请实施例第三方面提供了一种服务器,所述服务器包括: 处理器、存储器、输入输出设备; 所述处理器与所述存储器、输入输出设备相连; 所述处理器用于将空闲分片确定为默认分片,所述空闲分片为包括有空闲存储空 间的分片,获取用户标识与分片标识的对应关系,其中一个所述用户标识对应一个所述分 片标识; 所述输入输出设备用于接收目标用户的访问请求,所述访问请求中携带有所述目 标用户的用户标识; 所述处理器还用于判断所述对应关系中是否存在所述目标用户的用户标识对应 的目标分片标识,当存在所述目标用户的用户标识对应的目标分片标识时,将所述访问请 求路由到所述目标分片标识对应的分片,当不存在所述目标用户的用户标识对应的目标分 片标识时,将所述访问请求路由到所述默认分片。 本申请实施例第四方面提供了一种计算机存储介质,计算机存储介质中存储有指 6 CN 111600799 A 说 明 书 4/10 页 令,该指令在计算机上执行时,使得计算机执行前述第一方面的方法。 从以上技术方案可以看出,本申请实施例具有以下优点: 服务器将空闲分片确定为默认分片,并获取用户标识与分片标识的对应关系,当 目标用户需要访问分片时,服务器判断对应关系中是否存在目标用户的用户标识对应的目 标分片标识,若存在,则将访问请求路由到目标分片标识对应的分片,目标用户可以访问目 标分片标识对应的分片;若不存在,说明该目标用户为新用户,则服务器将访问请求路由到 默认分片,使目标用户访问该默认分片,由于该默认分片是包括有空闲存储空间的空闲分 片,所以新用户的数据不再存储于已没有空闲存储空间的分片,这样可以不用迁移已没有 空闲存储空间的分片中的数据,便能存储新用户的数据,减少了操作人员的工作量。 附图说明 图1为本申请实施例中分片路由方法一个流程示意图; 图2为本申请实施例中分片路由方法另一流程示意图; 图3为本申请实施例中服务器一个结构示意图; 图4为本申请实施例中服务器另一结构示意图; 图5为本申请实施例中服务器另一结构示意图。