CN111858546A - 数据处理方法、装置及系统 - Google Patents

数据处理方法、装置及系统 Download PDF

Info

Publication number
CN111858546A
CN111858546A CN202010571527.5A CN202010571527A CN111858546A CN 111858546 A CN111858546 A CN 111858546A CN 202010571527 A CN202010571527 A CN 202010571527A CN 111858546 A CN111858546 A CN 111858546A
Authority
CN
China
Prior art keywords
data
database
desensitization
log file
incremental
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
CN202010571527.5A
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.)
NetsUnion Clearing Corp
Original Assignee
NetsUnion Clearing Corp
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 NetsUnion Clearing Corp filed Critical NetsUnion Clearing Corp
Priority to CN202010571527.5A priority Critical patent/CN111858546A/zh
Publication of CN111858546A publication Critical patent/CN111858546A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提出一种数据处理方法、装置及系统,方法包括:获取生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况;将第一日志文件发送给备份数据库,以使备份数据库根据第一日志文件确定生产数据库中的增量数据,并对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储于备份数据库中;获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。本申请实现了实时自动化地数据脱敏,以及生产环境数据至测试环境的实时同步,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,解决相关技术中由人工对敏感数据进行脱敏处理,耗时长,效率低,导致软件开发人员无法及时地排查bug的技术问题。

Description

数据处理方法、装置及系统
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据处理方法、装置及系统。
背景技术
在软件产品开发和上线测试过程中,软件开发人员常需要使用生产环境中的数据排查bug,软件测试人员需要使用数据量和数据结构与生产环境中实际数据类似的测试数据进行产品上线前的测试。然而,生产环境中的数据通常包含用户的个人信息,比如手机号码、身份证号码等敏感数据,无法直接提供给软件开发人员和软件测试人员使用,需要由数据库管理员对生产环境中的数据进行脱敏处理后,将脱敏后的数据提供给软件开发人员和软件测试人员使用。
这种由人工对敏感数据进行脱敏处理的方式,耗时较长,数据脱敏效率低,影响了软件开发人员排查bug的及时性。
发明内容
本申请提出一种数据处理方法、装置及系统,用于解决相关技术中由人工对敏感数据进行脱敏处理,耗时长,效率低,导致软件开发人员无法及时地排查bug的技术问题。
本申请第一方面实施例提出了一种数据处理方法,应用于调度中心,包括:
获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
将所述第一日志文件发送给备份数据库,以使所述备份数据库根据所述第一日志文件确定所述生产数据库中的增量数据,并对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储于所述备份数据库中;
获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中。
本申请第二方面实施例提出了一种数据处理方法,应用于备份数据库,包括:
接收生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
基于主从同步机制,对所述第一日志文件中的更新信息进行解析,得到所述生产数据库中的增量数据;
按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储。
本申请第三方面实施例提出了一种数据处理方法,应用于调度中心,包括:
获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
根据所述第一日志文件,获取所述生产数据库中的增量数据;
按照预设的数据脱敏规则对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据;
将所述脱敏数据存储至开发数据库和/或测试数据库中。
本申请第四方面实施例提出了一种数据处理系统,包括生产数据库、备份数据库和调度中心,其中,
所述生产数据库用于提供第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
所述调度中心用于获取所述生产数据库的第一日志文件,并将所述第一日志文件发送给所述备份数据库;
所述备份数据库用于根据所述第一日志文件确定所述生产数据库中的增量数据,并对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储于所述备份数据库中;
所述调度中心还用于获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中。
本申请第五方面实施例提出了一种数据处理装置,应用于调度中心,包括:
第一获取模块,用于获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
发送模块,用于将所述第一日志文件发送给备份数据库,以使所述备份数据库根据所述第一日志文件确定所述生产数据库中的增量数据,并对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储于所述备份数据库中;
第二获取模块,用于获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中。
本申请第六方面实施例提出了一种数据处理装置,应用于备份数据库,包括:
接收模块,用于接收生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
解析模块,用于基于主从同步机制,对所述第一日志文件中的更新信息进行解析,得到所述生产数据库中的增量数据;
处理模块,用于按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储。
本申请第七方面实施例提出了一种数据处理装置,应用于调度中心,包括:
第三获取模块,用于获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
第四获取模块,用于根据所述第一日志文件,获取所述生产数据库中的增量数据;
脱敏处理模块,用于按照预设的数据脱敏规则对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据;
存储模块,用于将所述脱敏数据存储至开发数据库和/或测试数据库中。
本申请第八方面实施例提出了一种计算机设备,包括处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如前述第一方面实施例所述的数据处理方法,或者实现如前述第二方面实施例所述的数据处理方法,或者实现如前述第三方面实施例所述的数据处理方法。
本申请第九方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现如前述第一方面实施例所述的数据处理方法,或者实现如前述第二方面实施例所述的数据处理方法,或者实现如前述第三方面实施例所述的数据处理方法。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过对生产数据库中的增量数据进行脱敏处理生成脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中,不仅实现了实时自动化地数据脱敏,还实现了生产环境数据至测试环境的实时同步,同步至测试环境的数据为脱敏处理后的数据,确保了数据安全性,保护了用户的隐私,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,并且,实现了仅对当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而提高了软件开发人员排查bug和测试人员进行软件产品交付的时效性。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请一实施例提出的数据处理方法的流程示意图;
图2为本申请另一实施例提出的数据处理方法的流程示意图;
图3是本申请又一实施例提出的数据处理方法的流程示意图;
图4为本申请再一实施例提出的数据处理方法的流程示意图;
图5为本申请还一实施例提出的数据处理方法的流程示意图;
图6(a)是本申请实施例的数据处理过程示例图一;
图6(b)是本申请实施例的数据处理过程示例图二;
图7为本申请一实施例提出的数据处理系统的结构示意图;
图8为本申请一实施例提出的数据处理装置的结构示意图;
图9为本申请另一实施例提出的数据处理装置的结构示意图;以及
图10为本申请又一实施例提出的数据处理装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的数据处理方法、装置及系统。
在互联网领域中,软件产品的版本发布比较快,新版本上线周期较短。在软件产品开发和上线过程中,软件开发人员需要查询线上数据(即生产环境中的数据)来排查bug,软件测试人员也需要在预发布环境中对软件产品进行上线前测试,软件测试要求测试数据的数据量以及数据结构和真实的线上环境类似。
线上生产环境的数据库通常采用开源的MySQL数据库,一些数据表中存储了用户个人信息,比如手机号码、身份证号码、地址、邮箱、微信号等敏感数据。为了保护用户隐私,线上数据无法直接提供给软件开发人员查询,也不能直接导出MySQL数据库给软件测试人员使用,需要数据管理员对线上数据进行脱敏处理后,将脱敏后的数据返回给软件开发人员进行bug排查,以及将脱敏后的数据导入测试环境中,供软件测试人员使用。
具体地,软件开发人员需要和数据库管理员沟通,由数据库管理员配合查询,数据库管理员将数据中的敏感数据隐藏处理后返回给软件开发人员排查,通常需要反复多次沟通,导致软件开发人员排查bug的及时性较差,bug影响范围较大,业务有损时间长。
对于测试环境需要的预发布环境数据库,需要数据库管理员导出线上数据进行加工,对敏感数据列进行更新操作,将敏感数据更改为其他数据,对数据中的全部敏感数据进行处理后,在测试环境中导入数据,供软件测试人员使用。由于软件产品的新版本上线周期较短,软件测试人员需要基于前一版本和数据进行预发布环境测试,这要求数据库管理员频繁地处理数据,尤其在数据量较大的情况下,数据处理速度较慢,导致软件产品无法快速交付。
可见,现有的由人工对敏感数据进行脱敏处理的方式,耗时较长,数据脱敏效率低,影响了软件产品的问题排查和交付效率。
针对上述问题,本申请提供了一种数据处理方法,通过仅对生产数据库中的增量数据进行脱敏处理得到对应的脱敏数据,再将脱敏数据存储至开发数据库和/或测试数据库中,不仅实现了实时自动化地数据脱敏,还实现了生产环境数据至测试环境的实时同步,同步至测试环境的数据为脱敏处理后的数据,确保了数据安全性,保护了用户的隐私,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,并且,仅对生产数据库中当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而提高了软件开发人员排查bug的时效性。
图1为本申请一实施例提出的数据处理方法的流程示意图,本实施例的数据处理方法可以应用于调度中心,调度中心用于对多个数据库进行调度,调度中心比如可以是安装在台式电脑、笔记本电脑、智能手机等计算机设备上的数据库调度工具。
如图1所示,该数据处理方法可以包括以下步骤:
步骤101,获取生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况。
其中,生产数据库可以采用MySQL数据库,生产数据库中存储的是软件产品上线之后,用户在真实环境中使用软件产品产生的数据,比如,用户在使用软件产品时进行信息注册,则用户注册的个人信息会存储在生产数据库中。
第一日志文件为生产数据库对应的二进制日志文件,用于记录生产数据库中数据的变化情况。当生产数据库中的数据发生变动时,比如生产数据库中发生插入数据、删除数据、改写数据等操作时,第一日志文件中记录这些操作,生产数据库的从数据库通过执行第一日志文件中记录的内容,即可同步生产数据库中发生变化的数据。
本实施例中,当生产数据库中的数据发生变化时,调度中心可以获取生产数据库对应的第一日志文件。
作为一种可能的实现方式,调度中心获取生产数据库对应的第一日志文件时,可以监测生产数据库中的数据是否发生变化,在监测到生产数据库中的数据发生变化的情况下,获取生产数据库对应的第一日志文件。比如,调度中心可以通过设置监测线程来监测生产数据库中数据的变化情况,当通过监测线程监测到生产数据库中发生数据更改、添加等操作时,可以确定生产数据库中发生了数据变化,则调度中心获取生产数据库的第一日志文件。
作为一种可能的实现方式,调度中心获取生产数据库对应的第一日志文件时,可以监测生产数据库中是否发生预设数据操作,若监测到生产数据库中发生了预设数据操作,则在监测到预设数据操作时开始计时,若在预设时长内未再次监测到预设数据操作,则获取生产数据库的第一日志文件。其中,预设数据操作可以是插入数据、删除数据、改写数据等多种数据操作的集合;预设时长可以预先设定,比如设置预设时长为10秒、30秒等。当调度中心监测到生产数据库中发生预设数据操作时,比如监测到生产数据库中发生了删除数据操作,则启动计时器开始计时,若在计时达到预设时长前,又监测到新的预设数据操作,比如监测到插入数据操作,则计时清零后重新控制计时器开始计时,也就是说,每次在预设时长内监测到预设数据操作中的任一种数据操作时,则控制计时器重新开始计时。当计时器的计时达到预设时长时,如果调度中心未再次监测到预设数据操作中的任一种数据操作,则获取生产数据库的第一日志文件。
步骤103,将第一日志文件发送给备份数据库,以使备份数据库根据第一日志文件确定生产数据库中的增量数据,并对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储于备份数据库中。
本实施例中,调度中心获取了生产数据库的第一日志文件后,可以将获取的第一日志文件发送给备份数据库。备份数据库接收到第一日志文件后,可以对第一日志文件进行解析,以确定生产数据库中的增量数据,并对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据,脱敏数据存储在备份数据库中。
备份数据库根据第一日志文件确定增量数据时,可以利用MySQL数据库的主从同步机制,将生产数据库中的数据复制到备份数据库中,此时,生产数据库为主数据库,备份数据库为从数据库。主从数据库之间的主从同步是基于二进制日志机制实现的,主数据库使用二进制日志文件来记录数据库的变动情况,从数据库通过执行该二进制日志文件中记录的语句来保持和主数据库的数据一致。因此本实施例中,备份数据库接收到生产数据库的第一日志文件后,可以利用主从同步机制获取生产数据库中插入、删除、改写的数据,并将当前获取的数据确定为增量数据。进而,备份数据库可以按照预设的数据脱敏规则,对增量数据进行脱敏处理,生成脱敏数据并存储于备份数据库中。
步骤105,获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。
本实施例中,调度中心可以获取备份数据库生成的脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。
作为一种示例,备份数据库对增量数据进行脱敏处理完成后,可以主动将生成的脱敏数据发送给调度中心,由调度中心将脱敏数据存储至开发数据库和/或测试数据库中。
作为一种示例,备份数据库对增量数据进行脱敏处理完成后,可以向调度中心反馈脱敏完成回执,以告知调度中心已完成对数据的脱敏处理。当调度中心接收到脱敏完成回执后,从备份数据库获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。
本实施例中,调度中心将脱敏数据存储至测试环境中的开发数据库和/或测试数据库时,可以通过网络直接将脱敏数据发送至开发数据库和/或测试数据库中进行存储,或者,也可以借助第三方工具,先将脱敏数据发送给第三方工具,再由第三方工具将脱敏数据发送给开发数据库和/或测试数据库中进行存储,本申请对调度中心将脱敏数据存储至开发数据库和/或测试数据库的具体实现方式不作限制。
在本申请实施例一种可能的实现方式中,调度中心可以将脱敏数据直接存储至测试数据库中,实现了脱敏处理后的数据至测试数据库的直接备份,提供给测试人员进行预发布环境,无需数据库管理员对线上环境的数据进行脱敏处理后再导入测试环境,实现了快速响应上线前测试对预发布的需求,能够采用类似于真实的线上环境来进行性能测试以及预发布,进一步降低bug的同时,实现了软件产品的快速交付。
在本申请实施例一种可能的实现方式中,当调度中心仅将脱敏数据存储至开发数据库中时,还可以采用热备份方式,将开发数据库中的数据备份至测试数据库中,以用于软件测试。进行热备份时,可以采用开源的工具比如xtrabackup,对开发数据库中的数据进行实时备份,并传输至测试数据库中进行快速恢复。由于开发数据库和测试数据库均处于测试环境中,两者之间可以采用局域网传输数据,传输速度快。
实际应用中,可以对开发数据库建立只读账号,比如shengchan_readonly类型的只读账号,软件开发人员可以通过只读账号登录开发数据库并查询数据,但是不能修改数据,以确保开发数据库的完整性,保持与线上环境类似的测试环境。
一般而言,测试环境和生产环境是独立的,生产环境到测试环境之间通过专线进行连接,网络带宽有限,从生产环境备份数据到测试环境的速度受制于带宽,传输时间较长。而本实施例中,通过获取生产数据库中的增量数据,仅对生产数据库中变动的数据进行同步,即仅备份与前一次备份的数据相比增加或修改的数据并对其进行脱敏处理,这种增量同步的方式可以不占用过大的专线带宽,能够确保专线的带宽节省,避免带宽占用较大导致其他软件产品无法使用专线的情况,也可以实现数据的实时同步。
本实施例的数据处理方法,调度中心通过获取生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况,将第一日志文件发送给备份数据库,以使备份数据库根据第一日志文件确定生产数据库中的增量数据,并对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储于备份数据库中,进而调度中心获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。由此,不仅实现了实时自动化地数据脱敏,还实现了生产环境数据至测试环境的实时同步,同步至测试环境的数据为脱敏处理后的数据,确保了数据安全性,保护了用户的隐私,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,并且,通过备份数据库根据生产数据库的第一日志文件确定出生产数据库中的增量数据并进行脱敏处理,实现了仅对当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而提高了软件开发人员排查bug和测试人员进行软件产品交付的时效性。
在本申请实施例一种可能的实现方式中,备份数据库对增量数据进行脱敏处理时,不仅生成与增量数据对应的脱敏数据,还生成第二日志文件,其中,第二日志文件用于记录对增量数据进行脱敏处理生成脱敏数据的处理过程。从而,调度中心可以根据备份数据库的第二日志文件获取脱敏数据。下面结合附图2进行详细说明。
图2为本申请另一实施例提出的数据处理方法的流程示意图,如图2所示,在如图1所示实施例的基础上,步骤105可以包括以下步骤:
步骤201,获取第二日志文件。
本实施例中,第二日志文件是二进制日志文件,记录的是备份数据库中数据的变动情况,当备份数据库对获取的增量数据进行脱敏处理时,对增量数据进行脱敏处理生成脱敏数据的处理过程被记录在第二日志文件中。调度中心可以获取备份数据库的第二日志文件。比如,备份数据库可以在脱敏处理完成后向调度中心反馈脱敏完成回执,调度中心获取到脱敏完成回执后,获取备份数据库的第二日志文件。
步骤203,利用预设的第一日志解析程序,对第二日志文件进行解析以获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。
其中,第一日志解析程序为自主开发的binlog解析程序,可以采用python程序设计语言进行开发,利用第一日志解析程序,可以读取并执行第二日志文件中记录的二进制事件,从而获取到备份数据库中数据的变化。
本实施例中,调度中心获取了备份数据库的第二日志文件后,可以利用预设的第一日志解析程序,对第二日志文件进行解析,第一日志解析程序可以实现生产环境和测试环境(包括开发数据库和测试数据库)的互联,采用python编写的django框架实时解析第二日志文件获取脱敏数据,并同步脱敏数据到测试环境中的开发数据库和/或测试数据库中。
由于第二日志文件记录的是对备份数据库中的数据进行脱敏处理的操作过程,从而通过解析第二日志文件得到的数据是已经被脱敏处理后的数据,将解析后的数据存储至开发数据库和/或测试数据库中,开发数据库和/或测试数据库中的数据是脱敏处理后的数据,从而软件开发人员可以直接查询和使用开发数据库中的数据来定位bug,不需要数据库管理员配合即可进行bug排查,从而极大地缩短了bug排查时间,减少了沟通成本,提高了bug排查的效率,以及测试人员可以直接利用测试数据库进行软件测试,无需数据库管理员对线上环境的数据进行脱敏处理后再导入测试环境,实现了快速响应上线前测试对预发布的需求,能够采用类似于真实的线上环境来进行性能测试以及预发布,进一步降低bug的同时,实现了软件产品的快速交付。
需要说明的是,第一日志解析程序还可以根据实际需求被开发为能够实现数据脱敏处理功能,当利用第一日志解析程序对第二日志文件进行解析时,可以对解析到的数据再次进行脱敏处理,之后再将脱敏后的数据存在至开发数据库和/或测试数据库中,由此,经过两次脱敏处理操作,能够保证数据脱敏的彻底性。
本实施例的数据处理方法,通过获取备份数据库的第二日志文件,利用预设的第一日志解析程序,对第二日志文件进行解析以获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中,由此,通过第一日志解析程序实现了生产环境和测试环境的互联,能够直接将脱敏数据同步至测试环境的开发数据库和/或测试数据库中,方便了软件开发人员和测试人员查询对应的数据库,从而有利于提高bug排查的效率和实现软件产品的快速交付。
图3为本申请又一实施例提出的数据处理方法的流程示意图,本实施例的数据处理方法应用于备份数据库。
如图3所示,该数据处理方法可以包括以下步骤:
步骤301,接收生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况。
本实施例中,备份数据库可以从调度中心接收生产数据库的第一日志文件。调度中心获取生产数据库对应的第一日志文件,之后,将第一日志文件发送给备份数据库。
步骤303,基于主从同步机制,对第一日志文件中的更新信息进行解析,得到生产数据库中的增量数据。
主从同步是指从数据库通过执行主数据库的二进制事件,使得其数据与主数据库中的数据保持一致。其中,主数据库的二进制事件记录在主数据库对应的二进制日志文件中。
本实施例中,备份数据库接收到生产数据库的第一日志文件后,可以基于主从同步机制对第一日志文件中的更新信息进行解析,得到生产数据库中的增量数据,此时,生产数据库为主数据库,备份数据库为从数据库。
实际应用中,备份数据库接收到第一日志文件后,可以将第一日志文件中记录的二进制事件与备份数据库的中继日志中记录的内容进行比较,其中,备份数据库的中继日志中记录的内容是第一日志文件中已被执行的二进制事件,通过将新获取的第一日志文件与中间日志中的内容进行比较,可以确定出第一日志文件中的更新信息(即新增的二进制事件)。之后,备份数据库将更新信息写入中继日志中,并通过SQL线程来执行中继日志中新写入的二进制事件,得到生产数据库中新增的数据,即增量数据。
在初始时,备份数据库的中继日志为空,备份数据库获取到生产数据库的第一日志文件后,将第一日志文件中的二进制事件保存至中继日志中,备份数据库启动SQL线程从中继日志中读取二进制事件并执行,以同步生产数据库中的数据,并在执行完二进制事件后对中继日志中已被执行的二进制事件进行标记,以指示被标记的二进制事件为已经执行的事件。之后,当再次接收到第一日志文件时,备份数据库将第一日志文件与中继日志中的二进制事件进行比较,即可确定出与前一次相比第一日志文件中的更新信息,接着将第一日志文件中的更新信息保存至中继日志中,并启动SQL线程从中继日志中读取未被执行的二进制事件(即新保存的二进制事件)并执行,以同步生产数据库中的增量数据。
也就是说,备份数据库每次接收到第一日志文件时,将第一日志文件中记录的二进制事件与备份数据库的中继日志中记录的已执行的二进制事件进行比较,可以确定出第一日志文件的更新信息,进而根据该更新信息即可确定出生产数据库中与更新信息对应的增量数据。
步骤305,按照预设的数据脱敏规则,对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储。
其中,数据脱敏规则可以根据实际业务需求进行预先定义,针对不同类型的敏感数据,可以采用不同的规则进行脱敏处理。比如,对于手机号码,数据脱敏规则可以定义为将手机号码的后八位数字变更为随机数字,确保脱敏处理后的手机号码与线上的真实信息类似,但不是用户的真实号码,且每个用户的手机号是不同的;对于用户的身份证号码,可以将身份证号码的第7~14位变更为“*”,以隐藏用户的生日信息,等等。
本实施例中,确定了增量数据后,可以从增量数据中识别出敏感数据,再基于预设的数据脱敏规则,对增量数据中的敏感数据进行脱敏处理生成对应的脱敏数据并存储在备份数据库中。
实际应用中,可以预先在备份数据库中针对敏感数据对应的数据表建立触发器,当备份数据库实时同步生产数据库中的增量数据时,若敏感数据对应的数据表发生变动,则通过触发触发器来实现敏感数据的脱敏处理。其中,触发器的配置可以采用web化的方式提供给数据库管理员,由数据库管理员配置触发器对敏感数据的数据脱敏规则,在软件产品上线时实现配置化,以确保备份至备份数据库中的数据能够全部进行脱敏处理,避免遗漏。当备份数据库中敏感数据对应的数据表发生插入、删除、改写等操作时,触发器被触发,针对数据表中发生变动的数据,基于触发器中配置的数据脱敏规则对变动的数据进行脱敏处理。比如,如果手机号码所在的数据表中发生插入操作,则可以通过触发器触发替换掉手机号码后八位数字,将后八位数字变更为随机数字,确保每个用户的手机号不同且和线上真实信息类似。
通过预先配置触发器对备份数据库中的数据进行脱敏操作,使得备份数据库与生产数据库实时同步,数据也在同步过程中进行了实时的脱敏,确保了数据安全性,实现了自动化的数据脱敏。
进一步地,在本申请实施例一种可能的实现方式中,备份数据库按照预设的数据脱敏规则对增量数据进行脱敏处理,生成脱敏数据的同时,还生成第二日志文件,第二日志文件用于记录对增量数据进行脱敏处理生成脱敏数据的处理过程。当备份数据库中同步备份了生产数据库中的增量数据之后,对增量数据进行脱敏处理,脱敏处理改变了备份数据库中的数据,比如将原来记录的手机号码的后八位变更为随机的数据,这一变动会记录在第二日志文件中,从而,在对备份数据库中的增量数据进行脱敏处理时,不仅完成了数据的脱敏,还会根据脱敏处理操作生成对应的第二日志文件来记录脱敏处理操作的过程。
本实施例的数据处理方法,备份数据库通过接收生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况,并基于主从同步机制,对第一日志文件中的更新信息进行解析,得到生产数据库中的增量数据,进而按照预设的数据脱敏规则,对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储,由此,实现了仅对当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而有利于提高软件开发人员排查bug的时效性;并且,通过使用备份数据库来备份生产数据库中的增量数据,并在备份数据库中对增量数据进行脱敏处理,不仅实现了数据的实时脱敏,还保证了生产数据库中数据的完整性和安全性。
为了更加清楚地说明前述实施例中对增量数据进行脱敏处理,生成脱敏数据的具体实现过程,下面结合附图4进行详细说明。
图4为本申请再一实施例提出的数据处理方法的流程示意图。如图4所示,在如图3所示实施例的基础上,步骤305可以包括以下步骤:
步骤401,根据增量数据的数据类型,识别增量数据中的目标数据,目标数据的数据类型与预设的敏感数据类型相匹配。
其中,预设的敏感数据类型可以包括但不限于手机号码、姓名、身份证号码、微信号、地址、邮箱等。
本实施例中,获取了增量数据后,可以将增量数据的数据类型与预设的敏感数据类型相比较,若增量数据中存在与敏感数据类型匹配的数据,则将与敏感数据类型匹配的数据确定为目标数据。
步骤403,确定与目标数据相对应的目标脱敏规则。
本实施例中,针对每一种敏感数据类型,可以预先设置对应的脱敏规则,比如,设置手机号码对应的脱敏规则为随机替换手机号码的后八位数字,设置身份证号码对应的脱敏规则为将身份证号码中的生日数字替换为“*”,等等。从而,确定了目标数据后,可以根据目标数据的数据类型,确定与目标数据对应的目标脱敏规则。
步骤405,根据目标脱敏规则,对目标数据进行脱敏处理。
本实施例中,确定了目标脱敏规则后,可以根据目标脱敏规则对目标数据进行脱敏处理,生成与目标数据对应的脱敏数据。
举例而言,假设增量数据中包括手机号码,预设的敏感数据类型包括手机号码、姓名、身份证号码、微信号、地址和邮箱,则确定了增量数据后,通过将增量数据中各数据的类型与预设的敏感数据类型匹配,可以确定增量数据中的手机号码为目标数据。假设手机号码对应的脱敏规则为将手机号码的后八位变更为随机数字,则确定目标数据为手机号码后,将增量数据中的手机号码的后八位用随机数字替换。
本实施例的数据处理方法,通过根据增量数据的数据类型,识别增量数据中与预设的敏感数据类型相匹配的目标数据,并确定与目标数据相对应的目标脱敏规则,进而根据目标脱敏规则,对目标数据进行脱敏处理,由此,实现了自动化的数据脱敏,保证了数据安全性,保护了用户隐私不被泄露。
图5为本申请还一实施例提出的数据处理方法的流程示意图,本实施例的数据处理方法应用于调度中心。本实施例的数据处理方法,可以不对生产数据库中的数据进行备份,直接由调度中心利用日志解析程序解析生产数据库的二进制日志文件并进行脱敏处理,将脱敏后的数据存储至开发数据库和/或测试数据库中。下面结合附图5进行详细说明。
如图5所示,该数据处理方法可以包括以下步骤:
步骤501,获取生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况。
本实施例中,对步骤501的描述可以参见前述实施例中对步骤101的描述,为避免重复,此处不再赘述。
步骤503,根据第一日志文件,获取生产数据库中的增量数据。
本实施例中,调度中心获取了生产数据库的第一日志文件后,可以根据第一日志文件,获取生产数据库中的增量数据。
作为一种可能的实现方式中,调度中心可以利用预设的第二日志解析程序,对第一日志文件中的更新信息进行解析,获取生产数据库中的增量数据。
其中,第二日志解析程序为自主开发的binlog解析程序,可以采用python程序设计语言进行开发,利用第二日志解析程序,可以读取并执行第一日志文件中新记录的二进制事件,并将已经执行的二进制事件存储至备份文件中。
本实施例中,调度中心获取了生产数据库的第一日志文件后,可以将第一日志文件中的内容与备份文件中的内容进行比较,以确定出第一日志文件中的更新信息,其中,第一日志文件中与备份文件中不同的二进制事件即为更新信息。之后,调度中心利用第二日志解析程序对更新信息进行读取并执行,即可获取到生产数据库中与更新信息对应的增量数据。
步骤505,按照预设的数据脱敏规则对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据。
其中,数据脱敏规则可以根据实际业务需求进行预先定义,针对不同类型的敏感数据,可以采用不同的规则进行脱敏处理。比如,对于手机号码,数据脱敏规则可以定义为将手机号码的后八位数字变更为随机数字,确保脱敏处理后的手机号码与线上的真实信息类似,但不是用户的真实号码,且每个用户的手机号是不同的;对于用户的身份证号码,可以将身份证号码的第7~14位变更为“*”,以隐藏用户的生日信息,等等。
本实施例中,确定了增量数据后,可以从增量数据中识别出敏感数据,再基于预设的数据脱敏规则,对增量数据中的敏感数据进行脱敏处理,生成对应的脱敏数据。
在本申请实施例一种可能的实现方式中,按照预设的数据脱敏规则对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据,包括:根据增量数据的数据类型,识别增量数据中的目标数据,目标数据的数据类型与预设的敏感数据类型相匹配;确定与目标数据相对应的目标脱敏规则;根据目标脱敏规则,对目标数据进行脱敏处理。
需要说明的是,调度中心识别增量数据中与预设的敏感数据类型匹配的目标数据,并根据目标脱敏规则对目标数据进行脱敏处理的具体实现过程,可以参见前述实施例中的相关描述,其原理类似,此处不再赘述。
步骤507,将脱敏数据存储至开发数据库和/或测试数据库中。
本实施例中,获得脱敏数据后,可以将脱敏数据存储至开发数据库中,以用于软件开发,和/或,将脱敏数据存储至开发数据库中,以用于软件测试。
实际应用中,可以将数据脱敏规则写入第二日志解析程序中,即第二日志解析程序被开发为具备获取增量数据和能够实现数据脱敏处理的功能。从而,调度中心获取了生产数据库的第一日志文件后,利用第二日志解析程序对第一日志文件中的更新信息进行解析,可以确定出生产数据库中的增量数据,接着即可对增量数据进行脱敏处理,即利用第二日志解析程序实现增量数据获取和数据脱敏。第二日志解析程序可以实现生产环境和测试环境的互联,从而,脱敏处理后生成的脱敏数据可以直接存储至测试环境中的开发数据库和/或测试数据库中。由此,实现了测试环境与线上环境的数据实时同步,并实现了自动化的数据脱敏,不需要人工参与,提高了数据脱敏效率,保证了bug定位和软件产品交付的速度。
本申请实施例的数据处理方法,调度中心通过获取生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况,并根据第一日志文件,获取生产数据库中的增量数据,按照预设的数据脱敏规则对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据,进而将脱敏数据存储至开发数据库和/或测试数据库中,由此,不仅实现了实时自动化地数据脱敏,还实现了生产环境数据至测试环境的实时同步,同步至测试环境的数据为脱敏处理后的数据,确保了数据安全性,保护了用户的隐私,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,并且,通过获取生产数据库中的增量数据并进行脱敏处理,实现了仅对生产数据库中当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而提高了软件开发人员排查bug和测试人员进行软件产品交付的时效性。
图6(a)是本申请实施例的数据处理过程示例图一,图6(b)是本申请实施例的数据处理过程示例图二。
图6(a)中,生产环境中的生产数据库中的数据备份至备份数据库,并在备份数据库中进行数据脱敏处理,之后,利用日志解析程序对备份数据库的二进制日志文件进行解析,将解析后的数据传输至测试环境中的开发数据库,再通过热备工具恢复数据至测试数据库,以供软件测试人员进行预发布。
图6(b)中,利用日志解析程序对生产环境中的生产数据库的二进制日志文件进行解析,并对解析后的数据进行脱敏处理,得到脱敏数据,将脱敏数据传输至测试环境的开发数据库和测试数据库中。
通过如图6(a)或图6(b)所示的数据处理过程,能够实现测试环境与生产环境的数据实时同步,并实现自动化的数据脱敏,不需要人工参与,提高了数据脱敏效率,保证了bug定位和软件产品交付的速度。
为了实现上述实施例,本申请还提供了一种数据处理系统。
图7为本申请一实施例提出的数据处理系统的结构示意图。如图7所示,该数据处理系统60包括:生产数据库610、备份数据库630和调度中心650。
其中,生产数据库610用于提供第一日志文件,第一日志文件用于记录生产数据库610中数据的变化情况。
调度中心650用于获取生产数据库610的第一日志文件,并将第一日志文件发送给备份数据库630。
作为一种可能的实现方式,调度中心650具体用于监测所述生产数据库中的数据是否发生变化;在所述生产数据库中的数据发生变化的情况下,获取所述生产数据库对应的第一日志文件。
作为一种可能的实现方式,调度中心650具体用于监测所述生产数据库中是否发生预设数据操作;若所述生产数据库中发生预设数据操作,则在监测到预设数据操作时开始计时,若在预设时长内未再次监测到预设数据操作,则获取生产数据库的第一日志文件。
备份数据库630用于根据第一日志文件确定生产数据库610中的增量数据,并对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储于备份数据库630中。
调度中心650还用于获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。
进一步地,在本申请实施例一种可能的实现方式中,备份数据库630具体用于:基于主从同步机制,对所述第一日志文件中的更新信息进行解析,得到所述生产数据库中的增量数据;按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储。
其中,备份数据库630具体用于:根据所述增量数据的数据类型,识别所述增量数据中的目标数据,所述目标数据的数据类型与预设的敏感数据类型相匹配;确定与所述目标数据相对应的目标脱敏规则;根据所述目标脱敏规则,对所述目标数据进行脱敏处理。
在本申请实施例一种可能的实现方式中,备份数据库630还用于生成第二日志文件,所述第二日志文件用于记录对所述增量数据进行脱敏处理生成所述脱敏数据的处理过程。本实施例中,调度中心650具体用于获取所述第二日志文件,并利用预设的第一日志解析程序,对所述第二日志文件进行解析以获取所述脱敏数据,并将所述脱敏数据存储至所述开发数据库和/或所述测试数据库中。
需要说明的是,前述实施例中对数据处理方法实施例的解释说明,也适用于本实施例的数据处理系统,其实现原理类似,此处不再赘述。
本申请实施例的数据处理系统,通过调度中心获取生产数据库的第一日志文件,并将第一日志文件发送给备份数据库,由备份数据库根据第一日志文件确定生产数据库中的增量数据,并对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储于备份数据库中,进而调度中心获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中,由此,不仅实现了实时自动化地数据脱敏,还实现了生产环境数据至测试环境的实时同步,同步至测试环境的数据为脱敏处理后的数据,确保了数据安全性,保护了用户的隐私,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,并且,通过备份数据库根据生产数据库的第一日志文件确定出生产数据库中的增量数据并进行脱敏处理,实现了仅对当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而提高了软件开发人员排查bug的时效性,同时,通过在备份数据库中进行脱敏处理,保证了生产数据库中数据的完整性和安全性。
为了实现上述实施例,本申请还提出了一种数据处理装置。
图8为本申请一实施例提出的数据处理装置的结构示意图,应用于调度中心。如图8所示,该数据处理装置70包括:第一获取模块710、发送模块730,以及第二获取模块750。
其中,
第一获取模块710,用于获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况。
在本申请实施例一种可能的实现方式中,第一获取模块710具体用于:监测所述生产数据库中的数据是否发生变化;在所述生产数据库中的数据发生变化的情况下,获取所述生产数据库对应的第一日志文件。
在本申请实施例一种可能的实现方式中,第一获取模块710具体用于:监测所述生产数据库中是否发生预设数据操作;若所述生产数据库中发生预设数据操作,则在监测到预设数据操作时开始计时,若在预设时长内未再次监测到预设数据操作,则获取生产数据库的第一日志文件。
发送模块730,用于将所述第一日志文件发送给备份数据库,以使所述备份数据库根据所述第一日志文件确定所述生产数据库中的增量数据,并对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储于所述备份数据库中。
第二获取模块750,用于获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中。
在本申请实施例一种可能的实现方式中,第二获取模块750具体用于:获取第二日志文件;利用预设的第一日志解析程序,对所述第二日志文件进行解析以获取所述脱敏数据,并将所述脱敏数据存储至所述开发数据库和/或所述测试数据库中。其中,第二日志文件由备份数据库生成,第二日志文件用于记录对所述增量数据进行脱敏处理生成所述脱敏数据的处理过程。
需要说明的是,前述对数据处理方法实施例的解释说明,也适用于该实施例的数据处理装置,其实现原理类似,此处不再赘述。
本申请实施例的数据处理装置,调度中心通过获取生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况,将第一日志文件发送给备份数据库,以使备份数据库根据第一日志文件确定生产数据库中的增量数据,并对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储于备份数据库中,进而调度中心获取脱敏数据,并将脱敏数据存储至开发数据库和/或测试数据库中。由此,不仅实现了实时自动化地数据脱敏,还实现了生产环境数据至测试环境的实时同步,同步至测试环境的数据为脱敏处理后的数据,确保了数据安全性,保护了用户的隐私,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,并且,通过备份数据库根据生产数据库的第一日志文件确定出生产数据库中的增量数据并进行脱敏处理,实现了仅对当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而提高了软件开发人员排查bug和测试人员进行软件产品交付的时效性。
图9为本申请另一实施例提出的数据处理装置的结构示意图,应用于备份数据库。如图9所示,该数据处理装置80包括:接收模块810、解析模块830,以及处理模块850。
其中,
接收模块810,用于接收生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况。
解析模块830,用于基于主从同步机制,对所述第一日志文件中的更新信息进行解析,得到所述生产数据库中的增量数据。
处理模块850,用于按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储。
在本申请实施例一种可能的实现方式中,处理模块850具体用于:根据所述增量数据的数据类型,识别所述增量数据中的目标数据,所述目标数据的数据类型与预设的敏感数据类型相匹配;确定与所述目标数据相对应的目标脱敏规则;根据所述目标脱敏规则,对所述目标数据进行脱敏处理。
在本申请实施例一种可能的实现方式中,处理模块850还用于生成第二日志文件,所述第二日志文件用于记录对所述增量数据进行脱敏处理生成所述脱敏数据的处理过程。
需要说明的是,前述对数据处理方法实施例的解释说明,也适用于该实施例的数据处理装置,其实现原理类似,此处不再赘述。
本申请实施例的数据处理装置,备份数据库通过接收生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况,并基于主从同步机制,对第一日志文件中的更新信息进行解析,得到生产数据库中的增量数据,进而按照预设的数据脱敏规则,对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据并存储,由此,实现了仅对当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而有利于提高软件开发人员排查bug的时效性;并且,通过使用备份数据库来备份生产数据库中的增量数据,并在备份数据库中对增量数据进行脱敏处理,不仅实现了数据的实时脱敏,还保证了生产数据库中数据的完整性和安全性。
图10为本申请又一实施例提出的数据处理装置的结构示意图,应用于调度中心。如图10所示,该数据处理装置90包括:第三获取模块910、第四获取模块930、脱敏处理模块950,以及存储模块970。其中,
第三获取模块910,用于获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况。
第四获取模块930,用于根据所述第一日志文件,获取所述生产数据库中的增量数据。
在本申请实施例一种可能的实现方式中,第四获取模块930具体用于:利用预设的第二日志解析程序,对所述第一日志文件中的更新信息进行解析,获取所述生产数据库中的增量数据。
脱敏处理模块950,用于按照预设的数据脱敏规则对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据。
在本申请实施例一种可能的实现方式中,脱敏处理模块950具体用于:根据所述增量数据的数据类型,识别所述增量数据中的目标数据,所述目标数据的数据类型与预设的敏感数据类型相匹配;确定与所述目标数据相对应的目标脱敏规则;根据所述目标脱敏规则,对所述目标数据进行脱敏处理。
存储模块970,用于将所述脱敏数据存储至开发数据库和/或测试数据库中。
需要说明的是,前述对数据处理方法实施例的解释说明,也适用于该实施例的数据处理装置,其实现原理类似,此处不再赘述。
本申请实施例的数据处理装置,调度中心通过获取生产数据库对应的第一日志文件,第一日志文件用于记录生产数据库中数据的变化情况,并根据第一日志文件,获取生产数据库中的增量数据,按照预设的数据脱敏规则对增量数据进行脱敏处理,生成与增量数据对应的脱敏数据,进而将脱敏数据存储至开发数据库和/或测试数据库中,由此,不仅实现了实时自动化地数据脱敏,还实现了生产环境数据至测试环境的实时同步,同步至测试环境的数据为脱敏处理后的数据,确保了数据安全性,保护了用户的隐私,方便了软件开发人员查询数据以快速定位bug,保证了bug排查的及时性,并且,通过获取生产数据库中的增量数据并进行脱敏处理,实现了仅对生产数据库中当前新增的数据进行脱敏,无需对历史数据进行重复的脱敏处理操作,节省了数据脱敏操作的时间,提高了数据脱敏处理效率,从而提高了软件开发人员排查bug和测试人员进行软件产品交付的时效性。
为了实施上述实施例,本申请还提出一种计算机设备,包括处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如前述实施例所述的数据处理方法。
为了实施上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现如前述实施例所述的数据处理方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (19)

1.一种数据处理方法,应用于调度中心,其特征在于,包括:
获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
将所述第一日志文件发送给备份数据库,以使所述备份数据库根据所述第一日志文件确定所述生产数据库中的增量数据,并对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储于所述备份数据库中;
获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中。
2.如权利要求1所述的方法,其特征在于,所述备份数据库还生成第二日志文件,所述第二日志文件用于记录对所述增量数据进行脱敏处理生成所述脱敏数据的处理过程;
所述获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中,包括:
获取所述第二日志文件;
利用预设的第一日志解析程序,对所述第二日志文件进行解析以获取所述脱敏数据,并将所述脱敏数据存储至所述开发数据库和/或所述测试数据库中。
3.如权利要求1所述的方法,其特征在于,所述获取生产数据库对应的第一日志文件,包括:
监测所述生产数据库中的数据是否发生变化;
在所述生产数据库中的数据发生变化的情况下,获取所述生产数据库对应的第一日志文件。
4.如权利要求1所述的方法,其特征在于,所述获取生产数据库对应的第一日志文件,包括:
监测所述生产数据库中是否发生预设数据操作;
若所述生产数据库中发生预设数据操作,则在监测到预设数据操作时开始计时,若在预设时长内未再次监测到预设数据操作,则获取生产数据库的第一日志文件。
5.一种数据处理方法,应用于备份数据库,其特征在于,包括:
接收生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
基于主从同步机制,对所述第一日志文件中的更新信息进行解析,得到所述生产数据库中的增量数据;
按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储。
6.如权利要求5所述的方法,其特征在于,在所述对所述增量数据进行脱敏处理之后,还包括:
生成第二日志文件,所述第二日志文件用于记录对所述增量数据进行脱敏处理生成所述脱敏数据的处理过程。
7.如权利要求5所述的方法,其特征在于,所述按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据,包括:
根据所述增量数据的数据类型,识别所述增量数据中的目标数据,所述目标数据的数据类型与预设的敏感数据类型相匹配;
确定与所述目标数据相对应的目标脱敏规则;
根据所述目标脱敏规则,对所述目标数据进行脱敏处理。
8.一种数据处理方法,应用于调度中心,其特征在于,包括:
获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
根据所述第一日志文件,获取所述生产数据库中的增量数据;
按照预设的数据脱敏规则对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据;
将所述脱敏数据存储至开发数据库和/或测试数据库中。
9.如权利要求8所述的方法,其特征在于,所述根据所述第一日志文件,获取所述生产数据库中的增量数据,包括:
利用预设的第二日志解析程序,对所述第一日志文件中的更新信息进行解析,获取所述生产数据库中的增量数据。
10.如权利要求8所述的方法,其特征在于,所述按照预设的数据脱敏规则对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据,包括:
根据所述增量数据的数据类型,识别所述增量数据中的目标数据,所述目标数据的数据类型与预设的敏感数据类型相匹配;
确定与所述目标数据相对应的目标脱敏规则;
根据所述目标脱敏规则,对所述目标数据进行脱敏处理。
11.一种数据处理系统,其特征在于,所述数据处理系统包括生产数据库、备份数据库和调度中心,其中,
所述生产数据库用于提供第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
所述调度中心用于获取所述生产数据库的第一日志文件,并将所述第一日志文件发送给所述备份数据库;
所述备份数据库用于根据所述第一日志文件确定所述生产数据库中的增量数据,并对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储于所述备份数据库中;
所述调度中心还用于获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中。
12.如权利要求11所述的数据处理系统,其特征在于,所述备份数据库,具体用于:
基于主从同步机制,对所述第一日志文件中的更新信息进行解析,得到所述生产数据库中的增量数据;
按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储。
13.如权利要求12所述的数据处理系统,其特征在于,所述备份数据库,还用于:
生成第二日志文件,所述第二日志文件用于记录对所述增量数据进行脱敏处理生成所述脱敏数据的处理过程;
所述调度中心,具体用于获取所述第二日志文件,并利用预设的第一日志解析程序,对所述第二日志文件进行解析以获取所述脱敏数据,并将所述脱敏数据存储至所述开发数据库和/或所述测试数据库中。
14.如权利要求12所述的数据处理系统,其特征在于,所述备份数据库,具体用于:
根据所述增量数据的数据类型,识别所述增量数据中的目标数据,所述目标数据的数据类型与预设的敏感数据类型相匹配;
确定与所述目标数据相对应的目标脱敏规则;
根据所述目标脱敏规则,对所述目标数据进行脱敏处理。
15.如权利要求11所述的数据处理系统,其特征在于,所述调度中心,具体用于:
监测所述生产数据库中的数据是否发生变化;
在所述生产数据库中的数据发生变化的情况下,获取所述生产数据库对应的第一日志文件。
16.如权利要求11所述的数据处理系统,其特征在于,所述调度中心,具体用于:
监测所述生产数据库中是否发生预设数据操作;
若所述生产数据库中发生预设数据操作,则在监测到预设数据操作时开始计时,若在预设时长内未再次监测到预设数据操作,则获取生产数据库的第一日志文件。
17.一种数据处理装置,应用于调度中心,其特征在于,包括:
第一获取模块,用于获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
发送模块,用于将所述第一日志文件发送给备份数据库,以使所述备份数据库根据所述第一日志文件确定所述生产数据库中的增量数据,并对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储于所述备份数据库中;
第二获取模块,用于获取所述脱敏数据,并将所述脱敏数据存储至开发数据库和/或测试数据库中。
18.一种数据处理装置,应用于备份数据库,其特征在于,包括:
接收模块,用于接收生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
解析模块,用于基于主从同步机制,对所述第一日志文件中的更新信息进行解析,得到所述生产数据库中的增量数据;
处理模块,用于按照预设的数据脱敏规则,对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据并存储。
19.一种数据处理装置,应用于调度中心,其特征在于,包括:
第三获取模块,用于获取生产数据库对应的第一日志文件,所述第一日志文件用于记录所述生产数据库中数据的变化情况;
第四获取模块,用于根据所述第一日志文件,获取所述生产数据库中的增量数据;
脱敏处理模块,用于按照预设的数据脱敏规则对所述增量数据进行脱敏处理,生成与所述增量数据对应的脱敏数据;
存储模块,用于将所述脱敏数据存储至开发数据库和/或测试数据库中。
CN202010571527.5A 2020-06-22 2020-06-22 数据处理方法、装置及系统 Pending CN111858546A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010571527.5A CN111858546A (zh) 2020-06-22 2020-06-22 数据处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010571527.5A CN111858546A (zh) 2020-06-22 2020-06-22 数据处理方法、装置及系统

Publications (1)

Publication Number Publication Date
CN111858546A true CN111858546A (zh) 2020-10-30

Family

ID=72987745

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010571527.5A Pending CN111858546A (zh) 2020-06-22 2020-06-22 数据处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN111858546A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306992A (zh) * 2020-11-04 2021-02-02 内蒙古证联信息技术有限责任公司 一种基于互联网的大数据平台
CN112528327A (zh) * 2020-12-08 2021-03-19 杭州数梦工场科技有限公司 数据脱敏方法及装置、数据还原方法及装置
CN112668047A (zh) * 2020-12-28 2021-04-16 浪潮云信息技术股份公司 基于定时任务的数据增量静态脱敏实现方法及系统
CN112732489A (zh) * 2021-01-11 2021-04-30 上海上讯信息技术股份有限公司 基于数据库虚拟化的数据脱敏的方法及设备
CN112784298A (zh) * 2021-01-21 2021-05-11 平安普惠企业管理有限公司 日志脱敏方法、装置、计算机设备及存储介质
CN113204791A (zh) * 2021-05-28 2021-08-03 中国工商银行股份有限公司 待恢复涉敏数据的脱敏方法及脱敏装置
CN113591127A (zh) * 2021-08-16 2021-11-02 京东科技控股股份有限公司 数据脱敏方法以及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107194273A (zh) * 2017-04-20 2017-09-22 北京同余科技有限公司 可连续查询的数据脱敏方法和系统
CN109657496A (zh) * 2018-12-20 2019-04-19 中国电子科技网络信息安全有限公司 一种零拷贝全镜像的大数据静态数据库脱敏系统及方法
CN110781515A (zh) * 2019-10-25 2020-02-11 上海凯馨信息科技有限公司 一种静态数据脱敏方法及脱敏装置
CN110955673A (zh) * 2020-02-04 2020-04-03 医渡云(北京)技术有限公司 数据去标识化方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107194273A (zh) * 2017-04-20 2017-09-22 北京同余科技有限公司 可连续查询的数据脱敏方法和系统
CN109657496A (zh) * 2018-12-20 2019-04-19 中国电子科技网络信息安全有限公司 一种零拷贝全镜像的大数据静态数据库脱敏系统及方法
CN110781515A (zh) * 2019-10-25 2020-02-11 上海凯馨信息科技有限公司 一种静态数据脱敏方法及脱敏装置
CN110955673A (zh) * 2020-02-04 2020-04-03 医渡云(北京)技术有限公司 数据去标识化方法、装置、设备及存储介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306992A (zh) * 2020-11-04 2021-02-02 内蒙古证联信息技术有限责任公司 一种基于互联网的大数据平台
CN112306992B (zh) * 2020-11-04 2024-02-13 内蒙古证联信息技术有限责任公司 一种基于互联网的大数据平台系统
CN112528327A (zh) * 2020-12-08 2021-03-19 杭州数梦工场科技有限公司 数据脱敏方法及装置、数据还原方法及装置
CN112668047A (zh) * 2020-12-28 2021-04-16 浪潮云信息技术股份公司 基于定时任务的数据增量静态脱敏实现方法及系统
CN112732489A (zh) * 2021-01-11 2021-04-30 上海上讯信息技术股份有限公司 基于数据库虚拟化的数据脱敏的方法及设备
CN112784298A (zh) * 2021-01-21 2021-05-11 平安普惠企业管理有限公司 日志脱敏方法、装置、计算机设备及存储介质
CN113204791A (zh) * 2021-05-28 2021-08-03 中国工商银行股份有限公司 待恢复涉敏数据的脱敏方法及脱敏装置
CN113591127A (zh) * 2021-08-16 2021-11-02 京东科技控股股份有限公司 数据脱敏方法以及装置

Similar Documents

Publication Publication Date Title
CN111858546A (zh) 数据处理方法、装置及系统
CN109460349B (zh) 一种基于日志的测试用例生成方法和装置
CN111399873B (zh) 一种模型更新方法及装置
CN110096517B (zh) 基于分布式系统的缓存数据的监控方法、装置和系统
US9355017B2 (en) Automated error checking system for a software application and method therefor
CN108959059B (zh) 一种测试方法以及测试平台
US10990514B2 (en) Detecting problematic code changes
US10509719B2 (en) Automatic regression identification
CN113111000B (zh) 持续集成自动化测试系统和方法、电子设备、存储介质
US20180143897A1 (en) Determining idle testing periods
CN107357731A (zh) 进程产生core dump问题的监控、分析和处理方法
CN111367692A (zh) 一种搜索引擎数据处理方法、装置、电子设备及介质
CN111680008A (zh) 日志处理方法、系统、可读存储介质及智能设备
CN109960658B (zh) 应用程序编程接口测试方法、装置、电子设备及存储介质
CN109885431B (zh) 用于备份数据的方法和装置
CN113419872A (zh) 一种应用系统接口集成系统、集成方法、设备及存储介质
CN112988220A (zh) 一种应用配置更新方法、装置、存储介质及服务器
CN111385613B (zh) 一种电视系统修复方法、存储介质及应用服务器
WO2020177381A1 (zh) 服务器测试方法、装置、计算机设备及存储介质
CN107656849B (zh) 一种软件系统性能问题定位方法以及装置
CN116303320A (zh) 基于日志文件的实时任务管理方法、装置、设备及介质
CN112558982B (zh) 代码检测方法、装置及计算机设备
CN114371870A (zh) 代码扫描、提交方法及代码扫描服务器、客户端和服务端
CN114879977A (zh) 应用部署方法、装置及存储介质
CN110362464B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201030

RJ01 Rejection of invention patent application after publication