隐私数据处理方法和装置与流程

文档序号:27489311发布日期:2021-11-22 13:56阅读:103来源:国知局
1.本文件涉及计算机
技术领域
:,尤其涉及一种隐私数据处理方法和装置。
背景技术
::2.隐私数据在不同业务单元之间流转的过程中,其加工使用可能会引发合规的问题,因而需要对隐私数据进行管理,以便能够快速的对隐私数据进行溯源、纠错等。3.目前,传统的隐私数据管理方案大多采用正则表达式、语法树解析或者相关关键词匹配的方式获取隐私数据之间的上下游关系,并通过关系型数据库对隐私数据之间的上下游关系进行存储,进而使用表查询方式来实现相关隐私数据的管理和回溯功能。但是,这种方式本质上是一种面向“点”的数据管理方式,管理粒度较粗,不同隐私数据之间是割裂的,且当隐私数据之间存在多层级的关系时,对隐私数据来源的回溯过程存在较高的复杂性。4.基于此,当前亟需一种能够实现对隐私数据进行精细化且高效管理的隐私数据处理方案。技术实现要素:5.本说明书实施例目的是提供一种隐私数据处理方法和装置,以能够实现对隐私数据的精细化且高效管理。6.为了实现上述目的,本说明书实施例采用下述技术方案:7.第一方面,提供一种隐私数据处理方法,包括:8.获取对源数据库执行的涉及隐私数据的结构化查询sql语句和与所述隐私数据相关的辅助信息,所述辅助信息用于描述所述隐私数据所在的字段及数据表的属性;9.对获取的sql语句进行语义解析,以得到所述源数据库中的隐私数据之间的血缘关系信息,所述血缘关系信息用于指示所述隐私数据所在的字段之间的关联关系、所述隐私数据所在的数据表之间的关联关系以及所述字段和所述数据表之间的关联关系;10.基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式,所述图谱数据模式包括多个节点和连接不同节点的边,所述节点表示字段或数据表,所述边表示相连接的节点之间的关联关系;11.基于所述图谱数据模式和所述辅助信息,将所述辅助信息存储至所述目标图数据库中。12.第二方面,提供一种隐私数据处理装置,包括:13.第一获取单元,获取对源数据库执行的涉及隐私数据的结构化查询sql语句和与所述隐私数据相关的辅助信息,所述辅助信息用于描述所述隐私数据所在的字段及数据表的属性;14.解析单元,对获取的sql语句进行语义解析,以得到所述源数据库中的隐私数据之间的血缘关系信息,所述血缘关系信息用于指示所述隐私数据所在的字段之间的关联关系、所述隐私数据所在的数据表之间的关联关系以及所述字段和所述数据表之间的关联关系;15.创建单元,基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式,所述图谱数据模式包括多个节点和连接不同节点的边,所述节点表示字段或数据表,所述边表示相连接的节点之间的关联关系;16.存储单元,基于所述图谱数据模式和所述辅助信息,将所述辅助信息存储至所述目标图数据库中。17.第三方面,提供一种电子设备,包括:18.处理器;以及19.被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:20.获取对源数据库执行的涉及隐私数据的结构化查询sql语句和与所述隐私数据相关的辅助信息,所述辅助信息用于描述所述隐私数据所在的字段及数据表的属性;21.对获取的sql语句进行语义解析,以得到所述源数据库中的隐私数据之间的血缘关系信息,所述血缘关系信息用于指示所述隐私数据所在的字段之间的关联关系、所述隐私数据所在的数据表之间的关联关系以及所述字段和所述数据表之间的关联关系;22.基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式,所述图谱数据模式包括多个节点和连接不同节点的边,所述节点表示字段或数据表,所述边表示相连接的节点之间的关联关系;23.基于所述图谱数据模式和所述辅助信息,将所述辅助信息存储至所述目标图数据库中。24.第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:25.获取对源数据库执行的涉及隐私数据的结构化查询sql语句和与所述隐私数据相关的辅助信息,所述辅助信息用于描述所述隐私数据所在的字段及数据表的属性;26.对获取的sql语句进行语义解析,以得到所述源数据库中的隐私数据之间的血缘关系信息,所述血缘关系信息用于指示所述隐私数据所在的字段之间的关联关系、所述隐私数据所在的数据表之间的关联关系以及所述字段和所述数据表之间的关联关系;27.基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式,所述图谱数据模式包括多个节点和连接不同节点的边,所述节点表示字段或数据表,所述边表示相连接的节点之间的关联关系;28.基于所述图谱数据模式和所述辅助信息,将所述辅助信息存储至所述目标图数据库中。29.本说明书实施例的方案,通过对源数据库执行的、涉及隐私数据的sql语句进行语义解析,来获得包含隐私数据所在的字段之间的关联关系、隐私数据所在的数据表之间的关联关系以及隐私数据所在的字段与数据表之间的关联关系在内的源数据库中隐私数据之间的血缘关系信息,所得到的血缘关系信息能够更精细地反映隐私数据之间的血缘关系;基于血缘关系信息在目标图数据库中创建表征隐私数据之间的血缘关系的图谱数据模式(schema),而图谱数据模式中的节点表征字段或数据表,图谱数据模式中的边表征相连接的节点之间的关联关系,进一步基于图谱数据模式将辅助信息存储至目标图数据库中,使得隐私数据之间的血缘关系能够以知识图谱的形式进行存储,实现将对隐私数据的管理由“点”推向“面”,进而能够更方便快捷地利用隐私数据之间的血缘关系对隐私数据实施纠错、溯源、合规性判定等,提高对隐私数据管理的效率和便捷性。附图说明30.此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:31.图1为本说明书的一个实施例的隐私数据处理方法的整体方案流程示意图;32.图2为本说明书的另一个实施例的隐私数据处理方法的整体方案流程示意图;33.图3为本说明书的又一个实施例的隐私数据处理方法的整体方案流程示意图;34.图4为本说明书的一个实施例提供的一种隐私数据处理方法的流程示意图;35.图5为本说明书的一个实施例提供的一种图谱数据模式的示意图;36.图6为本说明书的另一个实施例提供的一种隐私数据处理方法的流程示意图;37.图7为本说明书的一个实施例提供的一种隐私数据处理装置的结构示意图;38.图8为本说明书的一个实施例提供的一种电子设备的结构示意图。具体实施方式39.为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件保护的范围。40.部分概念的说明:41.元数据(metadata):又称为中介数据、中继数据,为描述数据的数据(dataaboutdata),其主要用于描述数据的属性(property),用于支持如指示存储位置、历史数据、资源查找、文件记录等功能。元数据算是一种电子式目录,为了达到编制目录的目的,需在描述并收藏数据的内容或特色,进而达成协助数据检索的目的。42.血缘关系:用于刻画数据与数据之间的上下游关系。43.图数据库:是一种非关系型数据库,它应用图形理论存储实体之间的关系信息,比如社会网络中人与人之间的关系。相较于关系型数据库而言,图数据库的独特设计能够弥补关系型数据库存储“关系型”数据时存在的查询复杂、缓慢、超出预期等缺陷。44.隐私数据(privatedata):即秘密数据,是指不想被他人或无关人等获知的数据。从隐私的所有者的角度,可以将隐私数据分为个人隐私数据和共同隐私数据,其中,个人隐私数据包括可以用于定位或者识别个人的信息(如电话号码、地址、信用卡号等)和敏感信息(如个人健康情况、财务信息、公司重要文件等);共同隐私数据主要以家庭隐私为主,如家庭年收入情况等。隐私数据的泄露和滥用极易引起各种个人和公共安全问题。45.知识图谱(knowledgegraph):在图书情报界称为知识域可视化或知识域映射地图,是显示知识发展进程与结构关系的一系列各种不同的图形,用可视化技术描述知识资源及其载体,挖掘、分析、构建、绘制和显示知识及它们之间的相关联系。46.如前所述,传统的隐私数据管理方案大多采用正则表达式、语法树解析或者相关关键词匹配的方式获取隐私数据之间的上下游关系,并通过关系型数据库对隐私数据之间的上下游关系进行存储,如下表1所示,进而使用表查询方式来实现相关隐私数据的管理和回溯功能。但是,这种方式本质上是一种面向“点”的数据管理方式,管理粒度较粗,不同隐私数据之间是割裂的,且当隐私数据之间存在多层级的关系时,对隐私数据来源的回溯过程存在较高的复杂性。47.表1[0048][0049][0050]为此,本说明书实施例旨在提供一种隐私数据处理方案,通过对源数据库执行的、涉及隐私数据的sql语句进行语义解析,来获得包含隐私数据所在的字段之间的关联关系、隐私数据所在的数据表之间的关联关系以及隐私数据所在的字段与数据表之间的关联关系在内的源数据库中隐私数据之间的血缘关系信息,所得到的血缘关系信息能够更精细地反映隐私数据之间的血缘关系;基于血缘关系信息在目标图数据库中创建表征隐私数据之间的血缘关系的图谱数据模式(schema),而图谱数据模式中的节点表征字段或数据表,图谱数据模式中的边表征相连接的节点之间的关联关系,进一步基于图谱数据模式将辅助信息存储至目标图数据库中,使得隐私数据之间的血缘关系能够以知识图谱的形式进行存储,实现将对隐私数据的管理由“点”推向“面”,进而能够更方便快捷地利用隐私数据之间的血缘关系对隐私数据实施纠错、溯源、合规性判定等,提高对隐私数据管理的效率和便捷性。[0051]应理解,本说明书实施例提供的隐私数据处理方法可以由电子设备执行或安装在电子设备中的软件执行,具体可以由终端设备或服务端设备执行。[0052]以下结合附图,详细说明本说明书各实施例提供的技术方案。[0053]为了便于理解,下面先对本说明书实施例提供的隐私数据处理方法的整体方案流程进行简单介绍。请参考图1至图3,为本说明书实施例的隐私数据处理方法的整体方案流程示意图。如图1所示,本说明书实施例的隐私数据处理方法的整体方案流程包括依次在数据层、中间层和知识图谱层等的方案。[0054]在数据层中,源数据库中存储有业务数据、业务数据的元数据信息、操作日志信息、结构化查询语句(structuredquerylanguage,sql)执行信息等,为中间层和位于上层的知识图谱层提供输入。其中,源数据库可以例如包括但不限于以下数据库中的至少一种:开放数据处理服务(opendataprocessingservice,odps)数据库、数据资源平台(dataq)、mysql、qracle等。操作日志信息用于记录对源数据库执行的sql语句的拥有者、执行时间等额外信息,sql执行信息用于记录对源数据库执行的sql语句等,业务数据的元数据信息用于描述业务数据所在的数据表及数据表中字段各自的属性等。[0055]在中间层中,通过对源数据库中存储的业务数据进行隐私数据扫描,可以识别出源数据库中存储的涉及隐私的业务数据(以下称为“隐私数据”);通过对源数据库中存储的元数据库信息进行解析,可以得到隐私数据的属性信息(如隐私数据的数据类型等);通过对数据层的sql执行信息进行解析,可以获得sql语句中描述的字段之间、数据表之间以及字段与数据表之间分别的关联关系;通过对源数据库中存储的操作日志信息进行解析,可以得到对源数据库执行的sql语句的拥有者、执行时间等额外信息。[0056]进一步地,如图1和图2所示,通过对解析得到的隐私数据所在的字段之间的关联关系、隐私数据所在的数据表之间的关联关系以及隐私数据所在的字段与数据表之间的关联关系等进行血缘发现,可以得到隐私数据之间的血缘关系信息。[0057]可选地,如图1和图2所示,考虑到诸如odps等源数据库自身会存储表级的隐私数据之间的存量关联关系信息,对此,还可将进行血缘发现得到的血缘关系信息与源数据库中存储的存量关联关系信息进行融合。为了提高得到的血缘关系信息的准确性和可靠性,进一步地,还对融合后的血缘关系信息进行纠错。[0058]在知识图谱层中,通过对隐私数据之间的血缘关系信息进行图计算,可以在目标图数据库中创建用于表征隐私数据之间的血缘关系的图谱数据模式(schema),其中,图谱schema包括多个节点和连接不同节点的边,节点表示字段或数据表,边表示相连接的节点之间的关联关系;进一步地,基于所构建的图谱schema将在数据层解析得到的额外信息、隐私数据的属性信息等存储至目标图数据库中,由此使得隐私数据之间的血缘关系以知识图谱的形式被存储。其中,目标图数据库可以例如包括但不限于以下图数据库中的至少一种:阿里云gdb、geabase、tugraph、neo4j等。对血缘关系信息的图计算可通过调用以下至少一种图计算应用程序接口(applicationprogramminginterface,api)实现:sparkgraphx、pandagraph等。[0059]可选地,中间层部署有定时器,如图1和图3所示,通过定时器可周期性地启动定时任务,即通过预先配置的用户自定义功能(userdefinedfunctions,udf)对源数据库中存储的操作日志信息、元数据信息、sql语句执行信息等进行解析以及对源数据库中存储的业务数据进行隐私数据扫描等,获取对源数据执行的涉及隐私数据的增量操作信息及与隐私数据相关的辅助信息(比如包括隐私数据的属性信息、执行sql语句的拥有者、执行时间等额外信息),进一步基于获取到的这些信息确定隐私数据之间的增量血缘关系信息;接着,基于增量血缘关系信息和源数据库中存储的存量关联关系信息之间的差异信息,更新源数据库中的存量关联关系信息以及目标图数据库,从而使得源数据库中的存量关联关系信息与目标图数据库中的血缘关系信息保持同步,实现隐私数据之间血缘关系的离线获取。进一步地,上述过程可采用批处理的方式实现。[0060]具体而言,存量关联关系信息存储于源数据库的存量关联关系表中。相应地,可基于增量血缘关系信息,生成增量血缘关系表,进一步基于增量血缘关系表和存量关联关系表之间的差集,确定增量血缘关系信息与存量关联关系信息之间的差异信息。[0061]可选地,数据层与中间层之间解耦,中间层可以屏蔽数据层中各种存储环境接口的差异,并提供标准的api接口,以提供数据读取等功能。[0062]可选地,知识图谱层与中间层解耦,具体可基于不同的使用环境,对知识图谱层私有化或者公有云化。知识图谱层可负责对其上下层屏蔽血缘关系信息的插入、删除、修改或者读取的差异。[0063]请参考图4,为本说明书的一个实施例提供的一种隐私数据处理方法的流程示意图,该方法可以包括如下步骤:[0064]s402,获取对源数据库执行的涉及隐私数据的sql语句和与隐私数据相关的辅助信息。[0065]其中,与隐私数据相关的辅助信息用于描述所述隐私数据所在的字段及数据表的属性。可选地,上述辅助信息具体可以例如包括但不限于:隐私数据所在的字段及数据表分别的元数据信息、执行sql语句的拥有者、执行时间等额外信息。具体而言,上述辅助信息可通过对源数据库中存储的业务数据进行隐私数据扫描以及对源数据库中存储的元数据信息、操作日志信息等进行解析得到。[0066]s404,对获取的sql语句进行语义解析,以得到源数据库中的隐私数据之间的血缘关系信息。[0067]其中,隐私数据之间的血缘关系信息用于指示隐私数据所在的字段之间的关联关系、隐私数据所在的数据表之间的关联关系以及隐私数据所在的字段与数据表之间的关联关系。[0068]可选地,隐私数据所在的字段之间的关联关系可以包括但不限于以下关系中的至少一种:复制关系(copy)、截断关系(substr)和拼接关系(concat)等,比如表table1中的字段identify_no由表table2中的字段identify_no复制得到,字段tenantid由字段identify_no和字段mobile_no拼接而成,字段id通过对字段bankcard_no截断得到。隐私数据所在的数据表之间的关联关系可以包括依赖关系(depend),比如数据表table1依赖于数据表table2。隐私数据所在的字段与数据表之间的关联关系可以包括从属关系(belong),比如字段identify_no属于数据表table1。[0069]sql语句是对数据库进行操作的一种语言,通常一条sql语句是由多个语义单元以及不同语义单元之间的语法顺序组成的。具体地,上述语法单元是指sql语句中包含的诸如“select”、“from”等关键字、运算法或对字段、数据表等进行标识的标识信息等满足语义规则的字词;上述语法顺序是指sql语句中约定的语义单元的语法规则顺序。按照sql语句的语法规则对sql语句进行语义解析,可以得到sql语句中描述的字段与字段之间、字段与数据表之间以及数据表之间分别的关联关系。需要说明的是,实际应用中,对sql语句的语义解析可利用各种现有的工具实现,比如解析器等。[0070]示例地,涉及隐私数据身份证号和手机号的sql语句为:[0071]createtable2as[0072]selectidentify_no,mobile_no[0073]fromtable1;[0074]在上述sql语句中,字段identify_no用于存储用户的身份证号,字段mobile_no用于存储用户的手机号。通过对上述sql语句进行语义解析,得到的隐私数据身份证号与手机号之间的血缘关系包括:(1)数据表table1中的字段identify_no由数据表table2中的字段identify_no复制而来;(2)数据表table1中的字段mobile_no由数据表table2中的字段mobile_no复制而来;(3)数据表table1依赖于数据表table2;(4)数据表table1中的字段identify_no属于数据表table1;(5)数据表1中的字段mobile_no属于数据表table1;(6)数据表table2中的字段identify_no属于数据表table2;(7)数据表2中的字段mobile_no属于数据表table2。[0075]其中,上述关系(1)和(2)为隐私数据所在的字段之间的关联关系,上述关联关系(3)为隐私数据所在的数据表之间的关联关系,上述关联关系(4)至(7)为隐私数据所在的字段与数据表之间的关联关系。[0076]为了便于对解析得到的血缘关系信息进行存储和使用,一种可选方式中,可将隐私数据之间的血缘关系信息转化为三元组结构数据(source_node,target_node,relation),其中,source_node表示源节点,target_node表示目标节点,relation表示源节点和目标节点之间的关联关系。示例地,以对上述sql语句解析得到的血缘关系信息为例,对上述血缘关系信息进行转换得到三元组结构数据如下所述:[0077](table2.identify_no,table1.identify_no,copy)[0078](table2.mobile_no,table1.identify_no,copy)[0079](table2,table1,depend)[0080](table1.identify_no,table1,belong)[0081](table1.mobile_no,table1,belong)[0082](table2.identify_no,table2,belong)[0083](table2.mobile_no,table2,belong)[0084]s406,基于隐私数据之间的血缘关系信息,在目标图数据库中创建表征隐私数据之间的血缘关系的图谱数据模式。[0085]其中,在图数据库中,图谱数据模式用于描述图数据库的组织和结构,能够反映出图数据库中的数据及其相关之间的关系。上述图谱数据模式包括多个节点和连接不同节点的边,节点表示字段或数据表,边表示相连接的节点之间的关联。[0086]示例地,图5示出了一种图谱数据模式的示例,如图5所示,node、table和column为图谱数据模式中的节点,其中,node为源节点,其下方的id、nodetype以及nodename为用于描述node的辅助信息,具体而言,id为node的唯一标识,nodetype为节点的类型,其表示该节点为数据表或字段,nodename为节点的名称;table为node的目标节点,其类型为数据表,table依赖于node,其下方的tenantid、projectname、tablename、tableowner、originsql为用于描述该节点的辅助信息,具体而言,temamtid为用户标识,projectname表示table所属的项目,tablename为table的名称,tableowner表示table的所有者,originsql表示生成、修改table的sql语句,以便出现用户数据异常时查询table的生成逻辑;column为字段,其从属于数据表table,其下方的tenantid、projectname、tablename、columnname、datatype、columncomment、sensitivelevel以及sensitivetype为用于描述字段column的辅助信息,具体而言,tenantid为用户标识、projectname表示字段column所属的项目,tablename表示字段column所属的数据表,datatype表示字段column的数据类型,columncomment表示字段column的描述信息,sensitivelevel表示字段column的敏感等级,sensitivetype表示字段column的敏感数据类型;edge为边,其用于描述节点之间的关联关系,其下方的fromid、told、dependtype以及edgeid为用于描述边edge的辅助信息,具体而言,fromid为源节点的唯一标识,told为目标节点的唯一标识,dependtype表示源节点和目标节点之间的关联关系为依赖关系,即目标节点依赖于源节点,edgeid为边的唯一标识。[0087]为了保证生成的图谱数据模式能够准确表征隐私数据之间的血缘关系,一种可选方式中,s406可以包括如下步骤:将隐私数据之间的血缘关系信息转化为三元组结构数据;基于三元组结构数据指示的源节点和目标节点,生成图谱数据模式中的节点;基于三元组结构数据指示的源节点和目标节点之间的关联关系,生成连接不同节点的边。[0088]示例地,以上文所述的三元组结构数据(table2,table1,depend)和(table1.mobile_no,table1,belong)为例,table2则作为上述图谱数据模式中的节点node,table1则作为上述图谱数据模式中的节点table,table1.mobile_no则作为上述图谱数据模式中的节点column,基于table2和table1之间的关联关系depend,可以生成连接节点node和节点table之间的边,以及基于table1.mobile和table1之间的关联关系belong,生成连接节点table和节点column之间的边。[0089]当然,应理解的是,上述图谱数据模式也可通过其它各种现有的方式创建,本说明书实施例对此不作具体限定。[0090]s408,基于图谱数据模式,将与隐私数据相关的辅助信息存储至目标图数据库中。[0091]具体而言,可以将与隐私数据相关的辅助信息添加到图谱数据模式中,例如将用于描述字段的辅助信息添加到字段对应的节点中,将用于描述数据表的辅助信息添加到数据表对应的节点中等,由此使得隐私数据之间的血缘关系信息能够以知识图谱的形式存储于目标图数据库中,不仅能够清楚准确地反映出数据表之间、字段之间以及数据表与字段之间的上下游关系,还能够通过辅助信息反映出字段及数据表各自的属性等,从而提高了隐私数据之间血缘关系的可用性,使得基于目标图数据库能够方便快捷地实现对隐私数据的纠错、溯源以及可视化展示等。[0092]示例地,在数据查询这一应用场景中,如果需要查询某一用户的项目下所有的银行卡号的分布情况,则可对目标图数据库执行图查询语句,比如gremlin语句:g.v().has(“sensitivetype”,“bankcard_no”).bothe()。当然,图查询语句还可以例如为opencypher语句等,本说明书实施例对图查询语句的类型不作具体限定。[0093]又如,在对隐私数据进行纠错这一应用场景中,如果将数据表table1中的字段bancard_no误识别成了身份证号,则可通过目标图数据库中记录的血缘关系确定出数据表table2的bankcard_no来源于数据表table1,因而可通过血缘扩散的方式,自动将数据表table1的字段bankcard_no的隐私数据类型进行修改,而不需要用户逐一对每条数据进行纠正,提高了对隐私数据纠错的效率,同时提高隐私数据识别结果的准确率和召回率。[0094]需要说明的是,本说明书实施例的隐私数据处理方法还可以用于隐私数据溯源、血缘关系可视化、隐私数据加工的合规性判定等业务场景中,本说明书实施例对此不作具体限定,且在此不再详细展开。[0095]本说明书实施例提供的隐私数据处理方法,通过对源数据库执行的、涉及隐私数据的sql语句进行语义解析,来获得包含隐私数据所在的字段之间的关联关系、隐私数据所在的数据表之间的关联关系以及隐私数据所在的字段与数据表之间的关联关系在内的源数据库中隐私数据之间的血缘关系信息,所得到的血缘关系信息能够更精细地反映隐私数据之间的血缘关系;基于血缘关系信息在目标图数据库中创建表征隐私数据之间的血缘关系的图谱数据模式(schema),而图谱数据模式中的节点表征字段或数据表,图谱数据模式中的边表征相连接的节点之间的关联关系,进一步基于图谱数据模式将辅助信息存储至目标图数据库中,使得隐私数据之间的血缘关系能够以知识图谱的形式进行存储,实现将对隐私数据的管理由“点”推向“面”,进而能够更方便快捷地利用隐私数据之间的血缘关系对隐私数据实施纠错、溯源、合规性判定等,提高对隐私数据管理的效率和便捷性。[0096]考虑到源数据库自身可能会存储表级的隐私数据之间的存量关联关系信息,为了保证最终得到隐私数据之间的血缘关系信息准确可靠,在本说明书的另一个实施例中,在上述s406之前,本说明实施例的隐私数据处理方法还包括:查询源数据库中是否存储有隐私数据之间的存量关联关系信息。相应地,在上述s406中,如果源数据库中存储有存量关联关系信息,则将得到的血缘关系信息和存量关联关系信息进行融合,进一步基于融合后的血缘关系信息,在目标图数据库中创建图谱数据模式。[0097]需要说明的是,对血缘关系信息和存量关联关系信息的融合,可基于各种现有的数据融合技术实现,本说明书实施例对此不做具体限定。[0098]进一步地,由于对sql语句进行解析得到的血缘关系信息与存量关联关系信息之间可能存在部分冲突,尤其是具有复制关系的字段,为了进一步提高最终得到的血缘关系信息的准确性和可靠性,在本说明书的另一个实施例中,在基于融合后的血缘关系信息,在目标图数据库中创建图谱数据模式之前,还可对融合后的血缘关系信息进行纠错,具体而言,本说明书实施例的隐私数据处理方法还包括:基于融合后的血缘关系信息,获取第一隐私字段和第二隐私字段各自的元数据,其中,第一隐私字段和第二隐私字段分别为隐私数据所在的、关联关系为复制关系的不同字段;接着,将第一隐私字段的元数据和第二隐私字段的元数据进行比对,得到差异度,如果差异度超过差异度阈值,则删除融合后的血缘关系信息中第一隐私字段与第二隐私字段之间的关联关系信息。其中,上述差异度阈值可以根据实际需要预先设置,本说明书实施例对上述差异度阈值的数值不做具体限定。[0099]示例地,融合后的血缘关系信息指示第一隐私字段table1.mobile_no是对第二隐私字段table2.nobile_no复制得到,如果第一隐私字段table1.mobile_no的元数据指示该字段的数据类型为text,而第二隐私字段table2.mobile_no的元数据指示该字段的数据类型为string,则可判定第一隐私字段与第二隐私字段之间的复制关系有误,则在融合后的血缘关系信息中删除第一隐私字段table1.mobile_no与第二隐私字段table2.mobile_no之间的复制关系。[0100]考虑到源数据库中的隐私数据之间的血缘关系信息是动态变化的,为了进一步提高目标图数据库中存储的血缘关系的准确性和可靠性,在本说明书的另一个实施例中,在将与隐私数据相关的辅助信息存储至目标图数据库之后,还可通过离线方式,周期性地监控源数据库中的血缘关系信息的变化情况,进而基于监控到的变化情况更新本地离线的存量关联关系表和目标图数据库,以使源数据库中存储的存量关联关系信息与目标图数据库中存储的血缘关系信息保持同步。具体而言,如图6所示,在s408之后,本说明书实施例提供的隐私数据处理方法还包括:[0101]s410,按照预设时间间隔,获取对源数据库执行的涉及隐私数据的增量操作信息。[0102]具体而言,上述增量操作信息可以包括但不限于新增的对源数据库执行的涉及隐私数据的sql语句、增量操作日志信息等。[0103]需要说明的是,预设时间间隔的长度可以根据实际需要进行设置,本说明书实施例对此不作具体限定。[0104]s412,基于增量操作信息和与隐私数据相关的辅助信息,确定隐私数据之间的增量血缘关系信息。[0105]其中,隐私数据之间的增量血缘关系信息可以包括相较于已有的隐私数据之间的血缘关系信息发生变化的信息,其用于反映隐私数据之间的血缘关系的变动情况。[0106]具体而言,根据与隐私数据相关的辅助信息所描述的字段及数据表各自的属性信息,可确定出隐私数据所在的字段及数据表各自的变动情况,比如新增了哪些字段和/或数据表、删除了哪些字段和/或数据表、以及哪些字段和/或数据表的隐私数据类型、敏感等级等发生了变更等。通过对增量操作信息指示的sql语句进行语义解析,可以确定出发生了变动的字段之间、数据表之间以及字段与数据表之间的关联关系变化情况,由此得到隐私数据之间的增量血缘关系信息。[0107]s414,获取增量血缘关系信息与源数据库中存储的存量关系信息之间的差异信息。[0108]考虑到存量关系信息通常是以关系型数据表的形式存储于源数据库的存量关联关系表中的,为了提高差异信息获取的准确性和便捷性,在一种可选方式中,s414可以包括:基于增量血缘关系信息,生成增量血缘关系表,示例地,增量血缘关系信息指示新增隐私数据所在的字段bankcard_no从属于数据表table2,则基于该增量血缘关系信息,创建相应的字段bankcard_no与数据表table2之间的关联关系的关系型数据表,得到增量血缘关系表;进一步地,基于增量血缘关系表与存量关联关系表之间的差集,确定增量血缘关系信息与存量关联关系信息之间的差异信息。[0109]s416,基于差异信息,更新存量关联关系信息和目标图数据库。[0110]具体而言,可基于差异信息,确定需要在目标图数据库中执行的增、删、改等至少一种第一操作语句,通过对目标图数据库执行第一操作语句,可实现对目标图数据库的更新。类似地,可基于差异信息,确定需要在源数据库中执行的增、删、改等至少一种第二操作语句,通过对源数据库执行第二操作语句,可实现对存量关联关系信息的更新。[0111]可以理解的是,通过上述隐私数据处理方法,使得源数据库中存储的存量关联关系信息与目标图数据库中存储的血缘关系信息保持同步,进而在后续应用中,可以根据实际需要选择从源数据库或者目标图数据库中获取隐私数据之间的血缘关系。[0112]此外,与上述图4所示的隐私数据处理方法相对应地,本说明书实施例还提供一种隐私数据处理装置。图7是本说明书实施例提供的一种隐私数据处理装置700的结构示意图,包括:[0113]第一获取单元710,获取对源数据库执行的涉及隐私数据的结构化查询sql语句和与所述隐私数据相关的辅助信息,所述辅助信息用于描述所述隐私数据所在的字段及数据表的属性;[0114]解析单元720,对获取的sql语句进行语义解析,以得到所述源数据库中的隐私数据之间的血缘关系信息,所述血缘关系信息用于指示所述隐私数据所在的字段之间的关联关系、所述隐私数据所在的数据表之间的关联关系以及所述字段和所述数据表之间的关联关系;[0115]创建单元730,基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式,所述图谱数据模式包括多个节点和连接不同节点的边,所述节点表示字段或数据表,所述边表示相连接的节点之间的关联关系;[0116]存储单元740,基于所述图谱数据模式,将所述辅助信息存储至所述目标图数据库中。[0117]可选地,所述装置还包括:[0118]查询单元,在所述创建单元730基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式之前,查询所述源数据库中是否存储有所述隐私数据之间的存量关联关系信息;[0119]所述创建单元730,如果所述源数据库中存储有所述存量关联关系信息,则将所述血缘关系信息和所述存量关联关系信息进行融合,以及基于融合后的血缘关系信息,在所述目标图数据库中创建所述图谱数据模式。[0120]可选地,所述装置还包括:[0121]第二获取单元,在所述创建单元730基于融合后的血缘关系信息,在所述目标图数据库中创建所述图谱数据模式之前,基于所述融合后的血缘关系信息,获取第一隐私字段和第二隐私字段各自的元数据,所述第一隐私字段和所述第二隐私字段分别为所述隐私数据所在的、关联关系为复制关系的不同字段;[0122]比对单元,将所述第一隐私字段的元数据和所述第二隐私字段的元数据进行比对,得到差异度;[0123]删除单元,如果所述差异度超过差异度阈值,则删除所述融合后的血缘关系信息中所述第一隐私字段和所述第二隐私字段之间的关联关系信息。[0124]可选地,所述装置还包括:[0125]第三获取单元,在所述存储单元740基于所述图谱数据模式,将所述辅助信息存储至所述目标图数据库中之后,按照预设时间间隔,获取对所述源数据库执行的涉及隐私数据的增量操作信息;[0126]增量血缘确定单元,基于所述增量操作信息和与所述隐私数据相关的辅助信息,确定所述隐私数据之间的增量血缘关系信息;[0127]第四获取单元,获取所述增量血缘关系信息与所述源数据库中存储的存量关联关系信息之间的差异信息;[0128]更新单元,基于所述差异信息,更新所述存量关联关系信息和所述目标图数据库。[0129]可选地,所述存量关联关系信息存储于所述源数据库的存量关联关系表中;[0130]所述第四获取单元,基于所述增量血缘关系信息,生成增量血缘关系表,以及基于所述增量血缘关系表与所述存量关联关系表之间的差集,确定所述增量血缘关系信息与所述存量关联关系信息之间的差异信息。[0131]可选地,所述创建单元730,将所述隐私数据之间的血缘关系信息转化为三元组结构数据,基于所述三元组结构数据指示的源节点和目标节点,生成图谱数据模式中的节点,以及基于所述三元组结构数据指示的源节点与目标节点之间的关联关系,生成连接不同节点的边。[0132]可选地,所述隐私数据所在的字段之间的关联关系包括以下关系中的至少一种:复制关系、截断关系和拼接关系;[0133]所述隐私数据所在的数据表之间的关联关系包括依赖关系;[0134]所述字段与所述数据表之间的关联关系包括从属关系。[0135]本说明书实施例提供的隐私数据装置,通过对源数据库执行的、涉及隐私数据的sql语句进行语义解析,来获得包含隐私数据所在的字段之间的关联关系、隐私数据所在的数据表之间的关联关系以及隐私数据所在的字段与数据表之间的关联关系在内的源数据库中隐私数据之间的血缘关系信息,所得到的血缘关系信息能够更精细地反映隐私数据之间的血缘关系;基于血缘关系信息在目标图数据库中创建表征隐私数据之间的血缘关系的图谱数据模式(schema),而图谱数据模式中的节点表征字段或数据表,图谱数据模式中的边表征相连接的节点之间的关联关系,进一步基于图谱数据模式将辅助信息存储至目标图数据库中,使得隐私数据之间的血缘关系能够以知识图谱的形式进行存储,实现将对隐私数据的管理由“点”推向“面”,进而能够更方便快捷地利用隐私数据之间的血缘关系对隐私数据实施纠错、溯源、合规性判定等,提高对隐私数据管理的效率和便捷性。[0136]显然,本说明书实施例的隐私数据处理装置可以作为上述图4所示的隐私数据处理方法的执行主体,因此能够实现隐私数据处理方法在图4所实现的功能。由于原理相同,在此不再赘述。[0137]图8是本说明书的一个实施例电子设备的结构示意图。请参考图8,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(random‑accessmemory,ram),也可能还包括非易失性存储器(non‑volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。[0138]处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是isa(industrystandardarchitecture,工业标准体系结构)总线、pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。[0139]存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。[0140]处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成隐私数据处理装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:[0141]获取对源数据库执行的涉及隐私数据的结构化查询sql语句和与所述隐私数据相关的辅助信息,所述辅助信息用于描述所述隐私数据所在的字段及数据表的属性;[0142]对获取的sql语句进行语义解析,以得到所述源数据库中的隐私数据之间的血缘关系信息,所述血缘关系信息用于指示所述隐私数据所在的字段之间的关联关系、所述隐私数据所在的数据表之间的关联关系以及所述字段和所述数据表之间的关联关系;[0143]基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式,所述图谱数据模式包括多个节点和连接不同节点的边,所述节点表示字段或数据表,所述边表示相连接的节点之间的关联关系;[0144]基于所述图谱数据模式,将所述辅助信息存储至所述目标图数据库中。[0145]上述如本说明书图4所示实施例揭示的隐私数据处理装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。[0146]应理解,本说明书实施例的电子设备可以实现隐私数据处理装置在图4所示实施例的功能。由于原理相同,本说明书实施例在此不再赘述。[0147]当然,除了软件实现方式之外,本说明书的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。[0148]本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图4所示实施例的方法,并具体用于执行以下操作:[0149]获取对源数据库执行的涉及隐私数据的结构化查询sql语句和与所述隐私数据相关的辅助信息,所述辅助信息用于描述所述隐私数据所在的字段及数据表的属性;[0150]对获取的sql语句进行语义解析,以得到所述源数据库中的隐私数据之间的血缘关系信息,所述血缘关系信息用于指示所述隐私数据所在的字段之间的关联关系、所述隐私数据所在的数据表之间的关联关系以及所述字段和所述数据表之间的关联关系;[0151]基于所述血缘关系信息,在目标图数据库中创建表征所述隐私数据之间的血缘关系的图谱数据模式,所述图谱数据模式包括多个节点和连接不同节点的边,所述节点表示字段或数据表,所述边表示相连接的节点之间的关联关系;[0152]基于所述图谱数据模式,将所述辅助信息存储至所述目标图数据库中。[0153]上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。[0154]总之,以上所述仅为本说明书的较佳实施例而已,并非用于限定本说明书的保护范围。凡在本说明书的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书的保护范围之内。[0155]上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。[0156]计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd‑rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。[0157]还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。[0158]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1