CN108268558A - 一种数据分析的方法和装置 - Google Patents
一种数据分析的方法和装置 Download PDFInfo
- Publication number
- CN108268558A CN108268558A CN201710002591.XA CN201710002591A CN108268558A CN 108268558 A CN108268558 A CN 108268558A CN 201710002591 A CN201710002591 A CN 201710002591A CN 108268558 A CN108268558 A CN 108268558A
- Authority
- CN
- China
- Prior art keywords
- data
- desensitization
- metadata
- sql statement
- analysis
- 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.)
- Granted
Links
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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2291—User-Defined Types; Storage management thereof
-
- 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
Abstract
本发明实施例公开了一种数据分析的方法和装置;该方法包括:构建原始数据元数据与脱敏数据元数据之间的映射关系;在确定数据使用请求合法后,将所述数据使用请求中用于执行数据操作的原始结构化查询语言SQL语句进行解析;当所述原始SQL语句针对脱敏数据时,根据所述映射关系将所述SQL语句进行转换;通过所述转换后的SQL语句对所述脱敏数据对应的原始数据进行关联分析;根据所述关联分析的数据结果进行数据分析,并将所述数据分析的结果进行返回。能够在保证敏感数据安全的同时,还能够使得脱敏后的数据仍然保持对应的原始数据的数据分析价值和使用价值。
Description
技术领域
本发明涉及信息安全技术领域,尤其涉及一种数据分析的方法和装置。
背景技术
随着大数据技术的应用和发展,数据的价值随着技术的发展越来越得到体现,传统信息领域的数据被充分的发掘和利用。由于数据放到大数据平台之后,会导致敏感、机密和隐私数据的泄露。所以数据去隐私的是大数据平台的一个必要步骤,根据用户的指定或者预先制定的规则将数据流转到大数据平的时候都需要数据脱敏存放,随后才能被数据平台的数据挖掘中间件或者上层应用访问。而数据脱敏是指对某些敏感数据通过脱敏规则进行数据的变形,从而实现针对敏感隐私数据的可靠保护。
目前的数据脱敏通常会采用将敏感数据进行诸如替换、随机化、或者加密处理,从而将处理后的数据对用户或者对分析程序可见的,但是并不理解该处理后的数据含义,从而达到了敏感数据脱敏的目的。
需要值得注意的是:脱敏之前的原始敏感数据会携带某些值得进行数据挖掘的关键信息,而且这些关键信息能够用于其他数据进行关联分析的,是具有数据分析价值的。但是将原始敏感数据进行数据脱敏后,会造成脱敏之后的数据失去了数据分析价值,而且使得脱敏后的数据与其他数据之间的关联性遭到了破坏,同样失去了脱敏数据的使用价值。
发明内容
为解决上述技术问题,本发明实施例期望提供一种数据分析的方法和装置;能够在保证敏感数据安全的同时,还能够使得脱敏后的数据仍然保持对应的原始数据的数据分析价值和使用价值。
本发明的技术方案是这样实现的:
第一方面,本发明实施例提供了一种数据分析的方法,所述方法包括:
构建原始数据元数据与脱敏数据元数据之间的映射关系;
在确定数据使用请求合法后,将所述数据使用请求中用于执行数据操作的原始结构化查询语言SQL语句进行解析;
当所述原始SQL语句针对脱敏数据时,根据所述映射关系将所述SQL语句进行转换;
通过所述转换后的SQL语句对所述脱敏数据对应的原始数据进行关联分析;
根据所述关联分析的数据结果进行数据分析,并将所述数据分析的结果进行返回。
在上述方案中,所述构建原始数据元数据与脱敏数据元数据之间的映射关系,具体包括:
定义元数据的存储结构;其中,所述元数据用于描述数据;
当确定有需要脱敏的原始数据时,定义脱敏元数据的存储结构;
建立所述原始数据元数据与脱敏数据元数据之间的映射关系。
在上述方案中,所述方法还包括:
当所述需要脱敏的原始数据加载到数据平台时,将所述原始数据进行脱敏;
将所述原始数据以及所述原始数据对应的脱敏数据均加载至所述数据平台。
在上述方案中,所述方法还包括:
对脱敏元数据构建数据索引,使得用户通过搜索引擎针对所述数据索引搜索到脱敏元数据。
在上述方案中,所述将所述数据使用请求中用于执行数据操作的原始SQL语句进行解析,具体包括:
解析用户执行数据操作的原始SQL语句,分析得到所述SQL语句所使用的数据表的列信息。
在上述方案中,所述根据所述映射关系将所述SQL语句进行转换,具体包括:
根据所述SQL语句以及所述映射关系,通过预设的转换策略获得转换后的SQL语句;其中,所述预设的转换策略包括:在所述SQL语句中的以下子句中将所述脱敏数据替换成所述脱敏数据对应的原始数据:
Where子句、Group By子句和Having子句以及Order By子句。
第二方面,本发明实施例提供了一种数据分析的装置,所述装置包括:构建模块、确权模块、解析模块、转换模块、数据分析模块;其中,
所述构建模块,用于构建原始数据元数据与脱敏数据元数据之间的映射关系;
所述确权模块,用于确定数据使用请求是否合法;并当所述数据使用请求合法时,触发所述解析模块;
所述解析模块,用于将所述数据使用请求中用于执行数据操作的原始SQL语句进行解析;
所述转换模块,用于当所述原始结构化查询语言SQL语句针对脱敏数据时,根据所述映射关系将所述SQL语句进行转换;
所述数据分析模块,用于通过所述转换后的SQL语句对所述脱敏数据对应的原始数据进行关联分析;以及,根据所述关联分析的数据结果进行数据分析,并将所述数据分析的结果进行返回。
在上述方案中,所述构建模块,用于:
定义元数据的存储结构;其中,所述元数据用于描述数据;
当确定有需要脱敏的原始数据时,定义脱敏元数据的存储结构;
建立所述原始数据元数据与脱敏数据元数据之间的映射关系。
在上述方案中,所述构建模块,还用于:
当所述需要脱敏的原始数据加载到数据平台时,将所述原始数据进行脱敏;
以及,将所述原始数据以及所述原始数据对应的脱敏数据均加载至所述数据平台
在上述方案中,所述构建模块,还用于:
对脱敏元数据构建数据索引,使得用户通过搜索引擎针对所述数据索引搜索到脱敏元数据。
在上述方案中,所述解析模块,具体用于:解析用户执行数据操作的原始SQL语句,分析得到所述SQL语句所使用的数据表的列信息。
在上述方案中,所述转换模块,具体用于:
根据所述SQL语句以及所述映射关系,通过预设的转换策略获得转换后的SQL语句;其中,所述预设的转换策略包括:在所述SQL语句中的以下子句中将所述脱敏数据替换成所述脱敏数据对应的原始数据:
Where子句、Group By子句和Having子句以及Order By子句。
本发明实施例提供了一种数据分析的方法和装置;通过构建原始数据与脱敏数据之间的映射关系,并且在SQL语句执行过程中将原始数据进行关联分析,从而不仅能够在保证敏感数据安全的同时,还能够使得脱敏后的数据仍然保持对应的原始数据的数据分析价值和使用价值。
附图说明
图1为本发明实施例提供的一种数据分析的方法流程示意图;
图2为本发明实施例提供的一种构建映射关系的方法流程示意图;
图3为本发明实施例提供的另一种构建映射关系的方法流程示意图;
图4为本发明实施例提供的一种构建映射流程的具体过程示意图;
图5为本发明实施例提供的一种针对数据进行使用的具体过程示意图;
图6为本发明实施例提供的一种数据分析的装置结构示意图;
图7为本发明实施例提供的一种映射关系的示意图;
图8为本发明实施例提供的一种JSON描述示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
实施例一
参见图1,其示出了本发明实施例提供了一种数据分析的方法,该方法可以包括:
S101:构建原始数据元数据与脱敏数据元数据之间的映射关系;
示例性地,参见图2,对于步骤S101,构建原始数据元数据与脱敏数据元数据之间的映射关系,具体可以包括:
S1011:定义元数据的存储结构;其中,所述元数据用于描述数据;
S1012:当确定有需要脱敏的原始数据时,定义脱敏元数据的存储结构;
S1013:建立所述原始数据元数据与脱敏数据元数据之间的映射关系。
需要说明的是,在数据加载到数据平台之前需要定义数据的元数据,该元数据描述的是数据表的结构,数据字段的名称、类型、长度等用于描述数据的数据。具体地,确定有需要脱敏的原始数据可以通过自定义的规则或者人工去判断与确定。定义脱敏元数据具体指的是定义脱敏元数据的数据字段的名称、类型、长度等。当建立完成映射关系之后,不仅可以根据脱敏数据元数据追溯到原始数据元数据,而且还能够从原始数据元数据查询到脱敏数据元数据。
针对该示例,参见图3,本技术方案还可以包括:
S1014:当所述需要脱敏的原始数据加载到数据平台时,将所述原始数据进行脱敏;
S1015:将所述原始数据以及所述原始数据对应的脱敏数据均加载至所述数据平台。
需要说明的是,当数据加载到数据平台时,会对原始数据进行脱敏过程,生成脱敏数据,而在数据平台中仍然会对原始数据进行保存。
此外,图3所示的技术方案中,还可以包括:
S1016:对脱敏元数据构建数据索引,使得用户通过搜索引擎针对所述数据索引搜索到脱敏元数据。
需要说明的是,本步骤S1016会针对脱敏数据等可以被公开的数据构建数据索引,具体可以利用现有的搜索引擎技术构建数据索引比如Lucene等,本实施例不再赘述,用户可以通过搜素引擎搜索相关索引来获取发布的元数据信息;一旦数据被发布出来,数据平台的用户可以通过搜索引擎搜索数据,并对之进行申请和授权使用。通常可以由数据的拥有者或者数据管理员授权申请使用。
因此,数据平台在接收到数据使用请求时,会根据数据的授权状态确定该数据使用请求是否合法。
S102:在确定数据使用请求合法后,将所述数据使用请求中用于执行数据操作的原始SQL语句进行解析;
具体地,步骤S102可以包括:
解析用户执行数据操作的原始结构化查询语言(SQL,Structured QueryLanguage)语句,分析得到所述SQL语句所使用的数据表的列信息。
需要说明的时,由于数据在存储或加载时通常是以列为存储格式,因此,不同类型的数据可以通过数据表中数据的列信息进行表示。
S103:当所述原始SQL语句针对脱敏数据时,根据所述映射关系将所述SQL语句进行转换;
具体地,步骤S103可以包括:
根据所述SQL语句以及所述映射关系,通过预设的转换策略获得转换后的SQL语句;其中,所述预设的转换策略包括:在所述SQL语句中的以下子句中将所述脱敏数据替换成所述脱敏数据对应的原始数据:
Where子句、Group By子句和Having子句以及Order By子句。
需要说明的是,根据解析出来的原始SQL语句并且结合步骤S101中所述的原始数据元数据和脱敏数据元数据之间的映射关系,生成新的SQL语句。
S104:通过所述转换后的SQL语句对所述脱敏数据对应的原始数据进行关联分析;
需要说明的是,对原始数据进行关联分析,但是不返回原始数据,而非进行具体的数据分析,从而能够避免造成原始数据泄露的情况发生。
S105:根据所述关联分析的第一数据结果进行数据分析,并将所述数据分析的第二数据结果进行返回。
需要说明的是,步骤S104进行关联分析的第一数据结果进行具体的数据分析,并且针对数据使用请求将具体的数据分析所得到的第二数据结果进行返回,在此过程中原始数据参与的是SQL语句的条件执行部分,并非参与具体的数据分析部分,因此不会造成敏感数据泄露。
本实施例提供了一种数据分析的方法,通过构建原始数据与脱敏数据之间的映射关系,并且在SQL语句执行过程中将原始数据进行关联分析,从而不仅能够在保证敏感数据安全的同时,还能够使得脱敏后的数据仍然保持对应的原始数据的数据分析价值和使用价值。
实施例二
基于前述实施例相同的技术构思,本实施例对与前述实施例的具体实现过程进行说明。
参见图4,其示出了构建映射流程的具体过程,该具体过程包括有构建初始数据的元数据以及原始数据的元数据和脱敏元数据之间的映射关系,以及数据的加载,数据的发布以及授权使用的流程,可以包括:
S401:定义元数据描述数据的存储结构;
需要说明的是,在数据加载到数据平台之前需要定义数据的元数据,该元数据描述的是数据表的结构,数据字段的名称、类型、长度等。
S402:确定是否有需要脱敏的数据;若是则转至S403;否则转至S405;
需要说明的是,本步骤可以判断某些数据表中的字段是否需要脱敏,具体可以根据自定义的规则或者人工去判断。
S403:定义脱敏数据的元数据;
具体地,本步骤可以定义脱敏数据的元数据的数据字段的名称、类型、长度等。
S404:定义脱敏数据的元数据和原始数据的元数据之间的映射关系;
需要说明的是,本步骤定义两者的映射关系,则根据脱敏数据的元数据的列名称可以追溯到原始数据的元数据列,反之也可实现。
S405:对数据进行抽取、转换、加载;
需要说明的是,本步骤将数据的加载到数据平台上,并在加载的过程中执行脱敏过程,并且生成脱敏列数据,并且保留原始数据。
S406:发布数据并构建数据的索引;
需要说明的是,本步骤把元数据包括脱敏数据的元数据这些可以被公开的数据构建数据索引,具体可以利用现有的搜索引擎技术可以构建数据索引,比如Lucene等,此处不再赘述,用户可以通过搜素引擎搜索发布的元数据信息。
S407:数据申请和授权使用;
需要说明的是,一旦数据被发布出来,数据平台的用户可以通过搜索引擎搜索数据,并对之进行申请和授权使用。通常由数据的拥有者或者数据管理员能够对数据进行授权申请使用。
在构建完映射关系之后,就是针对数据进行使用的过程,参见图5,该过程所描述的是数据分析、数据挖掘等数据使用过程读取脱敏数据对应的原始数据的流程,通过图5所示的流程可以达到原始的敏感数据可以进行关联分析,并达到“可用不可见”的效果。该过程可以包括:
S501:接收数据使用请求;
具体地,数据平台有定期的数据分析任务,也有即时的数据使用请求,这些数据使用请求可以由数据挖掘程序以及应用程序等发起的。
S502:判断数据是否合法使用;若是,则转至S504;否则转至S503;
需要说明的是,一旦数据被发布出来,数据平台的用户可以通过搜索引擎搜索数据,并对之进行申请和授权使用。一般情况下由数据的拥有者或者数据管理员授权申请使用。
S503:出错处理;
具体地,如果数据被非法使用,比如未授权使用,进入出错处理。
S504:拦截数据使用请求并进行SQL解析;
具体的,可以将用于数据执行的SQL进行拦截,并进行SQL解析。
S505:确定是否启用原数据进行分析;若是,则转至S506;否则结束本流程。
具体地,当数据使用请求中所针对的数据表不包含脱敏数据的元数据或者用户设定该数据表包含脱敏数据的元数据信息,但是不进行原始数据关联分析时,就不启动S506的步骤,否则转至S506。
S506:根据解析出来的SQL语句以及原始数据的元数据和脱敏数据的元数据之间的映射关系生成新的SQL语句。
S507:新的SQL语句读取原始数据进行关联分析,但是不返回原始数据;并根据关联分析的第一数据结果进行数据分析,获取到第二数据结果,并将第二数据结果进行返回;
需要说明的是,在此过程中原始的敏感数据参与的是SQL语句的条件执行部分,不参与具体的数据分析,所以不会造成敏感数据泄露。
通过图4及图5所示流程,通过构建原始数据与脱敏数据之间的映射关系,并且在SQL语句执行过程中将原始数据进行关联分析,从而不仅能够在保证敏感数据安全的同时,还能够使得脱敏后的数据仍然保持对应的原始数据的数据分析价值和使用价值。
实施例三
基于前述实施例相同的技术构思,参见图6,其示出了本发明实施例提供的一种数据分析的装置60,可以包括:构建模块601、确权模块602、解析模块603、转换模块604、数据分析模块605;其中,
所述构建模块601,用于构建原始数据元数据与脱敏数据元数据之间的映射关系;
所述确权模块602,用于确定数据使用请求是否合法;并当所述数据使用请求合法时,触发所述解析模块603;
所述解析模块603,用于将所述数据使用请求中用于执行数据操作的原始SQL语句进行解析;
所述转换模块604,用于当所述原始SQL语句针对脱敏数据时,根据所述映射关系将所述SQL语句进行转换;
所述数据分析模块605,用于通过所述转换后的SQL语句对所述脱敏数据对应的原始数据进行关联分析;以及,根据所述关联分析的数据结果进行数据分析,并将所述数据分析的结果进行返回。
在上述方案中,所述构建模块601,用于:
定义元数据的存储结构;其中,所述元数据用于描述数据;
当确定有需要脱敏的原始数据时,定义脱敏元数据的存储结构;
建立所述原始数据元数据与脱敏数据元数据之间的映射关系。
在上述方案中,所述构建模块601,还用于:
当所述需要脱敏的原始数据加载到数据平台时,将所述原始数据进行脱敏;
以及,将所述原始数据以及所述原始数据对应的脱敏数据均加载至所述数据平台
在上述方案中,所述构建模块601,还用于:
对脱敏元数据构建数据索引,使得用户通过搜索引擎针对所述数据索引搜索到脱敏元数据。
在上述方案中,所述解析模块603,具体用于:解析用户执行数据操作的原始SQL语句,分析得到所述SQL语句所使用的数据表的列信息。
具体地,对于SQL解析方法,需要说明的是,可以解析应用程序传输过来的SQL语句并解析出脱敏字段,如果遇到“*”或者“%”通配符,则把“*”或“%”转换成对应的列名称的结合,“*”可根据元数据获得表的所有列名称的结合,“%”可以根据局部匹配获得相应的列名称集合。
在上述方案中,所述转换模块604,具体用于:
根据所述SQL语句以及所述映射关系,通过预设的转换策略获得转换后的SQL语句;其中,所述预设的转换策略包括:在所述SQL语句中的以下子句中将所述脱敏数据替换成所述脱敏数据对应的原始数据:
Where子句、Group By子句和Having子句以及Order By子句。
对于图6所示的技术方案,在一种优选的实现过程中,构建模块601负责元数据和脱敏元数据的生成以及映射关系的建立。具体地,原始数据元数据可以由原始数据表列集构成;脱敏数据元数据由脱敏数据列集构成。
如下所示:
MDi=(Col1,Col2,...,Coli,...,ColN),
DMDj=(DCol1,DCol2,...,DColj,...,DColM),
MD_MAP_PAIR=(Coln,DColm),
MD_MAPs={MD_MAP_PAIR_1,MD_MAP_PAIR_2,...,MD_MAP_PAIR_K}
其中,MDi表示原始数据元数据列集合。DMDj表示脱敏数据元数据列集合。MD_MAP_PAIR表示原始数据列和脱敏元数据列的一个映射对。MD_MAPs表示原始数据列和脱敏元数据列映射对的集合。
需要说明的是,在构建完MD_MAPs之后,会持久化到元数据管理数据库中,后续就能够根据这个映射关系,由脱敏元数据列的列名字或者列的序号得到原始数据列或者列序号,反之也可以。
对于元数据的映射关系来说,在脱敏列的元数据中存放原始列的信息比如原始数据列名字,原始数据列的序号;原始数据列存放脱敏数据列中脱敏后的列名和序号。而对于数据的映射关系来说,所有的脱敏列放在原始列的后面,数据加载的时候,脱敏之后的数据追加在原有数据每一行的后面。具体实现在数据加载的时候可以自动调用SQL的功能Function或者用户定义功能(UDF,User Define Function)。
以图7所示的原始元数据与脱敏元数据之间的映射关系为例,Col1,Col2…Col9是原始数据表列,DCol2,Dcol9…是脱敏数据列。DCol2,Dcol9等是修改原有数据表的元数据追加的脱敏数据列;其中,DCol2是对应Col2的脱敏列,DCol9是对应Col9的脱敏列。
在具体实现时,可以在程序启动时在内存中构建MD_MAPs,以JavaScript对象表示法(JSON,JavaScript Object Notation)描述如图8所示,图8中,“metadata”是原始数据的元数据集合。“desensitizeMedata”是脱敏元数据集合,MD_MAPs对应于“desensitizeMedata”,通过这个信息可以拿到MD_MAP_PAIR,这样也就可以拿到原始列和脱敏列的映射关系。
在构建完成映射关系后,可以在加载数据的时候通过抽取、转换、加载(ETL,Extract,Transform,Load)等工具进行加载,并进行数据脱敏,脱敏的算法包括:替换、随机化、加密等等,本实施例对此不做赘述。加载之后,原始数据和脱敏数据共同存在数据平台或者指定文件系统中。
具体地,在数据发布的过程中,可以只将非敏感列与脱敏列发布出来。这样脱敏列对应的原始数据对用户是“不可见”的。具体实现可以用数据仓库的视图来实现,发布是视图中对应的数据。如下式所示:发布的视图包含的列集=非敏感列集+脱敏列集;其中,发布的视图包含的列集为发布的数据表视图包含的所有的列的集合;非敏感列集为原始数据表元数据为非敏感列的集合;脱敏列集为脱敏元数据的列的集合。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (12)
1.一种数据分析的方法,其特征在于,所述方法包括:
构建原始数据元数据与脱敏数据元数据之间的映射关系;
在确定数据使用请求合法后,将所述数据使用请求中用于执行数据操作的原始结构化查询语言SQL语句进行解析;
当所述原始SQL语句针对脱敏数据时,根据所述映射关系将所述SQL语句进行转换;
通过所述转换后的SQL语句对所述脱敏数据对应的原始数据进行关联分析;
根据所述关联分析的数据结果进行数据分析,并将所述数据分析的结果进行返回。
2.根据权利要求1所述的方法,其特征在于,所述构建原始数据元数据与脱敏数据元数据之间的映射关系,具体包括:
定义元数据的存储结构;其中,所述元数据用于描述数据;
当确定有需要脱敏的原始数据时,定义脱敏元数据的存储结构;
建立所述原始数据元数据与脱敏数据元数据之间的映射关系。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述需要脱敏的原始数据加载到数据平台时,将所述原始数据进行脱敏;
将所述原始数据以及所述原始数据对应的脱敏数据均加载至所述数据平台。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
对脱敏元数据构建数据索引,使得用户通过搜索引擎针对所述数据索引搜索到脱敏元数据。
5.根据权利要求1所述的方法,其特征在于,所述将所述数据使用请求中用于执行数据操作的原始SQL语句进行解析,具体包括:
解析用户执行数据操作的原始SQL语句,分析得到所述SQL语句所使用的数据表的列信息。
6.根据权利要求1所述的方法,其特征在于,所述根据所述映射关系将所述SQL语句进行转换,具体包括:
根据所述SQL语句以及所述映射关系,通过预设的转换策略获得转换后的SQL语句;其中,所述预设的转换策略包括:在所述SQL语句中的以下子句中将所述脱敏数据替换成所述脱敏数据对应的原始数据:
Where子句、Group By子句和Having子句以及Order By子句。
7.一种数据分析的装置,其特征在于,所述装置包括:构建模块、确权模块、解析模块、转换模块、数据分析模块;其中,
所述构建模块,用于构建原始数据元数据与脱敏数据元数据之间的映射关系;
所述确权模块,用于确定数据使用请求是否合法;并当所述数据使用请求合法时,触发所述解析模块;
所述解析模块,用于将所述数据使用请求中用于执行数据操作的原始SQL语句进行解析;
所述转换模块,用于当所述原始结构化查询语言SQL语句针对脱敏数据时,根据所述映射关系将所述SQL语句进行转换;
所述数据分析模块,用于通过所述转换后的SQL语句对所述脱敏数据对应的原始数据进行关联分析;以及,根据所述关联分析的数据结果进行数据分析,并将所述数据分析的结果进行返回。
8.根据权利要求7所述的装置,其特征在于,所述构建模块,用于:
定义元数据的存储结构;其中,所述元数据用于描述数据;
当确定有需要脱敏的原始数据时,定义脱敏元数据的存储结构;
建立所述原始数据元数据与脱敏数据元数据之间的映射关系。
9.根据权利要求8所述的装置,其特征在于,所述构建模块,还用于:
当所述需要脱敏的原始数据加载到数据平台时,将所述原始数据进行脱敏;
以及,将所述原始数据以及所述原始数据对应的脱敏数据均加载至所述数据平台
10.根据权利要求9所述的装置,其特征在于,所述构建模块,还用于:
对脱敏元数据构建数据索引,使得用户通过搜索引擎针对所述数据索引搜索到脱敏元数据。
11.根据权利要求7所述的装置,其特征在于,所述解析模块,具体用于:解析用户执行数据操作的原始SQL语句,分析得到所述SQL语句所使用的数据表的列信息。
12.根据权利要求7所述的装置,其特征在于,所述转换模块,具体用于:
根据所述SQL语句以及所述映射关系,通过预设的转换策略获得转换后的SQL语句;其中,所述预设的转换策略包括:在所述SQL语句中的以下子句中将所述脱敏数据替换成所述脱敏数据对应的原始数据:
Where子句、Group By子句和Having子句以及Order By子句。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710002591.XA CN108268558B (zh) | 2017-01-03 | 2017-01-03 | 一种数据分析的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710002591.XA CN108268558B (zh) | 2017-01-03 | 2017-01-03 | 一种数据分析的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108268558A true CN108268558A (zh) | 2018-07-10 |
CN108268558B CN108268558B (zh) | 2020-12-04 |
Family
ID=62771573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710002591.XA Active CN108268558B (zh) | 2017-01-03 | 2017-01-03 | 一种数据分析的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108268558B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109299616A (zh) * | 2018-09-07 | 2019-02-01 | 北明软件有限公司 | 一种基于连接池的数据安全管控系统和方法 |
CN111581439A (zh) * | 2020-03-25 | 2020-08-25 | 北方工业大学 | 一种用于机器学习分析的大数据信息处理方法及系统 |
CN112163214A (zh) * | 2020-09-22 | 2021-01-01 | 杭州数梦工场科技有限公司 | 数据访问的方法和装置 |
WO2021051612A1 (zh) * | 2019-09-19 | 2021-03-25 | 平安科技(深圳)有限公司 | 数据授权脱敏自动化方法、系统、装置及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040190046A1 (en) * | 2003-03-24 | 2004-09-30 | Fuji Xerox Co., Ltd. | Service processor, service processing system and source data storing method for service processing system |
CN103177007A (zh) * | 2011-12-22 | 2013-06-26 | 中国移动通信集团公司 | 去隐私化处理方法和装置 |
CN103973668A (zh) * | 2014-03-27 | 2014-08-06 | 温州大学 | 一种网络信息系统中服务器端的个人隐私数据保护方法 |
CN104731878A (zh) * | 2015-03-09 | 2015-06-24 | 郑州航空工业管理学院 | 一种基于云计算的数据挖掘系统及方法 |
CN104881280A (zh) * | 2015-05-13 | 2015-09-02 | 南京邮电大学 | 一种支持多查询的密文数据库中间件的设计方法 |
CN105678189A (zh) * | 2016-01-15 | 2016-06-15 | 上海海事大学 | 加密数据文件存储和检索系统及方法 |
CN105989295A (zh) * | 2015-03-16 | 2016-10-05 | 迈德安全基金会 | 数据系统和方法 |
-
2017
- 2017-01-03 CN CN201710002591.XA patent/CN108268558B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040190046A1 (en) * | 2003-03-24 | 2004-09-30 | Fuji Xerox Co., Ltd. | Service processor, service processing system and source data storing method for service processing system |
CN103177007A (zh) * | 2011-12-22 | 2013-06-26 | 中国移动通信集团公司 | 去隐私化处理方法和装置 |
CN103973668A (zh) * | 2014-03-27 | 2014-08-06 | 温州大学 | 一种网络信息系统中服务器端的个人隐私数据保护方法 |
CN104731878A (zh) * | 2015-03-09 | 2015-06-24 | 郑州航空工业管理学院 | 一种基于云计算的数据挖掘系统及方法 |
CN105989295A (zh) * | 2015-03-16 | 2016-10-05 | 迈德安全基金会 | 数据系统和方法 |
CN104881280A (zh) * | 2015-05-13 | 2015-09-02 | 南京邮电大学 | 一种支持多查询的密文数据库中间件的设计方法 |
CN105678189A (zh) * | 2016-01-15 | 2016-06-15 | 上海海事大学 | 加密数据文件存储和检索系统及方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109299616A (zh) * | 2018-09-07 | 2019-02-01 | 北明软件有限公司 | 一种基于连接池的数据安全管控系统和方法 |
WO2021051612A1 (zh) * | 2019-09-19 | 2021-03-25 | 平安科技(深圳)有限公司 | 数据授权脱敏自动化方法、系统、装置及存储介质 |
CN111581439A (zh) * | 2020-03-25 | 2020-08-25 | 北方工业大学 | 一种用于机器学习分析的大数据信息处理方法及系统 |
CN112163214A (zh) * | 2020-09-22 | 2021-01-01 | 杭州数梦工场科技有限公司 | 数据访问的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108268558B (zh) | 2020-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108268558A (zh) | 一种数据分析的方法和装置 | |
CN107180200B (zh) | 数据文件可定制化脱敏方法和系统 | |
US20150040237A1 (en) | Systems and methods for interactive creation of privacy safe documents | |
CN107251041A (zh) | 用于保护并控制对数据进行访问的技术 | |
CN101002417A (zh) | 不标识敏感信息及相关记录的系统及方法 | |
CN103577323B (zh) | 基于动态关键指令序列胎记的软件抄袭检测方法 | |
Dalai et al. | Neutralizing SQL injection attack using server side code modification in web applications | |
CN106610995A (zh) | 一种创建密文索引的方法、装置及系统 | |
CN103607420A (zh) | 面向云存储的安全电子医疗系统 | |
CN109726348A (zh) | 网页水印防护的方法及系统 | |
KR20130093837A (ko) | 의료 데이터 검색 방법 및 장치 | |
JP2009003549A (ja) | データ管理装置およびデータ管理方法、データ管理プログラム、データ管理プログラム記憶媒体 | |
CN116663043A (zh) | 数据处理方法、装置、设备、存储介质及程序产品 | |
CN113177221A (zh) | 一种计算机软件加密系统 | |
CN113642025A (zh) | 接口数据处理方法、装置、设备及存储介质 | |
CN103442016B (zh) | 基于网站指纹推送白名单的方法及系统 | |
CN107291851A (zh) | 基于属性加密的密文索引构造方法及其查询方法 | |
JP2012073693A (ja) | 遺伝子情報検索システム、遺伝子情報記憶装置、遺伝子情報検索装置、遺伝子情報記憶プログラム、遺伝子情報検索プログラム、遺伝子情報記憶方法及び遺伝子情報検索方法 | |
CN107392027A (zh) | 一种网站漏洞测试方法、测试系统、电子设备及存储介质 | |
JP2011133928A (ja) | 記憶装置に記憶してある文書ファイルを検索する検索装置、検索システム、検索方法及びコンピュータプログラム | |
CN114238273A (zh) | 数据库管理方法、装置、设备及存储介质 | |
Daniels et al. | Protecting Patients' Data: An Efficient Method for Health Data Privacy | |
Odabi et al. | Data security in health information systems by applying software techniques | |
Vu et al. | Alpaca: Advanced linguistic pattern and concept analysis framework for software engineering corpora | |
JP2007241461A (ja) | データ管理装置、データ管理方法及びデータ管理プログラムを記録した記録媒体 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |