CN113760875A - 一种数据处理方法、装置、电子设备和存储介质 - Google Patents
一种数据处理方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113760875A CN113760875A CN202110084206.7A CN202110084206A CN113760875A CN 113760875 A CN113760875 A CN 113760875A CN 202110084206 A CN202110084206 A CN 202110084206A CN 113760875 A CN113760875 A CN 113760875A
- Authority
- CN
- China
- Prior art keywords
- data
- primary key
- storage medium
- intermediate storage
- data table
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 27
- 238000003672 processing method Methods 0.000 title abstract description 19
- 238000012432 intermediate storage Methods 0.000 claims abstract description 80
- 238000012216 screening Methods 0.000 claims abstract description 46
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 23
- 238000004590 computer program Methods 0.000 claims description 17
- 230000015654 memory Effects 0.000 claims description 17
- 230000008859 change Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000006185 dispersion Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 241000533950 Leucojum Species 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (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对应记录的数据。
Description
技术领域
本申请涉及大数据技术领域,尤其涉及一种数据处理方法、装置、电子设备和计算机存储介质。
背景技术
在用户日常的系统应用或者业务场景中,会遇到需要在数据库中筛选出发生变化的数据的情况;对于这种情况,常规方法是在存储这种数据的数据库的数据表中,增加一个字段,用来标识数据是否发生了变化,如果数据发生了变化就将该字段设定为一个值,进而,在数据查询过程中根据这个字段的值,来筛选出发生变化的数据,将发生变化的数据处理后再将该字段重置为默认的状态值。
然而,上述方法在数据表中数据量较大的情况下,仅通过这一个字段标识来筛选变更数据,使得结构化查询语言(Structured Query Language,SQL)执行效率会很低;另外,由于这个字段的离散度很低,即使添加索引也无法起到明显优化作用,并且还占用存储空间;因此,需要一种能够在大数据量的情况下准确且高效地筛选出变更数据的方法。
发明内容
本申请提供一种数据处理方法、装置、电子设备和计算机存储介质。
本申请的技术方案是这样实现的:
本申请实施例提供了一种数据处理方法,所述方法包括:
获取数据库中的数据表;所述数据表用于存储业务数据;
在所述数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键身份标识号(Identity Document,ID)存储到预先建立的中间存储介质;
基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据。
在一些实施例中,所述方法还包括:
在对所述至少一个主键ID对应记录的数据使用完成时,删除所述中间存储介质中使用完成的变更数据对应的主键ID。
在一些实施例中,所述基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据,包括:
基于所述中间存储介质中的主键ID,从所述数据表中筛选出所述中间存储介质中的主键ID对应记录的数据。
在一些实施例中,所述基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据,包括:
按照预设条件从所述中间存储介质中的主键ID筛选出至少一个主键ID;
从所述数据表中筛选出所述至少一个主键ID对应记录的数据。
在一些实施例中,所述中间存储介质包括:中间表或分布式缓存中间件。
本申请实施例还提出了一种数据处理装置,所述装置包括获取模块、存储模块和筛选模块,其中,
获取模块,用于获取数据库中的数据表;所述数据表用于存储业务数据;
存储模块,用于在所述数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键ID存储到预先建立的中间存储介质;
筛选模块,用于基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据。
本申请实施例提供一种电子设备,所述设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述一个或多个技术方案提供的数据处理方法。
本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有计算机程序;所述计算机程序被执行后能够实现前述一个或多个技术方案提供的数据处理方法。
本申请实施例提出了一种数据处理方法、装置、电子设备和计算机存储介质,该方法包括:获取数据库中的数据表;所述数据表用于存储业务数据;在所述数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键ID存储到预先建立的中间存储介质;基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据;如此,在数据表中数据量较大的情况下,只需要从数据量较少的中间存储介质中查询出变更数据的主键ID,进而,通过主键ID直接筛选出数据表中对应记录的数据;即,不需要在拥有海量业务数据的数据表中直接搜索变更数据,极大地提高了筛选变更数据的效率;另外,由于主键ID的唯一性,通过主键ID查询数据表中对应记录的数据,能够确保查询结果的准确性。
附图说明
图1是本申请实施例中的一种数据处理方法的流程示意图;
图2a为本申请实施例中的存储变更数据的流程示意图;
图2b为本申请实施例中的查询变更数据的流程示意图;
图3为本申请实施例的数据处理装置的组成结构示意图;
图4为本申请实施例的电子设备的结构示意图。
具体实施方式
以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所提供的实施例仅仅用以解释本申请,并不用于限定本申请。另外,以下所提供的实施例是用于实施本申请的部分实施例,而非提供实施本申请的全部实施例,在不冲突的情况下,本申请实施例记载的技术方案可以任意组合的方式实施。
需要说明的是,在本申请实施例中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的方法或者装置不仅包括所明确记载的要素,而且还包括没有明确列出的其它要素,或者是还包括为实施方法或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括该要素的方法或者装置中还存在另外的相关要素(例如方法中的步骤或者装置中的单元,例如的单元可以是部分电路、部分处理器、部分程序或软件等等)。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,I和/或J,可以表示:单独存在I,同时存在I和J,单独存在J这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括I、J、R中的至少一种,可以表示包括从I、J和R构成的集合中选择的任意一个或多个元素。
例如,本申请实施例提供的数据处理方法包含了一系列的步骤,但是本申请实施例提供的数据处理方法不限于所记载的步骤,同样地,本申请实施例提供的数据处理装置包括了一系列模块,但是本申请实施例提供的数据处理装置不限于包括所明确记载的模块,还可以包括为获取相关时序数据、或基于时序数据进行处理时所需要设置的模块。
本申请实施例可以应用于终端设备和服务器组成的计算机系统中,并可以与众多其它通用或专用计算系统环境或配置一起操作。这里,终端设备可以是瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统,等等,服务器可以是服务器计算机系统小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端设备、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
相关技术中,对于数据库表中变更数据的筛选,常规方法是基于现有的数据库表,增加一个字段,如果某条数据发生了变更,将这条数据的该字段标识修改为某个特定的值;由于标识数据被修改,查询变更数据时通过该字段拼接SQL条件进行查询,使用完成之后再将该字段重置为默认的状态值,来实现此功能。然而,采用这种方法筛选变更数据存在以下技术问题:
1)需要修改业务数据表结构;由于该数据表通常是针对某个业务场景创建的,新增加一个字段用来标识数据的修改状态,时间久了可能不太能理解该字段含义,并且不容易维护。
2)如果数据库表中数据量太大,几十万甚至上百万,仅通过这一个新增字段标识来筛选变更数据,即,从海量数据中筛选出少量符合条件的数据,使得SQL的查询执行效率会很低;另外,由于该字段离散度很低,即使添加索引也无法起到明显优化作用,不仅额外增加磁盘空间开销,且该字段的值的变化也会导致索引频繁更新,会降低更新效率。
针对上述技术问题,提出以下各实施例。
在本申请的一些实施例中,数据处理方法可以利用数据处理装置中的处理器实现,上述处理器可以为特定用途集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(DigitalSignal Processing Device,DSPD)、可编程逻辑装置(Programmable Logic Device,PLD)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)、中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器中的至少一种。
图1是本申请实施例中的一种数据处理方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤100:获取数据库中的数据表;数据表用于存储业务数据。
这里,数据库是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。
数据库以数据表为组织单位存储数据;数据表,简称表,是由表名、表中的字段和表的记录三个部分组成的。表中的每一行称为一个记录,它由若干个字段组成;字段,也称为域,表中的每一列称为一个字段;每个字段都有相应的描述信息,例如,字段名、字段类型、及字段宽度等。
在一种实施方式中,假设数据表中存储有一个班所有学生的考试成绩,其中,表中的每一行对应一个学生,每一行包括学生的学号、姓名以及各门课程成绩;对于这个数据表,表名可以为X班考试成绩;表中每个学生的学号、姓名以及各门课程成绩均为一个记录;表中学号、姓名以及各门课程成绩各自对应的列表示不同的字段。
本申请实施例中,数据表用于存储不同业务场景下的业务数据;这里,业务数据可以是与用户基本情况相关的数据,例如,姓名、性别或年龄等;可以是与用户行为相关的数据,例如,用户所做的行为类型,以及行为发生的时间或地点等;还可以是与商品相关的数据,例如,商品名称、商品类别或商品库存等;对于数据表中业务数据的类型,本申请实施例对此不作限制。
在一种实施方式中,数据表中业务数据的存储可以通过SQL语句进行实现;SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理数据库中的数据表。
在一种实施方式中,可以通过数据库管理系统获取数据库中的数据表;其中,数据库管理系统(DataBase Management System,DBMS)指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。常见的数据库管理系统为:MySQL、Oracle和SQL server等。
步骤101:在数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键ID存储到预先建立的中间存储介质。
在一种实施方式中,数据表在进行数据存储的过程中,存在数据发生变化的情况;而在一些日常的系统应用或者业务场景中,需要在数据表中筛选出发生变化的数据来,以便于进行后续操作。
这里,对于造成数据表中数据发生变化的原因,本申请实施例不作限制;例如,可以是数据冗余造成的;也可以是并发控制不当造成的;还可以是由于软硬件故障或者操作错误造成的。
通常情况下,在设计数据表的过程中,都会设置一个主键,而主键的作用是为了有效的管理数据表中的数据,主键的存在作为唯一的标识列,其能够将表中的每一行记录区分开来,且每一行记录的主键不能为空,即,当数据表生成记录时,主键的值必须存在。
本申请实施例中,主键的值为主键ID,对于主键ID的生成方式不作限定;例如,可以通过自增方式、雪花算法或通用唯一识别码(Universally Unique Identifier,UUID)的方式进行生成。
在一种实施方式中,当数据表通过自增方式生成主键ID时,对于每次自增的数值不作限定;假设数据表1在生成第一条记录时的主键ID为0,则在生成第二条记录时的主键ID可以为1,也可以为2。
本申请实施例中,中间存储介质用于存放针对数据表的中间处理结果;在一些实施例中,中间存储介质可以包括:中间表或分布式缓存中间件;这里,分布式缓存中间件可以包括:基于内存存储的远程字典服务(Remote Dictionary Server,redis)或高速缓存系统(Memcached)。
这里,由于分布式缓存中间件为内存存储,相比数据库的磁盘存储查询效率要高许多,因而,在数据表中数据量较大的情况下,采用分布式缓存中间件的方式可以提高数据查询效率。
本申请实施例中,数据表中每一条记录包括若干个字段,其中,每一条记录的数据发生变更,可以是每一条记录包括的任意一个字段的数据发生变化。
示例性地,假设数据表中存储有用户的基本情况,表中的每一行对应一个用户,每一行记录包括三个字段,分别为主键ID、姓名以及年龄;当用户的姓名发生变化时,将变更数据“姓名”的主键ID存储到预先建立的中间存储介质;当用户的年龄发生变化时,将变更数据“年龄”的主键ID存储到预先建立的中间存储介质。
可见,当数据表中某一条记录中至少两个字段的数据发生变化时,存在对主键ID进行重复存储的情况;示例性地,为了避免发生主键ID重复存储的情况,该方法还可以包括:在确定预先建立的中间存储介质中存储变更数据的主键ID时,忽略变更数据的主键ID,进而,能够避免同一主键ID被重复存储的情况。
在一种实施方式中,假设数据表第一条记录中除主键ID外,还包括字段1和字段2;如果字段1的数据由A变成B,则将主键ID存储到中间存储介质;此时,已经对第一条记录的主键ID进行存储;之后,如果字段2的数据由C变成D,则忽略字段2变更数据的主键ID,即,不再对字段2对应的主键ID进行存储。这样,可以降低中间存储介质中的数据量,进而,在之后执行对中间存储介质的数据查询操作时,可以提高处理效率。
步骤102:基于中间存储介质中的至少一个主键ID,从数据表中筛选出至少一个主键ID对应记录的数据。
本申请实施例中,经过上述步骤后,中间存储介质中已经存储有数据表中所有发生变更的数据的主键ID。
这里,中间存储介质也是基于数据表进行数据存储的,该数据表中的每一行对应一个变更数据,每一行由两个字段组成;一个是中间存储介质中数据表自身的主键id字段,另一个是原数据表变更数据的主键ID字段。
在一种实施方式中,假设存储到中间存储介质中的第一个变更数据的主键ID为100,中间存储介质中数据表自身的主键id为1;则以“主键id=1,主键ID=100”的形式作为第一条变更数据在中间存储介质中的状态记录。
在一些实施例中,基于中间存储介质中的至少一个主键ID,从数据表中筛选出至少一个主键ID对应记录的数据,可以包括:基于中间存储介质中的主键ID,从数据表中筛选出中间存储介质中的主键ID对应记录的数据。
在一种实施方式中,可以通过查询中间存储介质中所有变更数据的主键ID,进而,在数据库的数据表中筛选出所有变更数据的主键ID对应记录的数据。
例如,假设中间存储介质中存储有十条变更数据的记录,可以对中间存储介质中的这十条变更数据的主键ID进行查询,进而,确定这十条变更数据的主键ID对应记录的数据。
可见,通过上述方法可以筛选出原数据表中所有发生变更的数据,即,能够确保数据筛选结果的全面性。
在一些实施例中,基于中间存储介质中的至少一个主键ID,从数据表中筛选出至少一个主键ID对应记录的数据,可以包括:按照预设条件从中间存储介质中的主键ID筛选出至少一个主键ID;从数据表中筛选出至少一个主键ID对应记录的数据。
在实际使用时,可能不需要对数据表中所有变更数据进行筛选,即,只需要对数据表中部分变更数据进行使用时,可以根据预设条件在中间存储介质中查询这些变更数据的主键ID;进而,从数据表中筛选出这些主键ID对应记录的数据。
这里,预设条件是根据实际使用需求确定的;预设条件可以用于确定中间存储介质中需要查询的变更数据的主键ID。
在一种实施方式中,假设中间存储介质中存储有十条变更数据的记录,预设条件可以是对中间存储介质中的前三条变更数据的主键ID进行查询,也可以是对中间存储介质中的前五条变更数据的主键ID进行查询。
这里,按照预设条件有选择性地从原数据表中筛选出部分发生变更的数据,可以更好地满足变更数据的实际使用需求。
在一些实施例中,上述方法还包括:在对至少一个主键ID对应记录的数据使用完成时,删除中间存储介质中使用完成的变更数据对应的主键ID。
本申请实施例中,在对筛选出的主键ID对应记录的数据使用完成后,对应删除中间存储介质中使用完成的变更数据对应的主键ID;示例性地,假设中间存储介质中存储有十条变更数据的主键ID,如果对前三条变更数据的主键ID对应记录的数据使用完成时,则删除中间存储介质中前三条变更数据的主键ID。
这里,通过对使用完成的变更数据的主键ID进行删除,不仅可以减少中间存储介质的数据量,节约内存,还可以提高对其它变更数据的主键ID的查询效率。
本申请实施例提出了一种数据处理方法、装置、电子设备和计算机存储介质,该方法包括:获取数据库中的数据表;数据表用于存储业务数据;在数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键ID存储到预先建立的中间存储介质;基于中间存储介质中的至少一个主键ID,从数据表中筛选出至少一个主键ID对应记录的数据;如此,在数据表中数据量较大的情况下,只需要从数据量较少的中间存储介质中查询出变更数据的主键ID,进而,通过主键ID直接筛选出数据表中对应记录的数据;即,不需要在拥有海量业务数据的数据表中直接搜索变更数据,极大地提高了筛选变更数据的效率;另外,由于主键ID的唯一性,通过主键ID查询数据表中对应记录的数据,能够确保查询结果的准确性;进一步地,该方法不需要修改数据表结构,容易维护。
为了能够更加体现本申请的目的,在本申请上述实施例的基础上,进行进一步的举例说明。
本申请实施例中主要借助一个中间表或者查询数据效率较高的分布式缓存中间件来记录发生变更的数据的主键ID;首先,在数据表的某个数据发生变更后,在中间表或者分布式缓存中间件中记录变更数据的主键ID,在需要获取变更数据时,从中间表或者分布式缓存中间件获取所有变更数据的主键ID;然后,通过主键ID到数据表中查询该记录的其它数据,通过主键ID查询数据的效率是极高的,在通过主键ID查询的数据使用完成之后,删除中间表或者分布式缓存中间件中使用完成的变更数据的主键ID即可。
在一种实施方式中,如果变更数据量较小,则借助一个数据库的中间表即可,该中间表的查询效率也是比较高的;如果变更数据量较大,可以通过分布式缓存如redis来记录变更数据;由于redis数据为内存存储,相比数据库的磁盘存储查询效率要高许多,采用这种存储方式可以解决数据表业务数据量过大,查询变更数据的效率过慢的问题。
图2a为本申请实施例中的存储变更数据的流程示意图,如图2a所示,该流程包括以下步骤:
步骤A1:使用变更数据操作修改业务表M的数据。
在一种实施方式中,业务表M为上述实施例中数据库中的数据表;假设业务表M的表结构包括三个字段,分别为用户ID、用户名和年龄;其中,用户ID字段为业务表M的主键ID。示例性地,通过变更数据操作得到修改后的业务表M的数据为:用户ID=1,用户名=zhangsan,年龄=20。
步骤A2:将变更数据记录存储到变更数据记录表N中。
在一种实施方式中,变更数据记录表N为上述实施例中中间存储介质的一种表现形式;变更数据记录表N的表结构包括两个字段,分别为id和用户ID;这里,id为在变更数据记录表N中写入用户ID这条记录对应的关键ID。在确定业务表M的用户名“zhangsan”和年龄“20”发生变化时,将该用户名和年龄对应的用户ID“1”存储到变更数据记录表N中;即,可以将“id=1,用户ID=1”作为该变更数据的状态记录,结束流程。
图2b为本申请实施例中的查询变更数据的流程示意图,如图2b所示,该流程包括以下步骤:
步骤A3:使用变更数据操作查询变更数据记录。
在一种实施方式中,从变更数据记录表N中查询变更数据的记录为“id=1,用户ID=1”。
步骤A4:将用户ID作为查询条件查询业务表M对应记录的数据。
在一种实施方式中,使用变更数据记录表N中的用户ID,到业务表M中作为查询条件查询“用户ID=1”对应记录的数据并进行使用。
步骤A5:数据使用完成后,删除变更数据记录表N对应的数据记录。
在一种实施方式中,数据使用完成后,删除变更数据记录表N中使用完成的变更数据对应的主键ID“用户ID=1”,重置修改状态,结束流程。
可见,本申请实施例通过采用中间存储介质的方式,将变更数据和原数据表进行解耦剥离,去除了数据表对修改状态的字段的依赖,降低了数据修改重建表索引的时间和资源消耗,尤其是在数据表业务数据量比较大、且变更数据比较小的情况下,只需要从数据量较少的变更数据记录表中查询出发生变更的数据即可,不需要在海量业务数据的数据表中进行搜索,极大地提高了数据查询的效率。
图3为本申请实施例的数据处理装置的组成结构示意图,如图3所示,装置包括:获取模块300、存储模块301和筛选模块302,其中:
获取模块300,用于获取数据库中的数据表;数据表用于存储业务数据;
存储模块301,用于在数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键ID存储到预先建立的中间存储介质;
筛选模块302,用于基于中间存储介质中的至少一个主键ID,从数据表中筛选出至少一个主键ID对应记录的数据。
在一些实施例中,筛选模块302,还用于:
在对至少一个主键ID对应记录的数据使用完成时,删除中间存储介质中使用完成的变更数据对应的主键ID。
在一些实施例中,筛选模块302,用于基于中间存储介质中的至少一个主键ID,从数据表中筛选出至少一个主键ID对应记录的数据,包括:
基于中间存储介质中的主键ID,从数据表中筛选出中间存储介质中的主键ID对应记录的数据。
在一些实施例中,筛选模块302,用于基于中间存储介质中的至少一个主键ID,从数据表中筛选出至少一个主键ID对应记录的数据,包括:
按照预设条件从中间存储介质中的主键ID筛选出至少一个主键ID;
从数据表中筛选出至少一个主键ID对应记录的数据。
在一些实施例中,中间存储介质包括:中间表或分布式缓存中间件。
在实际应用中,上述获取模块300、存储模块301和筛选模块302均可以由位于电子设备中的处理器实现,该处理器可以为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
具体来讲,本实施例中的一种数据处理方法对应的计算机程序指令可以被存储在光盘、硬盘、U盘等存储介质上,当存储介质中的与一种数据处理方法对应的计算机程序指令被一电子设备读取或被执行时,实现前述实施例的任意一种数据处理方法。
基于前述实施例相同的技术构思,参见图4,其示出了本申请提供的电子设备400,可以包括:存储器401和处理器402;其中,
存储器401,用于存储计算机程序和数据;
处理器402,用于执行存储器中存储的计算机程序,以实现前述实施例的任意一种数据处理方法。
在实际应用中,上述存储器401可以是易失性存储器(volatile memory),例如RAM;或者非易失性存储器(non-volatile memory),例如ROM、快闪存储器(flash memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的存储器的组合,并向处理器402提供指令和数据。
上述处理器402可以为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的数据处理设备,用于实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。
在一些实施例中,本申请实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述
本申请所提供的各方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的各产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的各方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
获取数据库中的数据表;所述数据表用于存储业务数据;
在所述数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键身份标识号ID存储到预先建立的中间存储介质;
基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在对所述至少一个主键ID对应记录的数据使用完成时,删除所述中间存储介质中使用完成的变更数据对应的主键ID。
3.根据权利要求1所述的方法,其特征在于,所述基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据,包括:
基于所述中间存储介质中的主键ID,从所述数据表中筛选出所述中间存储介质中的主键ID对应记录的数据。
4.根据权利要求1所述的方法,其特征在于,所述基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据,包括:
按照预设条件从所述中间存储介质中的主键ID筛选出至少一个主键ID;
从所述数据表中筛选出所述至少一个主键ID对应记录的数据。
5.根据权利要求1所述的方法,其特征在于,所述中间存储介质包括:中间表或分布式缓存中间件。
6.一种数据处理装置,其特征在于,所述装置包括:
获取模块,用于获取数据库中的数据表;所述数据表用于存储业务数据;
存储模块,用于在所述数据表中至少一条记录的数据发生变更的情况下,将变更数据的主键ID存储到预先建立的中间存储介质;
筛选模块,用于基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据。
7.根据权利要求6所述的装置,其特征在于,所述筛选模块用于基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据,包括:
基于所述中间存储介质中的主键ID,从所述数据表中筛选出所述中间存储介质中的主键ID对应记录的数据。
8.根据权利要求6所述的装置,其特征在于,所述筛选模块用于基于所述中间存储介质中的至少一个主键ID,从所述数据表中筛选出所述至少一个主键ID对应记录的数据,包括:
按照预设条件从所述中间存储介质中的主键ID筛选出至少一个主键ID;
从所述数据表中筛选出所述至少一个主键ID对应记录的数据。
9.一种电子设备,其特征在于,所述设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至5任一项所述的方法。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110084206.7A CN113760875A (zh) | 2021-01-21 | 2021-01-21 | 一种数据处理方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110084206.7A CN113760875A (zh) | 2021-01-21 | 2021-01-21 | 一种数据处理方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113760875A true CN113760875A (zh) | 2021-12-07 |
Family
ID=78786447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110084206.7A Pending CN113760875A (zh) | 2021-01-21 | 2021-01-21 | 一种数据处理方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113760875A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114168606A (zh) * | 2021-12-10 | 2022-03-11 | 中国建设银行股份有限公司 | 主键id生成方法、装置、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385611A (zh) * | 2010-08-27 | 2012-03-21 | 微软公司 | 减少数据库事务期间的锁定 |
US20170228421A1 (en) * | 2014-01-03 | 2017-08-10 | Amazon Technologies, Inc. | Querying data set tables in a non-transactional database |
CN107229721A (zh) * | 2017-06-02 | 2017-10-03 | 泰华智慧产业集团股份有限公司 | 一种变更数据抽取的方法及装置 |
CN108287886A (zh) * | 2018-01-16 | 2018-07-17 | 阿里巴巴集团控股有限公司 | 同步数据变更信息的方法及装置 |
CN111078693A (zh) * | 2019-11-29 | 2020-04-28 | 叮当快药科技集团有限公司 | 用于生成数据库记录主键的方法和装置 |
CN111309761A (zh) * | 2020-02-16 | 2020-06-19 | 苏州浪潮智能科技有限公司 | 一种优化数据库中间件查询的方法、系统、设备及介质 |
CN111723110A (zh) * | 2019-03-21 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 分布式缓存系统及关联查询和更新方法、设备与存储介质 |
-
2021
- 2021-01-21 CN CN202110084206.7A patent/CN113760875A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385611A (zh) * | 2010-08-27 | 2012-03-21 | 微软公司 | 减少数据库事务期间的锁定 |
US20170228421A1 (en) * | 2014-01-03 | 2017-08-10 | Amazon Technologies, Inc. | Querying data set tables in a non-transactional database |
CN107229721A (zh) * | 2017-06-02 | 2017-10-03 | 泰华智慧产业集团股份有限公司 | 一种变更数据抽取的方法及装置 |
CN108287886A (zh) * | 2018-01-16 | 2018-07-17 | 阿里巴巴集团控股有限公司 | 同步数据变更信息的方法及装置 |
CN111723110A (zh) * | 2019-03-21 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 分布式缓存系统及关联查询和更新方法、设备与存储介质 |
CN111078693A (zh) * | 2019-11-29 | 2020-04-28 | 叮当快药科技集团有限公司 | 用于生成数据库记录主键的方法和装置 |
CN111309761A (zh) * | 2020-02-16 | 2020-06-19 | 苏州浪潮智能科技有限公司 | 一种优化数据库中间件查询的方法、系统、设备及介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114168606A (zh) * | 2021-12-10 | 2022-03-11 | 中国建设银行股份有限公司 | 主键id生成方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11321315B2 (en) | Methods and systems for database optimization | |
CN107133234B (zh) | 缓存数据更新的方法、装置及系统 | |
CN111124474B (zh) | 一种api版本控制方法及装置 | |
DE102016013248A1 (de) | Bezugsblockansammlung in einer Bezugsmenge zur Deduplizierung beim Speichermanagement | |
US20160364407A1 (en) | Method and Device for Responding to Request, and Distributed File System | |
CN107391544B (zh) | 列式存储数据的处理方法、装置、设备及计算机储存介质 | |
US20130159281A1 (en) | Efficient querying using on-demand indexing of monitoring tables | |
CN104572920A (zh) | 一种数据整理方法和装置 | |
US11151081B1 (en) | Data tiering service with cold tier indexing | |
US11777983B2 (en) | Systems and methods for rapidly generating security ratings | |
US9128962B2 (en) | View based table replacement for applications | |
US11500833B2 (en) | Archiving accelerator-only database tables | |
CN112965939A (zh) | 一种文件合并方法、装置和设备 | |
CN111444114B (zh) | 一种非易失性内存中数据的处理方法、装置及系统 | |
CN113760875A (zh) | 一种数据处理方法、装置、电子设备和存储介质 | |
CN114297196A (zh) | 元数据存储方法、装置、电子设备及存储介质 | |
US11531666B1 (en) | Indexing partitions using distributed bloom filters | |
CN112000971B (zh) | 一种文件权限记录方法、系统及相关装置 | |
CN104317820A (zh) | 报表的统计方法和装置 | |
CN115576947A (zh) | 一种数据管理方法、装置、组合库、电子设备及存储介质 | |
EP3436988B1 (en) | "methods and systems for database optimisation" | |
KR101368441B1 (ko) | 데이터베이스의 공간 재사용 장치, 방법 및 컴퓨터 판독 가능한 기록 매체 | |
US8423532B1 (en) | Managing data indexed by a search engine | |
US10970335B2 (en) | Access pattern-based distribution for distributed key-value stores | |
CN114238241B (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 |