CN111858679A - 一种数据缓存方法、缓存系统及查询方法 - Google Patents
一种数据缓存方法、缓存系统及查询方法 Download PDFInfo
- Publication number
- CN111858679A CN111858679A CN202010744358.0A CN202010744358A CN111858679A CN 111858679 A CN111858679 A CN 111858679A CN 202010744358 A CN202010744358 A CN 202010744358A CN 111858679 A CN111858679 A CN 111858679A
- Authority
- CN
- China
- Prior art keywords
- group
- memory block
- data
- personal information
- user
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- 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/24—Querying
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (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以及与各变动后的团伙ID分别对应的多个用户个人信息;所述数据库中存储有多个变动前、后的团伙ID以及与各变动前、后的团伙ID分别对应的多个用户个人信息。本发明通过单向键值对记录值的变动,极大地提高了数据查询的效率,并有效降低了数据存储占用的内存。
Description
技术领域
本发明属于数据存储技术领域,具体是一种数据缓存方法、缓存系统及查询方法。
背景技术
随着互联网的发展,大量网络应用产生了海量的数据,为了提高查询效率,同时为避免直接与数据库操作而出现系统瓶颈,通常将数据放入缓存中,随着数据的增长,数据查询耗时会变长,且内存耗用变大,例如,五十亿的存储数据将需要1T多的缓存空间来存储key-value记录(因key-value分布式存储系统查询速度快、存放数据量大、支持高并发,故而当前普遍采用key-value数据库),同时由于存在大量key-value指针,使得存储膨胀率比较高。因此,亟需一种数据缓存的方法,以提高缓存空间利用率,降低系统对计算机硬件-内存的要求,提高数据查询速度。
发明内容
本发明的目的是提供一种数据缓存方法、缓存系统及查询方法,解决现有技术中海量内存块数据遍历耗时过多,以及耗用内存大的问题。
为实现上述目的,本发明采用的技术方案是:
一种数据缓存方法,应用于数据存储系统,所述数据存储系统包括数据库、第一内存块和第二内存块;所述数据缓存方法包括以下步骤:
S1,将同一团伙中多个用户的个人信息标注为第一团伙ID,得到多个不同团伙的第一团伙ID;
S2,将同一团伙中每个用户的个人信息分别与第一团伙ID通过键值对的数据结构形式存储在数据库和第一内存块中;
S3,当团伙中用户的个人信息发生变动时,将变动后的团伙中多个用户的个人信息标注为第二团伙ID;
S4,将同一团伙变动前的第一团伙ID与变动后的第二团伙ID通过键值对的数据结构形式存储在数据库和第二内存块中;
S5,当变动后的团伙中用户的个人信息继续发生变动时,将继续变动后的团伙中多个用户的个人信息标注为第N团伙ID;并将第N-1团伙ID与第N团伙ID通过键值对的数据结构形式存储在数据库和第二内存块中;
S6,重复步骤S5,直至团伙中用户的个人信息不再发生变动。
具体地,所述用户的个人信息包括用户的手机号、身份证号和地址信息等。
具体地,所述键值对为单向键值对,可有效降低数据存储占用内存。
优选地,所述数据缓存方法还包括:定期对第二内存块进行清理,将第二内存块中存储的最新的团伙ID更新到第一内存块中,并将第二内存块中存储的数据清空,从而保证第二内存块的高效运行,提高数据查询效率。
与上述数据缓存方法相对应的,本发明还公开了一种数据缓存系统,包括数据库、第一内存块和第二内存块;
所述第一内存块中存储有多个变动前的团伙ID以及与各团伙ID分别对应的多个用户个人信息;
所述第二内存块中存储有多个变动后的团伙ID以及与各变动后的团伙ID分别对应的多个用户个人信息;
所述数据库中存储有多个变动前、后的团伙ID以及与各变动前、后的团伙ID分别对应的多个用户个人信息。
与上述数据缓存方法相对应的,本发明还公开了一种数据查询方法,包括以下步骤:
a,当接收到数据查询请求时,根据用户的个人信息在第一内存块中查询对应的第一团伙ID;
b,根据第一团伙ID在第二内存块中查询对应的第二团伙ID;
c,若在第二内存块中能够查询到第二团伙ID,则继续根据第二团伙ID在第二内存块中查询对应的第三团伙ID,直至查询到最新的团伙ID;
d,若在第二内存块中查询不到第二团伙ID,则认定第一内存块中的第一团伙ID为该用户最新的团伙ID。
与现有技术相比,本发明的有益效果是:本发明通过第一内存块存储变动前的用户数据和对应的团伙ID,通过第二内存卡储存变动后的用户数据和对应的团伙ID,通过单向键值对记录值的变动,相较于双向键值对,保证了数据查询的高效率,同时还降低了数据存储占用的内存。
附图说明
图1为本发明实施例1中数据缓存方法的流程示意框图;
图2为本发明实施例2中数据查询方法的流程示意框图;
具体实施方式
下面将结合本发明中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动条件下所获得的所有其它实施例,都属于本发明保护的范围。
本实施例的应用场景为电商平台的后台数据管理系统,主要是针对目前电商环境下存在的一些恶意售假商家和恶意退货、刷评买家;其一般是团伙作案,每个团伙包括多个用户,每个用户都有对应的手机号、旺旺号、旺旺名、收货地址等个人信息;这些用户为了躲避追踪,一般会经常更换个人信息,这些为后台数据管理提出了更高的要求,需要开发出更高效查询用户最新个人信息并有效节省存储内存的数据缓存方法和数据查询方法。
实施例1
如图1所示,本实施例提供了一种数据缓存方法,应用于数据存储系统,所述数据存储系统包括数据库、第一内存块和第二内存块;所述数据缓存方法包括以下步骤:
S1,将同一团伙中多个用户的个人信息标注为第一团伙ID,得到多个不同团伙的第一团伙ID;
S2,将同一团伙中每个用户的个人信息分别与第一团伙ID通过单向键值对的数据结构形式存储在数据库和第一内存块中;
S3,当团伙中用户的个人信息发生变动时,将变动后的团伙中多个用户的个人信息标注为第二团伙ID;
S4,将同一团伙变动前的第一团伙ID与变动后的第二团伙ID通过单向键值对的数据结构形式存储在数据库和第二内存块中;
S5,当变动后的团伙中用户的个人信息继续发生变动时,将继续变动后的团伙中多个用户的个人信息标注为第N团伙ID;并将第N-1团伙ID与第N团伙ID通过单向键值对的数据结构形式存储在数据库和第二内存块中;(其中,第N-1团伙ID为第N团伙ID变动前的团伙ID)
S6,重复步骤S5,直至团伙中用户的个人信息不再发生变动;
S7,定期对第二内存块进行清理,将第二内存块中存储的最新的团伙ID更新到第一内存块中,并将第二内存块中存储的数据清空,从而保证第二内存块的高效运行,提高数据查询效率。
与上述数据缓存方法相对应的,本实施例还公开了一种数据缓存系统,包括数据库、第一内存块和第二内存块;
所述第一内存块中存储有多个变动前的团伙ID以及与各团伙ID分别对应的多个用户个人信息;
所述第二内存块中存储有多个变动后的团伙ID以及与各变动后的团伙ID分别对应的多个用户个人信息;
所述数据库中存储有多个变动前、后的团伙ID以及与各变动前、后的团伙ID分别对应的多个用户个人信息;通过数据库存储所有的原始数据和变动后的数据,可以防止突然断电时内存数据清空而导致数据丢失的问题。
实施例2
如图2所示,本实施例提供了一种与上述实施例1中数据缓存方法相对应的数据查询方法,包括以下步骤:
a,当接收到数据查询请求时,根据用户的个人信息在第一内存块中查询对应的第一团伙ID;
b,根据第一团伙ID在第二内存块中查询对应的第二团伙ID;
c,若在第二内存块中能够查询到第二团伙ID,则继续根据第二团伙ID在第二内存块中查询对应的第三团伙ID,直至查询到最新的团伙ID;
d,若在第二内存块中查询不到第二团伙ID,则认定第一内存块中的第一团伙ID为该用户最新的团伙ID。
具体地,步骤d中,由于第二内存块定期清理时,其中存储的最新的团伙ID更新到第一内存块中了,因此,当在第二内存块中查询不到第二团伙ID时,可在第一内存块中根据第一团伙ID查询第二团伙ID,若在第一内存块中无法查询到第二团伙ID,则认定第一内存块中的第一团伙ID即为该用户最新的团伙ID,即该用户的个人信息为原始信息;若在第一内存块中查询到了第二团伙ID,则继续根据第二团伙ID在第一内存块中查询对应的第三团伙ID,直至查询到最新的团伙ID,即可查询到该用户最新的个人信息。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施列的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每--流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。
Claims (6)
1.一种数据缓存方法,其特征在于,应用于数据存储系统,所述数据存储系统包括数据库、第一内存块和第二内存块;所述数据缓存方法包括以下步骤:
S1,将同一团伙中多个用户的个人信息标注为第一团伙ID,得到多个不同团伙的第一团伙ID;
S2,将同一团伙中每个用户的个人信息分别与第一团伙ID通过键值对的数据结构形式存储在数据库和第一内存块中;
S3,当团伙中用户的个人信息发生变动时,将变动后的团伙中多个用户的个人信息标注为第二团伙ID;
S4,将同一团伙变动前的第一团伙ID与变动后的第二团伙ID通过键值对的数据结构形式存储在数据库和第二内存块中;
S5,当变动后的团伙中用户的个人信息继续发生变动时,将继续变动后的团伙中多个用户的个人信息标注为第N团伙ID;并将第N-1团伙ID与第N团伙ID通过键值对的数据结构形式存储在数据库和第二内存块中;
S6,重复步骤S5,直至团伙中用户的个人信息不再发生变动。
2.根据权利要求1所述的一种数据缓存方法,其特征在于,所述用户的个人信息包括用户的手机号、身份证号和地址信息。
3.根据权利要求1所述的一种数据缓存方法,其特征在于,所述键值对为单向键值对。
4.根据权利要求1所述的一种数据缓存方法,其特征在于,还包括:定期对第二内存块进行清理,将第二内存块中存储的最新的团伙ID更新到第一内存块中,并将第二内存块中存储的数据清空。
5.一种数据缓存系统,基于权利要求1至3中任一项所述的数据缓存方法,其特征在于,包括数据库、第一内存块和第二内存块;
所述第一内存块中存储有多个变动前的团伙ID以及与各团伙ID分别对应的多个用户个人信息;
所述第二内存块中存储有多个变动后的团伙ID以及与各变动后的团伙ID分别对应的多个用户个人信息;
所述数据库中存储有多个变动前、后的团伙ID以及与各变动前、后的团伙ID分别对应的多个用户个人信息。
6.一种数据查询方法,基于权利要求1至3中任一项所述的数据缓存方法,其特征在于,包括以下步骤:
a,当接收到数据查询请求时,根据用户的个人信息在第一内存块中查询对应的第一团伙ID;
b,根据第一团伙ID在第二内存块中查询对应的第二团伙ID;
c,若在第二内存块中能够查询到第二团伙ID,则继续根据第二团伙ID在第二内存块中查询对应的第三团伙ID,直至查询到最新的团伙ID;
d,若在第二内存块中查询不到第二团伙ID,则认定第一内存块中的第一团伙ID为该用户最新的团伙ID。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010744358.0A CN111858679A (zh) | 2020-07-29 | 2020-07-29 | 一种数据缓存方法、缓存系统及查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010744358.0A CN111858679A (zh) | 2020-07-29 | 2020-07-29 | 一种数据缓存方法、缓存系统及查询方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111858679A true CN111858679A (zh) | 2020-10-30 |
Family
ID=72945937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010744358.0A Pending CN111858679A (zh) | 2020-07-29 | 2020-07-29 | 一种数据缓存方法、缓存系统及查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111858679A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880704A (zh) * | 2012-09-25 | 2013-01-16 | 上海证券交易所 | 一种新型的并发内存数据组织与访问方法 |
CN110292775A (zh) * | 2019-07-01 | 2019-10-01 | 网易(杭州)网络有限公司 | 获取差异数据的方法及装置 |
US20200034291A1 (en) * | 2018-07-27 | 2020-01-30 | EMC IP Holding Company LLC | Method, device and computer program product for managing metadata at a control device |
-
2020
- 2020-07-29 CN CN202010744358.0A patent/CN111858679A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880704A (zh) * | 2012-09-25 | 2013-01-16 | 上海证券交易所 | 一种新型的并发内存数据组织与访问方法 |
US20200034291A1 (en) * | 2018-07-27 | 2020-01-30 | EMC IP Holding Company LLC | Method, device and computer program product for managing metadata at a control device |
CN110292775A (zh) * | 2019-07-01 | 2019-10-01 | 网易(杭州)网络有限公司 | 获取差异数据的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299336B (zh) | 数据备份方法、装置、存储介质及计算设备 | |
CN105718455B (zh) | 一种数据查询方法及装置 | |
CN103336849B (zh) | 一种数据库检索系统中提高检索速度的方法及装置 | |
US9672274B1 (en) | Scalable message aggregation | |
CN108717457B (zh) | 一种电子商务平台大数据处理方法和系统 | |
CN109240946A (zh) | 数据的多级缓存方法及终端设备 | |
CN108182213A (zh) | 一种基于分布式系统的数据处理优化装置及方法 | |
CN111339073A (zh) | 实时数据处理方法、装置、电子设备及可读存储介质 | |
CN111722918A (zh) | 业务标识码生成方法、装置、存储介质及电子设备 | |
CN101320458A (zh) | 在海量数据下完成账单对账的方法及系统 | |
CN105871959A (zh) | 一种消息传递的方法、系统和装置 | |
CN109918382A (zh) | 数据处理方法、装置、终端及存储介质 | |
CN110737682A (zh) | 一种缓存操作方法、装置、存储介质和电子设备 | |
CN110784498B (zh) | 一种个性化数据容灾方法及装置 | |
EP3953819A1 (en) | Object storage change-events | |
CN107911799B (zh) | 一种利用智能路由的方法 | |
US20120224482A1 (en) | Credit feedback system for parallel data flow control | |
CN108399175B (zh) | 一种数据存储、查询方法及其装置 | |
CN109783258A (zh) | 一种消息处理方法、装置及服务器 | |
CN113254445A (zh) | 实时数据存储方法、装置、计算机设备及存储介质 | |
CN109344296A (zh) | 实现Redis的HASH键的域生命周期控制方法、系统、服务器及存储介质 | |
CN110740155A (zh) | 分布式系统中的请求处理方法及装置 | |
CN109614411B (zh) | 数据存储方法、设备和存储介质 | |
CN101673217A (zh) | 一种实现远端程序调用的方法和系统 | |
CN111753019A (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 |