CN115905244A - 一种基于内存批量处理数据的方法 - Google Patents

一种基于内存批量处理数据的方法 Download PDF

Info

Publication number
CN115905244A
CN115905244A CN202211721048.2A CN202211721048A CN115905244A CN 115905244 A CN115905244 A CN 115905244A CN 202211721048 A CN202211721048 A CN 202211721048A CN 115905244 A CN115905244 A CN 115905244A
Authority
CN
China
Prior art keywords
data
memory
deleted
database
class
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
Application number
CN202211721048.2A
Other languages
English (en)
Inventor
杨松贵
陈实
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Witsoft Technology Co Ltd
Original Assignee
Nanjing Witsoft Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Witsoft Technology Co Ltd filed Critical Nanjing Witsoft Technology Co Ltd
Priority to CN202211721048.2A priority Critical patent/CN115905244A/zh
Publication of CN115905244A publication Critical patent/CN115905244A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于内存批量处理数据的方法,包括以下步骤,S1,前端组装需要保存的数据,已经存在数据中但不再需要的数据需需要剔除,并向内存发起保存数据请求;S2,预置数据集合;S3,后端接收请求参数,并根据业务查询数据库中所有已存在的相关数据;S4,将查询结果数据的删除标识批量设置为已删除,并将数据添加到更新类集合;S5,在内存中解析并重新修改数据;S6,数据在内存中处理完毕,根据更新类数据集合和添加类数据集合,将数据进行持久化操作,分别执行数据库批量更新操作和批量添加操作。

Description

一种基于内存批量处理数据的方法
技术领域
本发明涉及软件开发领域,尤其涉及一种基于内存批量处理数据的方法。
背景技术
通常对于软件开发,java后端接口定义职责单一,要么处理新增或修改数据,要么删除数据,完成同一功能前端需要判断并分别调用相应接口,调用次数多且逻辑复杂,现在后端提供一种基于内存批量处理包含新增修改删除数据请求的方法,将多个操作聚合为一个接口,用于简化前端开发。
此工程问题可抽象为:针对某个功能产生的数据,可能需要持久化到数据库,可能需要更新数据,也有可能需要删除,调用多个接口处理效率低,调用次数多,且逻辑复杂。
发明内容
本发明的目的是为了解决现有技术中存在的缺点,而提出的一种基于内存批量处理数据的方法;
为实现上述目的,本发明采用了如下技术方案:一种基于内存批量处理数据的方法一种基于内存批量处理数据的方法,包括以下步骤,
S1,前端组装需要保存的数据,已经存在数据中但不再需要的数据需需要剔除,并向内存发起保存数据请求;
所述内存可为硬盘、数据库等;
S2,预置数据集合;
对需要保存的业务数据预先定义好数据集合;
所述数据集合包括两种,一种是更新类集合,一种是添加类集合;
S3,后端接收请求参数,并根据业务查询数据库中所有已存在的相关数据;
S4,将查询结果数据的删除标识批量设置为已删除,并将数据添加到更新类集合;
S5,在内存中解析并重新修改数据;
解析数据循环遍历数据,判断数据的主键id是否为null;
S6,数据在内存中处理完毕,根据更新类数据集合和添加类数据集合,将数据进行持久化操作,分别执行数据库批量更新操作和批量添加操作。
优选地,步骤S4还包括以下子步骤,
S4-1,查询mysql数据库中已存在并且没有被删除的数据;
S4-2,将查询出来的数据先在内存中标记为已删除;
S4-3,将这些标记为已删除的数据放到更新类集合中,同时复制该类数据并存放到Map集合中;。
优选地,步骤S5还包括以下子步骤,
S5-1,若数据的主键id为null,则执行新增数据逻辑;
对于数据的子集重复S5步骤;
S5-2,若数据的主键id不为null,则执行更新数据逻辑;
S5-3,对于请求中需要保存的数据不包含已删除的部分数据,则该部分数据将不会从已删除重置为未删除。
与现有技术相比,本发明的有益效果为:依据本发明的处理数据的方法,极大的减少前后端开发的工作量,简化了业务处理逻辑,提高开发效率和业务处理效率,基于内存处理删除数据和批量保存数据库,极大的减少了数据库访问次数,提高了***性能。
附图说明
图1为本发明的一种基于内存批量处理数据的方法的流程图。
具体实施方式
为使对本发明的目的、构造、特征、及其功能有进一步的了解,兹配合实施例详细说明如下。
请参阅图1,本发明一实施例的基于内存批量处理数据的方法,包括以下步骤:
S1,前端组装需要保存的数据,已经存在数据中但不再需要的数据需需要剔除,并向内存发起保存数据请求;
所述内存可为硬盘、数据库等;
S2,预置数据集合;
对需要保存的业务数据预先定义好数据集合;
所述数据集合包括两种,一种是更新类集合,一种是添加类集合;
S3,后端接收请求参数,并根据业务查询数据库中所有已存在的相关数据;
S4,将查询结果数据的删除标识批量设置为已删除,并将数据添加到更新类集合;
S4-1,查询mysql数据库中已存在并且没有被删除的数据;
S4-2,将查询出来的数据先在内存中标记为已删除;
S4-3,将这些标记为已删除的数据放到更新类集合中,同时复制该类数据并存放到Map集合中;
Map集合,一种key-value类型的集合,key为数据的主键id,value为数据本身,方便后续对数据操作;
在内存中标记并不需要操作数据库,因为数据此时还不是最终状态,可以减少对数据库的访问次数,相较于访问数据库修改数据库数据状态,大大提高了效率,同时还减少了数据库资源占用,提高了数据库的性能;
S5,在内存中解析并重新修改数据;
解析数据循环遍历数据,判断数据的主键id是否为null;
S5-1,若数据的主键id为null,说明此条数据是新增的,执行新增数据逻辑,状态标识设为未删除,存放到添加类集合;
对于数据的子集重复S5步骤;
S5-2,若数据的主键id不为null,说明此条数据已经存在数据库中,执行更新数据逻辑,根据主键id从已删除数据的Map集合中获取到该数据,将请求中需要保存的数据替换掉该数据内容,并将状态标识从已删除状态重新设置为未删除;
S5-3,对于请求中需要保存的数据不包含已删除的部分数据,则该部分数据将不会从已删除重置为未删除,依旧存放于更新类集合中,最终一起更新到数据库中,变成真正的已删除数据;
S6,数据在内存中处理完毕,根据更新类数据集合和添加类数据集合,将数据进行持久化操作,分别执行数据库批量更新操作和批量添加操作。
以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (3)

1.一种基于内存批量处理数据的方法,其特征在于:包括以下步骤,
S1,前端组装需要保存的数据,已经存在数据中但不再需要的数据需需要剔除,并向内存发起保存数据请求;
所述内存可为硬盘、数据库等;
S2,预置数据集合;
对需要保存的业务数据预先定义好数据集合;
所述数据集合包括两种,一种是更新类集合,一种是添加类集合;
S3,后端接收请求参数,并根据业务查询数据库中所有已存在的相关数据;
S4,将查询结果数据的删除标识批量设置为已删除,并将数据添加到更新类集合;
S5,在内存中解析并重新修改数据;
解析数据循环遍历数据,判断数据的主键id是否为null;
S6,数据在内存中处理完毕,根据更新类数据集合和添加类数据集合,将数据进行持久化操作,分别执行数据库批量更新操作和批量添加操作。
2.如权利要求1所述的基于内存批量处理数据的方法,其特征在于:步骤S4还包括以下子步骤,
S4-1,查询mysql数据库中已存在并且没有被删除的数据;
S4-2,将查询出来的数据先在内存中标记为已删除;
S4-3,将这些标记为已删除的数据放到更新类集合中,同时复制该类数据并存放到Map集合中。
3.如权利要求1所述的基于内存批量处理数据的方法,其特征在于:步骤S5还包括以下子步骤,
S5-1,若数据的主键id为null,则执行新增数据逻辑;
对于数据的子集重复S5步骤;
S5-2,若数据的主键id不为null,则执行更新数据逻辑;
S5-3,对于请求中需要保存的数据不包含已删除的部分数据,则该部分数据将不会从已删除重置为未删除。
CN202211721048.2A 2022-12-30 2022-12-30 一种基于内存批量处理数据的方法 Pending CN115905244A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211721048.2A CN115905244A (zh) 2022-12-30 2022-12-30 一种基于内存批量处理数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211721048.2A CN115905244A (zh) 2022-12-30 2022-12-30 一种基于内存批量处理数据的方法

Publications (1)

Publication Number Publication Date
CN115905244A true CN115905244A (zh) 2023-04-04

Family

ID=86482418

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211721048.2A Pending CN115905244A (zh) 2022-12-30 2022-12-30 一种基于内存批量处理数据的方法

Country Status (1)

Country Link
CN (1) CN115905244A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116107572A (zh) * 2023-04-07 2023-05-12 苏州万店掌网络科技有限公司 一种批量操作持久化对象方法、装置、计算机设备和介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116107572A (zh) * 2023-04-07 2023-05-12 苏州万店掌网络科技有限公司 一种批量操作持久化对象方法、装置、计算机设备和介质

Similar Documents

Publication Publication Date Title
US6567809B2 (en) Disabling and reloading enterprise java beans using database trigger programs
US6304867B1 (en) System and method for enhanced performance of a relational database management system through the use of application-specific memory-resident data
US7533136B2 (en) Efficient implementation of multiple work areas in a file system like repository that supports file versioning
CN109144994A (zh) 索引更新方法、***及相关装置
CN107038222B (zh) 数据库缓存实现方法及其***
US7949685B2 (en) Modeling and implementing complex data access operations based on lower level traditional operations
US7020659B2 (en) System and method for managing bi-directional relationships between objects
CN110188114B (zh) 一种数据操作的优化方法、装置、***、设备和存储介质
US20070250517A1 (en) Method and Apparatus for Autonomically Maintaining Latent Auxiliary Database Structures for Use in Executing Database Queries
CN109299101B (zh) 数据检索方法、装置、服务器和存储介质
CN112015741A (zh) 一种海量数据的分库分表存储方法与装置
WO2021169496A1 (zh) 数据读取方法、装置、设备及存储介质
CN115905244A (zh) 一种基于内存批量处理数据的方法
CN114817974A (zh) 动态数据脱敏方法及***、数据安全处理方法及***
CN108874837B (zh) 数据库分库方法、装置、中间件及存储介质和电子设备
CN115794874A (zh) 一种异构数据库***中加速gpu算子执行的方法及应用
CN115269631A (zh) 数据查询方法、数据查询***、设备及存储介质
CN111352936A (zh) Es重建索引的方法、存储介质
AU7879598A (en) Language manager interface
CN117421302A (zh) 一种数据处理方法及相关设备
US8285755B2 (en) Partial updating in a database proxy driver
US9009731B2 (en) Conversion of lightweight object to a heavyweight object
CN115098503A (zh) 空值数据处理方法、装置、计算机设备以及存储介质
CN114925142A (zh) 一种orm框架的多类型数据库兼容方法、装置、设备及介质
CN110222105B (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