CN114385596A - 数据处理方法及装置 - Google Patents
数据处理方法及装置 Download PDFInfo
- Publication number
- CN114385596A CN114385596A CN202210043208.6A CN202210043208A CN114385596A CN 114385596 A CN114385596 A CN 114385596A CN 202210043208 A CN202210043208 A CN 202210043208A CN 114385596 A CN114385596 A CN 114385596A
- Authority
- CN
- China
- Prior art keywords
- storage node
- target
- identification information
- user
- determining
- 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
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/278—Data partitioning, e.g. horizontal or vertical partitioning
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- General Business, Economics & Management (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供数据处理方法及装置,其中所述数据处理方法包括:接收目标用户的访问请求,根据访问请求确定目标用户的标识信息;根据标识信息确定标识信息对应的目标存储节点;若在目标存储节点中未查询到标识信息对应的用户数据,则确定标识信息对应的初始存储节点,其中,初始存储节点存储有目标用户的用户数据;将用户数据从初始存储节点迁移至目标存储节点。通过根据目标用户的访问请求,确定目标用户的用户数据的存储位置,并判断用户数据是否在目标存储节点中,若不在,则将用户数据迁移至目标存储节点中,使得经常访问的用户的用户数据都能够存储在配置较高的目标存储节点中,提高数据库资源利用率,提高用户的使用体验。
Description
技术领域
本申请涉及数据库技术领域,特别涉及数据处理方法。本申请同时涉及数据处理装置,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着计算机网络的发展,游戏行业也得到了快速发展。目前,在一款游戏中,随着用户量的增长,该游戏数据库中的数据也随之增长。但是随着游戏发行时间推移以及玩家用户的流失,部分用户不再玩这款游戏,部分玩家还在玩这款游戏,导致该游戏数据库中出现冷数据以及热数据,增加了游戏数据库的负担,造成了资源浪费以及增加了公司数据库成本。因此,如何提升数据库利用率是目前亟需解决的问题。
发明内容
有鉴于此,本申请实施例提供了数据处理方法。本申请同时涉及数据处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的数据冗余造成资源浪费增加数据库成本的问题。
根据本申请实施例的第一方面,提供了一种数据处理方法,包括:
接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;
根据所述标识信息确定所述标识信息对应的目标存储节点;
若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;
将所述用户数据从所述初始存储节点迁移至所述目标存储节点。
根据本申请实施例的第二方面,提供了一种数据处理装置,包括:
接收模块,被配置为接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;
第一确定模块,被配置为根据所述标识信息确定所述标识信息对应的目标存储节点;
第二确定模块,被配置为若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;
迁移模块,被配置为将所述用户数据从所述初始存储节点迁移至所述目标存储节点。
根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述计算机指令时实现所述数据处理方法的步骤。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现所述数据处理方法的步骤。
本申请提供的数据处理方法,包括:接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;根据所述标识信息确定所述标识信息对应的目标存储节点;若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;将所述用户数据从所述初始存储节点迁移至所述目标存储节点。
本申请一实施例实现了通过根据目标用户的访问请求,确定目标用户的用户数据的存储位置,并判断用户数据是否在目标存储节点中,若不在,则将用户数据迁移至目标存储节点中,使得经常访问的用户的用户数据都能够存储在配置较高的目标存储节点中,提高数据库资源利用率,提高用户的使用体验。
附图说明
图1是本申请一实施例提供的一种数据处理方法的流程图;
图2是本申请一实施例提供的一种存储节点哈希环的示意图;
图3是本申请一实施例提供的一种应用于游戏数据库的数据处理方法的处理流程图;
图4是本申请一实施例提供的一种数据处理装置的结构示意图;
图5是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
哈希算法:(Hash),一种散列算法,是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是哈希值。这种转换是一种压缩映射,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
数据库:用于存放数据,数据库的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则后续在数据库中查找数据时的效率会很低。
当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。
随着游戏行业的快速发展,游戏用户的数据也在不断增长,导致游戏数据库中的数据与日俱增。通常一个游戏数据库承载的用户量是有限的,随着游戏用户的增加,需要不断地创建新的游戏数据库在存储游戏用户的用户数据。随着时间推移,一款游戏的游戏玩家中,可能有部分玩家已经不玩该款游戏,因此,在此游戏的游戏数据库中,这些玩家的用户数据也不再被访问调用,这些用户数据可以被称为冷数据;相对地,可能有部分玩家还在玩该款游戏,这些玩家的用户数据一直在被访问调用,这些用户数据可以被称为热数据。这样导致了一个游戏数据库中既存储有热数据也存储有冷数据,使得游戏数据库需要有较高的配置为热数据提供服务,但是冷数据也无法删除,即造成了资源浪费增加了游戏公司的数据库成本。
基于此,在本申请中提供了数据处理方法,用于解决上述一个数据库中既存储有热数据又存储有冷数据,导致资源利用率低、数据库成本高的问题。本申请同时涉及数据处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例提供的一种数据处理方法的流程图,具体包括以下步骤:
步骤102:接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息。
其中,目标用户可以理解为发出访问请求的用户,该目标用户发出的访问请求可以理解为目标用户通过互联网访问数据库的请求。例如,以目标用户为游戏玩家A为例,游戏玩家A开始玩游戏a,则游戏a的数据库会接收到游戏玩家A发出的访问请求。以目标用户为聊天用户A为例,聊天用户A开始使用聊天工具a,则聊天工具a的数据库会接收到聊天用户A发出的访问请求。访问请求中可以携带有用户的标识信息、用户的操作信息等。
标识信息可以理解为用户的唯一标识,一个用户对应一个标识信息,根据标识信息可以在数据库中确定用户数据的存储位置。
在实际应用中,用户通过互联网做的任何事情都会在网络上留下痕迹,这些痕迹会以数据的形式存储在数据库中。也有部分业务需要专门设置服务器,用来存储用户的用户数据。例如,游戏业务的游戏数据库用来存储玩家数据;聊天业务的聊天数据库用来存储玩家的聊天记录。在实际使用时,数据库可以部署在本地服务器上,数据库中存储有大量的用户数据;数据库也可以部署在云服务器上,为用户提供访问路径,实际的用户数据则存储在本地服务器中。例如,游戏数据库只存储有每个用户的用户数据的存放地址,当用户有访问需求时,直接调用存放地址,使用户访问本地服务器中的用户数据。
在本申请一具体实施例中,接收目标用户A的访问请求,根据访问请求确定目标用户A的标识信息。
具体地,根据所述访问请求确定所述目标用户的标识信息,包括:
根据所述访问请求确定所述目标用户的属性信息;
根据所述属性信息确定所述目标用户的标识信息。
其中,目标用户的属性信息可以理解为用户的登录账号、用户的唯一ID、用户的IP地址等,根据属性信息可以确定出用户的唯一标识信息。
在实际应用中,属性信息可以有很多种类型,例如,以游戏用户为例,用户的属性信息可以是用户的游戏账号、用户的唯一游戏名字、用户的登录IP地址等;可以根据一条属性信息确定出用户的标识信息,也可以根据多条属性信息确定出用户的标识信息。由于用户的属性信息均是唯一的,因此根据属性信息确定出的用户的标识信息也是唯一的。
在本申请一具体实施例中,沿用上例,根据目标用户A的访问请求,确定目标用户A的属性信息为:账号:123、唯一ID:A123、IP地址:114.255.93.90。则根据其中的“账号:123”确定出目标用户A的标识信息。
在本申请另一具体实施例中,沿用上例,根据目标用户A的访问请求,确定目标用户A的属性信息为:账号:123、唯一ID:A123、IP地址:114.255.93.90,则可以根据“账号:123、唯一ID:A123、IP地址:114.255.93.90”,确定出目标用户A的标识信息。
在实际应用中,可以通过哈希算法对属性信息进行压缩处理,处理结果即为标识信息。
具体地,根据所述属性信息确定所述目标用户的标识信息,包括:
压缩所述属性信息获得所述目标用户的标识哈希值。
其中,标识哈希值可以理解为对属性信息进行加密压缩后的值,标识哈希值即为目标用户的标识信息。
在实际应用中,标识哈希值可以由不同哈希算法压缩计算获得。例如,通过MD5哈希算法计算,或者通过SHA256哈希算法计算,通过不同哈希算法计算出的标识哈希值不同,具体实施时,可根据实际情况选择相应的哈希算法,本申请在此不作具体限制。
在本申请一具体实施例中,沿用上例,根据目标用户A的属性信息“账号:123”,压缩获取目标用户的标识哈希值“1800002”。
在本申请另一具体实施例中,沿用上例,根据目标用户A的属性信息“账号:123、唯一ID:A123、IP地址:114.255.93.90”,压缩获取目标用户的标识哈希值“2100002”。
步骤104:根据所述标识信息确定所述标识信息对应的目标存储节点。
其中,目标存储节点可以理解为存储活跃用户的用户数据的节点,目标存储节点中存储的均为活跃用户的用户数据,即存储的是热数据。
在实际应用中,由于接收到目标用户的访问请求,认定目标用户为活跃用户,则需要将目标用户的用户数据存储至对应的目标存储节点中。每个存储节点中存储有部分区间段哈希值的用户数据,例如,存储节点1(数据库1)中存储有0-1000000区间段内的标识哈希值对应的用户,存储节点2(数据库2)中存储有1000001-2000000区间段内的标识哈希值对应的用户,每个数据库具体所存的区间段可根据实际情况选择,本申请在此不作具体限制。
由于需要将存储节点中的热数据从现有的存储节点迁移至目标存储节点中,则需要先确定目标用户的标识信息对应的目标存储节点。因此,现有的存储有用户数据的存储节点集群都会对应一个目标存储节点,并且在存储节点集群中的每个现有存储节点对应的目标存储节点,可能是同一个存储节点也可能是不同的存储节点。例如,现有的存储节点集群中有以下3个现有存储节点:数据库1、数据库2、数据库3,数据库1和数据库2对应的目标存储节点为数据库10,则当数据库1和2中的用户数据需要迁移时,确定数据库10为目标存储节点,将用户数据迁移至数据库10中;数据库3对应的目标存储节点为数据库20,则当数据库3中的用户数据需要迁移时,确定数据库20为目标存储节点,将用户数据迁移至数据库20中。
在本申请一具体实施例中,沿用上例,根据目标用户的标识哈希值“1800002”,确定出目标存储节点2。
在本申请另一具体实施例中,沿用上例,根据目标用户的标识哈希值“2100002”,确定出目标存储节点3。
可选地,根据所述标识信息确定所述标识信息对应的目标存储节点之前,还包括:
创建存储节点,将所述存储节点的节点属性信息设置为第一类型。
其中,创建存储节点可以理解为新建的存储数据的节点,该存储节点被用于存储用户数据。存储节点的节点属性信息可以理解为该节点的基本信息,例如,节点属性信息可以是该节点的内存容量、存储的标识信息区间段、节点类型等信息。第一类型可以理解为存储热数据类型,当存储节点的节点类型为第一类型时,则该存储节点存储的均为热数据。
在实际应用中,若是第一次进行数据迁移,则存储节点集群中没有专门用来存储热数据的目标存储节点,为了将活跃用户的热数据从现有存储节点集群中迁移至目标存储节点,在根据标识信息确定标识信息对应的目标存储节点之前,需要先创建一个目标存储节点。
在本申请一具体实施例中,沿用上例,根据目标用户A的标识哈希值确定目标存储节点之前,先创建一个存储节点,将这个存储的节点属性信息中的节点类型设置为第一类型,将该存储节点设置为存储热数据的目标存储节点。
在创建完目标存储节点之后,则可以根据标识信息确定出标识信息对应的的目标存储节点。
具体地,根据所述标识信息确定所述标识信息对应的目标存储节点,包括:
根据所述标识信息确定所述标识信息在存储节点哈希环上的映射位置;
根据所述映射位置在所述存储节点哈希环上确定目标存储节点。
其中,存储节点哈希环可以理解为现有的存储用户数据的存储节点集群是数据库环结构,如图2所示,图2示出了本申请一实施例中存储节点哈希环的示意图。图中,数据库1、2、3、4、5、6分别在存储节点哈希环上的不同位置,每个位置以哈希值区间段区分,例如,数据库1存储最大值为:Hash 0;数据库2存储最大值为:Hash 1000000;数据库3存储最大值为:Hash 2000000,通过如此可以定义一个环形结构,每个存储节点(数据库)都存储一部分号段的哈希值,例如,数据库2存储哈希值为0至1000000的数据。
标识信息在存储节点哈希环上的映射位置可以理解为根据标识哈希值在存储节点哈希环上可以确定的位置,根据该映射位置可以确定出该标识信息对应的用户数据的存储位置,或者在存储节点哈希环上进行遍历查询现有的存储节点中是否存有用户数据。
在实际应用中,存储节点哈希环上的存储节点的数量可根据实际需求增加或删减,当需要增加时,可以在现有存储节点哈希环上创建一个存储节点,为其配置相应的节点属性信息即可。当需要删减时,可以将需要删减的存储节点中的数据都进行迁移,然后对其进行删减处理。
在本申请一具体实施例中,沿用上例,根据目标用户A的标识哈希值“1800002”确定出该标识哈希值在存储节点哈希环上的映射位置,根据该映射位置在存储节点哈希环上顺时针寻找距离映射位置最近的目标存储节点,确定目标存储节点为目标存储节点10。
在实际应用中,在对用户数据迁移之前,需要确定当前用户数据是否为迁移过的用户数据,则需要先确定当前标识信息对应的目标存储节点。
具体地,根据所述映射位置在所述存储节点哈希环上确定目标存储节点,包括:
根据所述映射位置在所述存储节点哈希环上确定待验证存储节点;
获取所述待验证存储节点的节点属性信息;
根据所述节点属性信息确定所述待验证存储节点是否为目标存储节点;
若是,则将所述待验证存储节点作为目标存储节点;
若否,则继续执行根据所述映射位置在所述存储节点哈希环上确定待验证存储节点的步骤。
其中,待验证存储节点可以理解为遍历到的存储节点,在确定出映射位置后,可根据该映射位置在存储节点哈希环上进行顺时针遍历,每到达一个存储节点的位置,则将该存储节点作为待验证存储节点,验证该存储节点是否为目标存储节点,即验证该存储节点是否为存储热数据的存储节点。
在实际应用中,由于目标存储节点的创建时间不同,因此在迁移过程中,现有的存储节点中的热数据可能迁移至不同的目标存储节点中。因此,可以选择通过遍历现有的存储节点,根据存储节点的查询其中是否存有标识信息对应的用户数据,从而确定目标存储节点。例如,遍历到存储节点1(数据库1),则将存储节点1作为待验证存储节点,验证待验证存储节点的节点属性信息,判断待验证存储节点是否为目标存储节点。
在本申请一具体实施例中,沿用上例,根据映射位置在存储节点哈希环上确定存储节点3为待验证存储节点,获取存储节点3的节点属性信息,根据存储节点3的节点属性确定存储节点3为目标存储节点。
在本申请另一具体实施例中,沿用上例,根据映射位置在存储节点哈希环上确定存储节点3为待验证存储节点,获取存储节点3的节点属性信息,根据存储节点3的节点属性信息确定存储节点3不是目标存储节点,则继续顺时针选择存储节点4为待验证存储节点,获取存储节点4的节点属性信息,根据存储节点4的节点属性信息确定存储节点4是目标存储节点。
具体地,根据所述节点属性信息确定所述待验证存储节点是否为目标存储节点,包括:
在所述节点属性信息为第一类型的情况下,所述待验证存储节点是目标存储节点;
在所述节点属性信息为第二类型的情况下,所述待验证存储节点不是目标存储节点。
其中,第一类型可以理解为预先设置的节点类型,具体地,在本申请实施例中,第一类型指的是存储热数据的节点类型;相应地,第二类型指的是存储冷数据的节点类型,可以根据存储节点的节点类型确定出该存储节点存储的是何种用户数据。
在实际应用中,第一类型和第二类型的实际意义可根据预先设置更改,第一类型也可以设置为存储冷数据的节点类型,第二类型也可以设置为存储热数据的节点类型。
在本申请一具体实施例中,沿用上例,确定待验证存储节点为存储节点3之后,获取存储节点3的节点属性信息,存储节点3的节点属性信息为hot,则存储节点3为存储热数据的存储节点,即存储节点3是目标存储节点。
在本申请另一具体实施例中,沿用上例,确定待验证存储节点为存储节点3之后,获取存储节点3的节点属性信息,存储节点3的节点属性信息为cold,则存储节点3为存储冷数据的存储节点,即存储节点3不是目标存储节点。
步骤106:若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据。
其中,初始存储节点可以理解为在迁移之前存储节点哈希环上的存储节点,即上述说明中的现有的存储节点,在遍历存储节点哈希环上的目标存储节点之后发现,目标存储节点中没有标识信息对应的用户数据,则说明目标用户对应的用户数据未被迁移过,还存储于初始存储节点中。
在实际应用中,可以通过查询目标存储节点中是否存有用户数据来确定当前目标用户的用户数据是否迁移过。
在本申请一具体实施例中,沿用上例,在存储节点哈希环上确定目标存储节点之后,未查询到目标存储节点中存储有标识哈希值对应的用户数据,则根据标识哈希值在存储节点哈希环上确定对应的初始存储节点,初始存储节点中存储有目标用户A的用户数据。
具体地,确定所述标识信息对应的初始存储节点,包括:
根据所述映射位置在所述存储节点哈希环上确定初始存储节点。
其中,映射位置可以理解为标识信息在存储节点哈希环上的位置,根据映射位置可以确定出标识信息对应的用户数据存储在哪一个初始存储节点上。
在实际应用中,因为在目标存储节点中未查询到标识哈希值对应的用户数据,则说明目标用户A对应的用户数据未被迁移过,目标用户A对应的用户数据还存储在初始存储节点中。
在本申请一具体实施例中,沿用上例,根据标识哈希值对应的映射位置在存储节点哈希环上确定出存储有用户数据的初始存储节点,初始存储节点为存储节点2。
步骤108:将所述用户数据从所述初始存储节点迁移至所述目标存储节点。
其中,将用户数据从初始存储节点迁移至目标存储节点可以理解为将初始存储节点中的热数据迁移至目标存储节点中。
在实际应用中,可以在不关闭数据库的情况下,根据所有用户的访问请求将活跃用户的用户数据都迁移至目标存储节点,即可以使目标存储节点中存储的均为热数据,使用户可以在正常访问调用资源的情况下,对冷热数据进行分配,提升资源利用率。
在本申请一具体实施例中,沿用上例,将目标用户A的用户数据从初始存储节点“存储节点2”迁移至目标存储节点“存储节点3”中。
在完成数据的迁移之后,可以调整初始存储节点的配置来达到降低数据库运维成本的效果。
具体地,将所述用户数据从所述初始存储节点迁移至所述目标存储节点之后,还包括:
调整所述初始存储节点的节点配置信息。
其中,节点配置信息可以理解为初始存储节点的相关配置参数信息,例如,初始存储节点的节点配置信息可以是存储节点的处理器配置参数、存储容量参数等。
在实际应用中,当初始存储节点中的热数据均被迁移至目标存储节点之后,初始存储节点中仅剩下不活跃用户的冷数据以及热数据的备份,这些用户数据不会经常被用户访问调用,则可降低存储这些数据的初始存储节点的配置,达到降低游戏运维成本的效果。
在本申请一具体实施例中,沿用上例,在将用户数据从存储节点2中迁移至存储节点3之后,调整存储节点2的节点配置信息,存储节点2原先的节点配置信息是8核4线程,可以调整至4核2线程。
将用户数据从初始存储节点迁移至目标存储节点之后,可以根据预设迁移规则处理初始存储节点中的用户数据,具体地,将所述用户数据从所述初始存储节点迁移至所述目标存储节点之后,还包括:
根据预设迁移规则处理所述初始存储节点中所述用户数据。
其中,预设迁移规则可以理解为预先设置的处理用户数据的规则。预设迁移规则可以是保留用户数据、删除用户数据。
在实际应用中,在将初始存储节点中的用户数据迁移至目标存储节点之后,可以对初始存储节点中预留的备份用户数据选择保存或者删除。具体的预设迁移规则可以根据实际情况设置。
在本申请一具体实施例中,沿用上例,在将初始存储节点中的用户数据迁移至目标存储节点之后,初始存储节点中默认保留迁移的用户数据的备份数据,根据预设迁移规则保存迁移走的用户数据的备份数据。
在本申请另一具体实施例中,沿用上例,在将初始存储节点中的用户数据迁移至目标存储节点之后,初始存储节点中默认保留迁移的用户数据的备份数据,根据预设迁移规则删除迁移走的用户数据的备份数据。
本申请提出的一种数据处理方法,包括:接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;根据所述标识信息确定所述标识信息对应的目标存储节点;若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;将所述用户数据从所述初始存储节点迁移至所述目标存储节点。通过根据用户的访问请求,将活跃用户的热数据迁移至目标存储节点中,实现了在数据库不关闭的情况下对用户数据进行冷热划分,并分别存储在不同的存储节点中,将活跃用户的热数据放到目标存储节点中,将不再登录的用户放到性能差的初始存储节点中,提升数据库利用率,降低数据库运维成本。
下述结合附图3,以本申请提供的数据处理方法在游戏数据库的应用为例,对所述数据处理方法进行进一步说明。其中,图3示出了本申请一实施例提供的一种应用于游戏数据库的数据处理方法的处理流程图,具体包括以下步骤:
步骤302:接收目标用户的访问请求,根据访问请求确定目标用户的标识信息。
在本申请一具体实施例中,沿用上例,接收目标用户B的访问请求,根据访问请求确定目标用户B的标识信息,标识信息为目标用户B的唯一标识信息。
步骤304:创建存储节点,将存储节点的节点属性信息设置为第一类型。
在本申请一具体实施例中,沿用上例,在存储节点哈希环中创建存储节点,设置存储节点的节点属性信息为热节点,表示该存储节点为目标存储节点,目标存储节点用于存储活跃用户的用户数据。
步骤306:根据访问请求确定所述目标用户的属性信息,压缩属性信息获得目标用户的标识哈希值。
在本申请一具体实施例中,沿用上例,根据目标用户B的属性信息,将目标用户B的属性信息通过哈希算法进行压缩计算,获得目标用户B的标识哈希值。
步骤308:根据标识信息确定所述标识信息在存储节点哈希环上的映射位置,根据映射位置在存储节点哈希环上确定目标存储节点。
在本申请一具体实施例中,沿用上例,根据目标用户B的标识哈希值确定标识哈希值在存储节点哈希环上的映射位置,根据标识哈希值的映射位置在存储节点哈希环上顺时针寻找目标存储节点。首先寻找到待处理存储节点为存储节点1,根据存储节点1的节点属性信息“冷节点”,则存储节点1不是目标存储节点,继续顺时针寻找下一个待处理存储节点,确定待处理存储节点为存储节点2,根据存储根据存储节点2的节点属性信息“热节点”,则存储节点2是目标存储节点。
步骤310:若在目标存储节点中未查询到标识信息对应的用户数据,则根据映射位置在存储节点哈希环上确定初始存储节点,其中,初始存储节点存储有目标用户的用户数据。
在本申请一具体实施例中,沿用上例,在存储节点2中未查询到标识哈希值对应的目标用户B的用户数据,则确定目标用户B的用户数据存储在初始存储节点上,根据标识哈希值的映射位置在存储节点哈希环上确定初始存储节点,初始存储节点为存储节点1,存储节点1中存储有目标用户B的用户数据。
步骤312:将用户数据从初始存储节点迁移至目标存储节点。
在本申请一具体实施例中,沿用上例,将目标用户B的用户数据从存储节点1迁移至存储节点2中。
步骤314:调整初始存储节点的节点配置信息,根据预设迁移规则处理初始存储节点中用户数据。
在本申请一具体实施例中,沿用上例,降低存储节点的节点配置信息,删除存储节点1中的用户数据。
本申请提供的一种应用于游戏数据库的数据处理方法,包括:接收目标用户的访问请求,根据访问请求确定目标用户的标识信息,创建存储节点,将存储节点的节点属性信息设置为第一类型,根据访问请求确定目标用户的属性信息,压缩属性信息获得目标用户的标识哈希值,根据标识信息确定标识信息在存储节点哈希环上的映射位置,根据映射位置在存储节点哈希环上确定目标存储节点,若在目标存储节点中未查询到标识信息对应的用户数据,则根据映射位置在存储节点哈希环上确定初始存储节点,其中,初始存储节点存储有目标用户的用户数据,将用户数据从初始存储节点迁移至目标存储节点,调整初始存储节点的节点配置信息,根据预设迁移规则处理初始存储节点中所述用户数据。通过根据用户的访问请求,将活跃用户的热数据迁移至目标存储节点中,实现了在数据库不关闭的情况下对用户数据进行冷热划分,并分别存储在不同的存储节点中,将活跃用户的热数据放到目标存储节点中,并降低初始存储节点的节点配置,提升数据库利用率,降低数据库运维成本。
与上述方法实施例相对应,本申请还提供了数据处理装置实施例,图4示出了本申请一实施例提供的一种数据处理装置的结构示意图。如图4所示,该装置包括:
接收模块402,被配置为接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;
第一确定模块404,被配置为根据所述标识信息确定所述标识信息对应的目标存储节点;
第二确定模块406,被配置为若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;
迁移模块408,被配置为将所述用户数据从所述初始存储节点迁移至所述目标存储节点。
可选地,所述接收模块402,进一步被配置为:
根据所述访问请求确定所述目标用户的属性信息;
根据所述属性信息确定所述目标用户的标识信息。
可选地,所述接收模块402,进一步被配置为:
压缩所述属性信息获得所述目标用户的标识哈希值。
可选地,所述第一确定模块404,进一步被配置为:
根据所述标识信息确定所述标识信息在存储节点哈希环上的映射位置;
根据所述映射位置在所述存储节点哈希环上确定目标存储节点。
可选地,所述第一确定模块404,进一步被配置为:
根据所述映射位置在所述存储节点哈希环上确定待验证存储节点;
获取所述待验证存储节点的节点属性信息;
根据所述节点属性信息确定所述待验证存储节点是否为目标存储节点;
若是,则将所述待验证存储节点作为目标存储节点;
若否,则继续执行根据所述映射位置在所述存储节点哈希环上确定待验证存储节点的步骤。
可选地,所述第一确定模块404,进一步被配置为:
在所述节点属性信息为第一类型的情况下,所述待验证存储节点是目标存储节点;
在所述节点属性信息为第二类型的情况下,所述待验证存储节点不是目标存储节点。
可选地,所述第二确定模块406,进一步被配置为:
根据所述映射位置在所述存储节点哈希环上确定初始存储节点。
可选地,所述数据处理装置还包括:
调整模块,被配置为调整所述初始存储节点的节点配置信息。
可选地,所述数据处理装置还包括:
处理模块,被配置为根据预设迁移规则处理所述初始存储节点中所述用户数据。
可选地,所述数据处理装置还包括:
创建模块,被配置为创建存储节点,将所述存储节点的节点属性信息设置为第一类型。
本申请提供的一种数据处理装置,包括:接收模块,被配置为接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;第一确定模块,被配置为根据所述标识信息确定所述标识信息对应的目标存储节点;第二确定模块,被配置为若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;迁移模块,被配置为将所述用户数据从所述初始存储节点迁移至所述目标存储节点。通过根据用户的访问请求,将活跃用户的热数据迁移至目标存储节点中,实现了在数据库不关闭的情况下对用户数据进行冷热划分,并分别存储在不同的存储节点中,将活跃用户的热数据放到目标存储节点中,并降低初始存储节点的节点配置,提升数据库利用率,降低数据库运维成本。
上述为本实施例的一种数据处理装置的示意性方案。需要说明的是,该数据处理装置的技术方案与上述的数据处理方法的技术方案属于同一构思,数据处理装置的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
图5示出了根据本申请一实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
其中,处理器520执行所述计算机指令时实现所述的数据处理方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的数据处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现如前所述数据处理方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (13)
1.一种数据处理方法,其特征在于,包括:
接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;
根据所述标识信息确定所述标识信息对应的目标存储节点;
若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;
将所述用户数据从所述初始存储节点迁移至所述目标存储节点。
2.如权利要求1所述的数据处理方法,其特征在于,根据所述访问请求确定所述目标用户的标识信息,包括:
根据所述访问请求确定所述目标用户的属性信息;
根据所述属性信息确定所述目标用户的标识信息。
3.如权利要求2所述的数据处理方法,其特征在于,根据所述属性信息确定所述目标用户的标识信息,包括:
压缩所述属性信息获得所述目标用户的标识哈希值。
4.如权利要求1所述的数据处理方法,其特征在于,根据所述标识信息确定所述标识信息对应的目标存储节点,包括:
根据所述标识信息确定所述标识信息在存储节点哈希环上的映射位置;
根据所述映射位置在所述存储节点哈希环上确定目标存储节点。
5.如权利要求4所述的数据处理方法,其特征在于,根据所述映射位置在所述存储节点哈希环上确定目标存储节点,包括:
根据所述映射位置在所述存储节点哈希环上确定待验证存储节点;
获取所述待验证存储节点的节点属性信息;
根据所述节点属性信息确定所述待验证存储节点是否为目标存储节点;
若是,则将所述待验证存储节点作为目标存储节点;
若否,则继续执行根据所述映射位置在所述存储节点哈希环上确定待验证存储节点的步骤。
6.如权利要求5所述的数据处理方法,其特征在于,根据所述节点属性信息确定所述待验证存储节点是否为目标存储节点,包括:
在所述节点属性信息为第一类型的情况下,所述待验证存储节点是目标存储节点;
在所述节点属性信息为第二类型的情况下,所述待验证存储节点不是目标存储节点。
7.如权利要求4所述的数据处理方法,其特征在于,确定所述标识信息对应的初始存储节点,包括:
根据所述映射位置在所述存储节点哈希环上确定初始存储节点。
8.如权利要求1所述的数据处理方法,其特征在于,将所述用户数据从所述初始存储节点迁移至所述目标存储节点之后,还包括:
调整所述初始存储节点的节点配置信息。
9.如权利要求1所述的数据处理方法,其特征在于,将所述用户数据从所述初始存储节点迁移至所述目标存储节点之后,还包括:
根据预设迁移规则处理所述初始存储节点中所述用户数据。
10.如权利要求1所述的数据处理方法,其特征在于,根据所述标识信息确定所述标识信息对应的目标存储节点之前,还包括:
创建存储节点,将所述存储节点的节点属性信息设置为第一类型。
11.一种数据处理装置,其特征在于,包括:
接收模块,被配置为接收目标用户的访问请求,根据所述访问请求确定所述目标用户的标识信息;
第一确定模块,被配置为根据所述标识信息确定所述标识信息对应的目标存储节点;
第二确定模块,被配置为若在所述目标存储节点中未查询到所述标识信息对应的用户数据,则确定所述标识信息对应的初始存储节点,其中,所述初始存储节点存储有所述目标用户的用户数据;
迁移模块,被配置为将所述用户数据从所述初始存储节点迁移至所述目标存储节点。
12.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述计算机指令时实现权利要求1-10任意一项所述方法的步骤。
13.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该计算机指令被处理器执行时实现权利要求1-10任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210043208.6A CN114385596A (zh) | 2022-01-14 | 2022-01-14 | 数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210043208.6A CN114385596A (zh) | 2022-01-14 | 2022-01-14 | 数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114385596A true CN114385596A (zh) | 2022-04-22 |
Family
ID=81201021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210043208.6A Pending CN114385596A (zh) | 2022-01-14 | 2022-01-14 | 数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114385596A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116049320A (zh) * | 2023-03-09 | 2023-05-02 | 龙存科技(北京)股份有限公司 | 一种基于本地化访问的分布式数据库设计方法及系统 |
-
2022
- 2022-01-14 CN CN202210043208.6A patent/CN114385596A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116049320A (zh) * | 2023-03-09 | 2023-05-02 | 龙存科技(北京)股份有限公司 | 一种基于本地化访问的分布式数据库设计方法及系统 |
CN116049320B (zh) * | 2023-03-09 | 2023-08-08 | 龙存科技(北京)股份有限公司 | 一种基于本地化访问的分布式数据库设计方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107357896A (zh) | 数据库集群的扩容方法、装置、系统和数据库集群系统 | |
CN110413595B (zh) | 一种应用于分布式数据库的数据迁移方法和相关装置 | |
US20090187588A1 (en) | Distributed indexing of file content | |
CN112181309A (zh) | 一种海量对象存储的在线扩容方法 | |
CN113297166A (zh) | 数据处理系统、方法以及装置 | |
CN104253868B (zh) | 一种云存储数据同步的方法及装置 | |
CN111324665B (zh) | 一种日志回放方法及装置 | |
CN112486074B (zh) | 数据处理系统、方法及装置 | |
US20140059094A1 (en) | Making use of a file path to determine file locality for applications | |
JP2009295127A (ja) | アクセス方法、アクセス装置及び分散データ管理システム | |
CN108875035B (zh) | 分布式文件系统的数据存储方法及相关设备 | |
JP2019121334A (ja) | データストレージとダイナミックマイグレーション方法及びデータストレージとダイナミックマイグレーション装置 | |
US20200042641A1 (en) | Distributed search framework with virtual indexing | |
CN114666212A (zh) | 配置数据下发方法 | |
CN112905618A (zh) | 数据处理方法以及装置 | |
CN106570153A (zh) | 一种海量url的数据提取方法及系统 | |
CN114385596A (zh) | 数据处理方法及装置 | |
JP2017535009A (ja) | データの検索方法、装置及び端末 | |
WO2019001021A1 (zh) | 数据处理方法、装置、系统、服务器及计算机存储介质 | |
CN114595167A (zh) | 分布式缓存系统、方法以及装置 | |
US11301436B2 (en) | File storage method and storage apparatus | |
WO2023179784A1 (zh) | 数据处理方法以及装置 | |
CN114327302B (zh) | 处理对象存储访问的方法、装置及系统 | |
JP2019121333A (ja) | データダイナミックマイグレーション方法とデータダイナミックマイグレーション装置 | |
CN112596825B (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 |