CN114297262A - 一种基于数据流的数据溯源方法及计算机存储介质 - Google Patents
一种基于数据流的数据溯源方法及计算机存储介质 Download PDFInfo
- Publication number
- CN114297262A CN114297262A CN202111654957.4A CN202111654957A CN114297262A CN 114297262 A CN114297262 A CN 114297262A CN 202111654957 A CN202111654957 A CN 202111654957A CN 114297262 A CN114297262 A CN 114297262A
- Authority
- CN
- China
- Prior art keywords
- data
- node
- input
- output
- field
- 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
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000004364 calculation method Methods 0.000 claims abstract description 79
- 238000012546 transfer Methods 0.000 claims abstract description 4
- 238000001914 filtration Methods 0.000 claims description 34
- 230000002776 aggregation Effects 0.000 claims description 32
- 238000004220 aggregation Methods 0.000 claims description 32
- 238000006243 chemical reaction Methods 0.000 claims description 30
- 238000012216 screening Methods 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 16
- 238000000605 extraction Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 5
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于数据流的数据溯源方法及计算机存储介质,包括配置多个逐级指向的数据流转节点,形成一数据工厂并执行数据计算,于各数据流转节点的首端和/或末端生成对应的输入数据集和输出数据集;响应于所述数据工厂的数据计算,于数据流转节点的末端生成对应的数据计算日志;设置溯源范围并配置各数据流转节点的溯源信息,结合所述溯源信息和数据计算日志对输出数据集中的数据进行逆向逐级溯源得到原始输入数据记录,溯源过程灵活,且溯源结果准确可靠。
Description
技术领域
本发明涉及工业互联网平台的数据处理技术领域,具体公开了一种基于数据流的数据溯源方法及计算机存储介质。
背景技术
数据工厂虽然可对业务主体的业务数据进行整合和分析计算,但对于数据在整合和分析过程的数据处理、关联和演变,不能直观有效的表达,此时,则需要对数据进行溯源,以对输出数据衍生前的原始数据以及演变过程进行描述,以直观的理解和分析数据处理和演变过程,对于分析数据工厂的准确性和有效性具有不可替代的价值。
目前,对于数据工厂,传统的溯源通常是通过标记查询的方法进行,即通过为单一的数据集配置数据查询的条件和查询结果展示,该方法中溯源结果的准确性依赖于配置人员的业务和技术素养,并且,由于查询条件的配置和数据工厂的运行逻辑不一致,耦合匹配依赖对该数据工厂配置的理解,如数据工厂的配置发生变化,则需要重新配置相应的查询条件,不具有通用性,且工作量大。
发明内容
有鉴于此,本发明的目的在于提供一种基于数据流的数据溯源方法及计算机存储介质,以解决现有技术中的数据溯源方法不具有通用性的问题。
为达到上述目的,本发明的第一方面提供一种基于数据流的数据溯源方法,包括以下步骤:
S1:配置多个逐级指向的数据流转节点,形成一数据工厂并执行数据计算,于各数据流转节点的首端和/或末端生成对应的输入数据集和输出数据集;
S2:响应于所述数据工厂的数据计算,于数据流转节点的末端生成对应的数据计算日志;
S3:设置溯源范围并配置各数据流转节点的溯源信息,结合所述溯源信息和数据计算日志对输出数据集中的数据进行逆向逐级溯源得到原始输入数据记录。
进一步的,在步骤S1中,所述多个逐级指向的数据流转节点包括至少一个输入节点、一个输出节点以及至少一个配置在输入节点和输出节点之间并逐级连接的操作节点,所述操作节点中配置有对流入该操作节点的数据进行数据计算的计算规则;所述数据工厂根据配置的计算规则逐级执行数据计算,且计算过程中生成的各输入数据集分别对应形成于对应的操作节点和输出节点的首端,各输出数据集分别对应形成于对应的输入节点和操作节点的末端。
进一步的,在步骤S1中,所述数据工厂执行数据计算的具体方法为:
S101:在输入节点中添加数据源并设置输入字段,基于所述输入字段获取数据源中对应的数据于所述输入节点的末端形成输入节点的输出数据集;
S102:所述输入节点的输出数据集沿各操作节点逐级流转,于所述操作节点的首端形成操作节点的输入数据集,并经配置于操作节点的计算规则执行计算后,于该操作节点的末端形成对应操作节点的输出数据集;其中,所述计算规则包括数据连接、抽取转换、筛选过滤和分组聚合;
S103:最后一级所述操作节点的输出数据集继续流转,于所述输出节点的首端形成所述输出节点的输入数据集,设置输出字段后经所述输出节点输出。
进一步的,在步骤S1中,所述输入数据集中包括至少一条数据结构相同的输入数据记录,所述输出数据集中包括至少一条数据结构相同的输出数据记录,输入数据记录和输出数据记录的数据结构均包括数据字段和数据约束,所述输入数据记录和输出数据记录中分别存储有数据字段对应的数据信息。
进一步的,在步骤S102中,配置有数据连接的操作节点具有至少两个对应的输入数据集,配置数据连接的操作节点对输入数据集进行计算的具体方法为:
在两个数据输入集中确定至少一个相同数据字段为连接字段,对两个数据集按照设置的连接规则进行数据连接,并返回连接后的数据形成所述输出数据集,所述输出数据集的数据字段为所述两个输入数据集的数据字段去重后的并集;
配置抽取转换的操作节点对输入数据集进行计算的具体方法为:
在所述输入数据集中确定至少一个数据字段为抽取字段,利用所述抽取字段抽取对应的数据记录形成所述输出数据集;
和/或
在所述输入数据集中确定至少一个数据字段为转换字段,配置转换规则,并根据转换规则设置一新增字段,利用所述转换规则对转换字段对应的输入数据记录进行转换得到转换后的数据记录并填充至新增字段中形成所述输出数据集;
配置筛选过滤的操作节点对输入数据集进行计算的具体方法为:
在所述输入数据集中确定至少一个数据字段为筛选字段或者过滤字段,配置执行筛选过滤过的筛选字段及过滤字段的值,利用所述筛选字段或过滤字段的值对输入数据集中输入数据记录进行筛选或过滤形成所述输出数据集;其中,当确定有多个筛选字段或过滤字段时,多个筛选字段或过滤字段的值之间逻辑关系为“且”;
配置分组聚合的操作节点对输入数据集进行计算的具体方法为:
在所述输入数据集中确定至少一个数据字段为分组字段,利用所述分组字段对输入数据记录进行分组,并根据分组情况设置一聚合字段,设置聚合规则,利用所述聚合规则对分组后的输入数据记录进行聚合得到聚合后的数据记录并填充至聚合字段中,形成所述输出数据集。
进一步的,在步骤S2中,所述数据计算日志中写入有对应数据流转节点的输出数据集及其对应的处理规则,其中,所述输入节点的处理规则为设置输入字段,所述操作节点的处理规则为对应节点的计算规则,所述输出节点的处理规则为设置输出字段。
进一步的,所述步骤S3具体包括以下步骤:
S301:设置数据溯源范围,确定数据溯源的起始节点和结束节点;
S302:以所述起始节点为当前节点,并确定当前节点的节点类型,根据当前节点的输出数据集及对应的处理规则配置该节点的溯源信息;其中,所述节点类型为输入节点、操作节点或输出节点;
S303:在输出数据集中确定需溯源的输出数据记录,利用所述溯源信息在对应的数据计算日志的输入数据集中匹配与所述输出数据记录相对应的输入数据记录;
S304:判断所述输出数据记录与输入数据记录是否匹配成功,若匹配成功,则跳转执行步骤S305,否则跳转执行步骤S306;
S305:提取匹配成功的输入数据记录,并判断当前节点是否为结束节点,若是,则结束溯源,否则以当前节点为一新的起始节点返回执行步骤S302;
S306:对匹配失败的输出数据记录进行报错,并判断是否存在用户自定义的溯源限制规则,若存在,则根据所述溯源限制规则修改溯源信息后返回执行步骤S304。
进一步的,在步骤S302中,配置溯源信息的具体方法为:
当所述当前节点为输入节点或输出节点时,在输出数据集中获取至少一个数据字段形成所述溯源信息;
当所述当前节点为操作节点时,获取所述操作节点的计算规则,基于所述计算规则配置对应节点的溯源规则形成所述溯源信息。
进一步的,在步骤S3之后,还包括如下步骤:
S4:对所述原始输入数据记录逐级进行可视化,并于各级输入数据记录之间显示对应的计算规则,形成所述输入数据记录的逐级演变路径。
本发明的第二方面提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的基于数据流的数据溯源方法。
本实施例的基于数据流的数据溯源方法,通过配置数据工厂以及在节点间配置对应的数据计算日志,将输入数据集或输出数据集以及对应的处理规则写入对应的数据计算日志中,可实现数据的顺向可追踪,逆向可溯源,并且数据计算日志逐级配置,可实现从任一节点开始向前溯源,并且各节点间的溯源过程互不干扰,确保每一节点溯源结果的准确性以及可追溯性,灵活性高。
附图说明
图1为本发明一种基于数据流的数据溯源方法的流程图。
图2为本实施例的数据工厂的示意图。
图3为数据工厂执行数据计算的流程图。
图4为步骤S3的流程图。
具体实施方式
下面通过具体实施方式进一步详细说明:
本发明通过配置数据工厂,用户可将待处理的数据输入数据工厂,通过数据工厂的正向运算,对数据进行整合分析;通过在各节点的末端配置数据计算日志,对各节点产生的数据集以及对应的计算规则进行存储,可实现数据的逐级溯源,各节点间的数据溯源之间互不影响,确保了溯源结果的准确性,可从任一节点开始向前溯源,溯源过程方便灵活;最后,通过对溯源结果进行逐级展示,有利于用户直观了解数据的演变过程。
实施例
如图1所示,本实施例的一种基于数据流的数据溯源方法包括以下步骤:
S1:配置数据工厂并执行数据计算,生成输入数据集和输出数据集。
首先,配置多个逐级指向的数据流转节点,形成一数据工厂。具体的,所述多个逐级指向的数据流转节点包括至少一个输入节点、一个输出节点以及至少一个配置在输入节点和输出节点之间并逐级连接的操作节点,所述输入节点、操作节点和输出节点之间逐级指向形成一数据流,当在一数据工厂中存在有多个输入节点时,多个输入节点之间并列设置,并最终经各自配置的操作节点流向同一输出节点,以对不同的数据集进行整合分析。所述输入节点可用于将原始数据输入数据工厂,以供数据工厂执行对应的数据计算。所述操作节点中配置有对流入该操作节点的数据执行数据计算的计算规则,当在同一数据流中配置有多个操作节点时,多个所述操作节点逐级对输入的数据执行数据计算;在本实施例中,所述计算规则包括数据连接、抽取转换、筛选过滤和分组聚合。所述输出节点可对数据的计算结果进行输出以供用户提取、使用。
如图2所示,为本实施例配置的一数据工厂的示意图,下面以此为例对本实施例进行说明。本实施例的数据工厂包括两个并列设置的输入节点1和输入节点2,在输入节点1之后依次配置有操作节点1(计算规则为筛选过滤)和操作节点2(计算规则为抽取转换),在输入节点2之后配置有操作节点3(计算规则为分组聚合),并在操作节点2和操作节点3之后配置一操作节点4(计算规则为数据连接),操作节点2和操作节点3均指向操作节点4,以及在操作节点4之后配置一输出节点。当然,在其他的实施例中,还可配置更多数量的输入节点和操作节点,并通过操作节点之间的任意组合,以形成符合数据计算要求的数据处理流程,得到想要数据处理结果。
然后,利用配置好的数据工厂执行数据计算,并在计算过程中,于各数据流转节点的首端和/或末端生成对应的输入数据集和输出数据集;具体的,所述输入数据集分别对应生成于操作节点和输出节点的首端,所述输出数据集分别对应生成于输入节点和操作节点的末端。
在本实施例中,所述输入数据集中包括至少一条数据结构相同的输入数据记录,所述输出数据集中包括至少一条数据结构相同的输出数据记录。所述输入数据记录和输出数据记录的数据结构均包括数据字段和数据约束,所述数据字段用于作为字段标识以用于后续溯源时的数据记录的匹配,所述数据约束用于约束数据字段的来源;所述输入数据记录和输出数据记录中分别存储有数据字段对应的数据信息。
例如:在一数据结构“a.x0=c.a.x0”中,a.为数据约束,即数据集a;x0为数据字段;c.a.x0为数据记录。
如图3所示,所述数据工厂执行数据计算的具体方法为:
S101:在输入节点中添加数据源并设置输入字段,基于所述输入字段获取数据源中对应的数据于所述输入节点的末端形成输入节点的输出数据集。当配置有多个输入节点时,多个所述输入节点的数据源以及输入字段均可以相同或不同,并于对应输入节点的末端形成多个可并行处理的输出数据集。
在本实施例中,将所述输入节点1的数据源配置为一学员基础信息,将输入节点2的数据源配置为一学员成绩信息,则所述输入节点1对应的输出数据集如下表1所示:
学员编号 | 姓名 | 班级 | 联系人姓名 | 出生年月 |
2021001 | 赵某 | 一年级1班 | 赵父 | 2015.03 |
2021002 | 钱某 | 一年级2班 | 钱父 | 2015.08 |
2021003 | 孙某 | 一年级1班 | 孙母 | 2014.12 |
2021004 | 李某 | 二年级1班 | 李母 | 2014.03 |
2021005 | 周某 | 一年级1班 | 周父 | 2015.09 |
2021006 | 吴某 | 二年级2班 | 吴父 | 2015.01 |
2021007 | 郑某 | 一年级1班 | 郑母 | 2015.02 |
表1
所述输入节点2对应的输出数据集如下表2所示:
表2
S102:所述输入节点的输出数据集沿各操作节点逐级流转,于所述操作节点的首端形成操作节点的输入数据集,并经配置于操作节点的计算规则执行计算后,于该操作节点的末端形成对应操作节点的输出数据集。
输入节点1的输出数据集(表1)向后流转作为操作节点1的输入数据集输入操作节点1中,所述操作节点1通过筛选过滤对表1中的数据进行处理。具体的,在所述输入数据集中确定至少一个数据字段为筛选字段或者过滤字段,配置执行筛选过滤过的筛选字段及过滤字段的值,利用所述筛选字段或过滤字段的值对输入数据集中输入数据记录进行筛选或过滤形成所述输出数据集;其中,当确定有多个筛选字段或过滤字段时,多个筛选字段或过滤字段的值之间逻辑关系为“且”。
所述操作节点1执行筛选过滤的描述信息可表示为:
select ds.x0,ds.x1,...,ds.xm; //输出数据集的数据字段
from ds; //数据来源
where f(ds.xp,ds.xq)is true; //筛选过滤字段,其中p、q属于(0,1,...,m)
在本实施例中,以筛选为例,在所述输入节点1的输出数据集(表1)中确定“班级”为筛选字段,并以筛选字段“‘班级’=‘一年级1班’”执行筛选,其描述信息为:
select表1.学员编号,表1.姓名,表1.班级,ds.联系人姓名,ds.出生年月;
from表1;
where a.班级=一年级1班;
则得到操作节点1的输出数据集如下表3所示:
学员编号 | 姓名 | 班级 | 联系人姓名 | 出生年月 |
2021001 | 赵某 | 一年级1班 | 赵父 | 2015.03 |
2021003 | 孙某 | 一年级1班 | 孙母 | 2014.12 |
2021005 | 周某 | 一年级1班 | 周父 | 2015.09 |
2021007 | 郑某 | 一年级1班 | 郑母 | 2015.02 |
表3
当所述操作节点1执行过滤操作时,其执行过程与筛选类似,过滤后的结果与筛选结构相反,在此不一一赘述。
操作节点1的输出数据集(表3)继续向后流转,作为操作节点2的输入数据集输入操作节点2中,所述操作节点2通过抽取转换对表3中的数据进行处理。具体的,在所述输入数据集中确定至少一个数据字段为抽取字段,利用所述抽取字段抽取对应的数据记录形成所述输出数据集;和/或在所述输入数据集中确定至少一个数据字段为转换字段,配置转换规则,并根据转换规则设置一新增字段,利用所述转换规则对转换字段对应的输入数据记录进行转换得到转换后的数据记录并填充至新增字段中形成所述输出数据集;
所述操作节点2执行抽取转换的描述信息可表示为:
select ds.xp,ds.xq,x_new=f(ds.x); //输出数据集的数据字段,x_new为新增字段,f(ds.x)为转换规则
from ds; //数据来源
在本实施例中,当所述操作节点2执行抽取操作时,在操作节点1的输出数据集(表3)中抽取数据字段“学员编号”和“姓名”作为抽取字段,在表3中提取符合该抽取字段的数据记录,其描述信息为:
select表3.学员编号,表3.姓名;
from表3;
得到操作节点2执行抽取操作时的输出数据集如表4-1所示:
学员编号 | 姓名 |
2021001 | 赵某 |
2021003 | 孙某 |
2021005 | 周某 |
2021007 | 郑某 |
表4-1
当所述操作节点2执行转换操作时,在操作节点1的输出数据集(表3)中确定数据字段“出生年月”转换字段,并添加数据字段“年龄”为新增字段,转换规则为“根据当前日期计算学员年龄”,其描述信息为:
select表3.学员编号,表3.姓名,表3.班级,表3.联系人姓名,表3.出生年月,表3.年龄=(2021-出生年份);
from表3;
得到操作节点2执行转换操作时的输出数据集如表4-2所示:
学员编号 | 姓名 | 班级 | 联系人姓名 | 出生年月 | 年龄 |
2021001 | 赵某 | 一年级1班 | 赵父 | 2015.03 | 6 |
2021003 | 孙某 | 一年级1班 | 孙母 | 2014.12 | 7 |
2021005 | 周某 | 一年级1班 | 周父 | 2015.09 | 6 |
2021007 | 郑某 | 一年级1班 | 郑母 | 2015.02 | 6 |
表4-2
输入节点2的输出数据集(表2)继续向后流转,作为操作节点3的输入数据集输入操作节点3中,所述操作节点3通过分组聚合对表2中的数据进行处理。具体的,在所述输入数据集中确定至少一个数据字段为分组字段,利用所述分组字段对输入数据记录进行分组,并根据分组情况设置一聚合字段,设置聚合规则,利用所述聚合规则对分组后的输入数据记录进行聚合得到聚合后的数据记录并填充至聚合字段中,形成所述输出数据集。
所述操作节点3的执行分组聚合的描述信息为:
select a.xp,aggregation(a.xq) //输出数据集的数据字段
from ds; //数据来源
group by a.xp; //分组字段
在本实施例中,在输入节点2的输出数据集(表2)中确定数据字段“学员编号”为分组字段,并以数据字段“成绩”作为聚合字段,聚合规则为“求和”,其描述信息为:
select表2.学院编号,aggregation(表2.成绩);
from表2;
group by成绩;
得到操作节点3的输出数据集如表5所示:
学员编号 | 总分 |
2021001 | 170 |
2021002 | 169 |
2021003 | 145 |
2021004 | 155 |
2021005 | 170 |
2021006 | 155 |
2021007 | 170 |
表5
由于,操作节点4配置的计算规则为数据连接,因此对于操作节点4,具有两个输入。此时,操作节点2的输出数据集(以表4-1为例)和操作节点3的输出数据集(表5)同时继续向后流转,作为操作节点4的两个输入数据集输入操作节点4中,所述操作节点4通过执行数据连接对表4-1和表5进行数据连接。具体的,在两个数据输入集中确定至少一个相同数据字段为连接字段,对两个数据集按照设置的连接规则进行数据连接,并返回连接后的数据形成所述输出数据集,所述输出数据集的数据字段为所述两个输入数据集的数据字段去重后的并集。
在本实施例中,所述连接规则包括内连接、左连接和右连接;所述内连接即为以确定的连接字段对表4-1和表5中的数据求交集,并将表4-1和表5中连接字段的值相等的所有数据提取出来并进行整理,由此得到执行内连接后的数据;所述左连接即为保留表4-1所有字段及数据,将表4-1和表5中连接字段的值相等的数据提取出来连接至表4-1中,得到执行左连接后的数据;所述右连接即为保留表5中所有字段及数据,将表4-1和表5中连接字段的值相等的数据提取出来连接至表5中,得到执行右连接后的数据。
所述操作节点4执行数据连接操作的描述如下:
select a.x0,a.x1,...,a.xm,b.y0,b.y1,...,b.yn; //输出数据集的数据字段
from dataset_a as a,from dataset_b as b; //输入数据集a、b的数据来源
on a.xi=b.yj; //连接字段
在本实施例中,确定数据字段“学员编号”作为连接字段,设置连接规则为左连接,
select表4-1.学员编号,表4-1.姓名,表5.总分;
from表4-1,表5;
on表4-1.学员编号=表5.学员编号;
得到所述操作节点4执行数据连接后的输出数据集如表6所示:
学员编号 | 姓名 | 总分 |
2021001 | 赵某 | 170 |
2021003 | 孙某 | 145 |
2021005 | 周某 | 170 |
2021007 | 郑某 | 170 |
表6
S103:最后一级所述操作节点的输出数据集继续流转,于所述输出节点的首端形成所述输出节点的输入数据集,设置输出字段后经所述输出节点输出。即操作节点4的输出数据集(表6)继续向后流转,作为输出节点的输入数据集流入输出节点中,设置输出字段后经所述输出节点输出。
S2:基于数据工厂的数据计算配置数据计算日志。
响应于所述数据工厂的数据计算,于数据流转节点的末端生成对应的数据计算日志。
具体的,请返回参考图2,在所述数据工厂执行数据计算时,分别在输入节点1、输入节点2、操作节点1、操作节点2、操作节点3和操作节点4的末端分别生成对应的数据计算日志1-6,并依次将对应的输出数据集(表1-6)分别写入该数据计算日志中,同时,将每一对应执行的数据计算的处理规则(即描述信息)写入对应的数据计算日志中,其中,所述输入节点的处理规则为设置输入字段,所述操作节点的处理规则为对应节点的计算规则,所述输出节点的处理规则为设置输出字段。对于输出节点,由于其后输出的数据直接由用户所使用,因此,在本实施例中,对于输出节点可不配置数据计算日志。
S3:设置溯源范围,生成对应的溯源信息对数据进行逐级逆向溯源。
设置溯源范围并配置各数据流转节点的溯源信息,结合所述溯源信息和数据计算日志对输出数据集中的数据进行逆向逐级溯源得到原始输入数据记录。
如图4所示,所述步骤S3具体包括以下步骤:
S301:设置数据溯源范围,确定数据溯源的起始节点和结束节点。如将本实施例的输出节点设置为起始节点,输入节点1和输入节点2作为结束节点分别进行溯源。当然,在其他的实施例中,也可将数据工厂的任意一个节点设置为起始节点和结束节点进行溯源,在此不作限制。
S302:以所述起始节点为当前节点,并确定当前节点的节点类型,根据当前节点的输出数据集及对应的处理规则配置该节点的溯源信息;在本实施例中,所述节点类型为输入节点、操作节点或输出节点,其中所述操作节点又包括执行数据连接、抽取转换、筛选过滤或分组聚合的操作节点。
具体的,当所述当前节点为输入节点或输出节点时,在输出数据集中获取至少一个数据字段形成所述溯源信息。当所述当前节点为操作节点时,获取所述操作节点的计算规则,基于所述计算规则配置对应节点的溯源规则形成所述溯源信息。同样,请参考图2,分别以操作节点1-4对所述操作节点的溯源信息的配置进行说明。
对于操作节点1,在所述操作节点1的输出数据集(表3)中获取各数据字段,根据溯源精度的要求,确定至少一个数据字段形成所述溯源信息,其中溯源信息中包含的数据字段越多,溯源结果更准确,且对于数据字段中存在唯一标识的数据字段时(如身份证号),也可只将该一个数据字段设置为溯源信息也可准确对该数据的原始输入数据记录进行溯源。
对于操作节点2,在所述操作节点2的输出数据集(表4-1或表4-2)中获取各数据字段,由于新增字段由于在原始输入数据集中不存在,在溯源时需对该新增字段进行逆运算后进行溯源;然后在数据字段中确定至少一个数据字段形成所述溯源信息。
对于操作节点3,在所述操作节点3的输出数据集(表5)中获取各数据字段,删除聚合字段,由于所述聚合字段对应的数据(如求和、求平均值等)计算不可逆,因此可用于数据溯源;然后在余下的数据字段中确定至少一个数据字段形成所述溯源信息。
对于操作节点4,在所述操作节点4的输出数据集(表6)中首先获取所述连接字段,并从对应数据计算日志的描述信息中,确定表6的两个原始输入数据集(表4-1和表5)各自的自有字段,确定所述连接字段或至少一个自有字段形成各自的溯源信息。
S303:在输出数据集中确定需溯源的输出数据记录,利用所述溯源信息在对应的数据计算日志的输入数据集中匹配与所述输出数据记录相对应的输入数据记录。
对于操作节点1(即筛选过滤)的数据溯源方法为:
若对于表3中“学员编号”=2021005、“姓名”=周某、“班级”=一年级1班、“联系人姓名”=周父以及“出生年月”=2015.09的输出数据记录进行溯源,其溯源方法可描述为:
select表1.学员编号,表1.姓名,表1.班级,表1.联系人姓名,表1.出生年月;
from表1;
where表1.学员编号=2021005;
and表1.姓名=周某;
and表1.班级=一年级1班;
and表1.联系人姓名=周父;
and表1.出生年月=2015.09;
利用上述数据字段及其对应的输出数据记录,在数据计算日志1中的表1中匹配对应的输入数据记录,完成表3中该条输出数据记录的溯源。
对于操作节点2(即抽取转换)的数据溯源方法为(以表4-2为例):
对于表4-2中的新增字段“年龄”,根据其转换规则,“年龄”=2021-出生年份,因此在溯源时,需以“2021-出生年份”为数据字段进行溯源,即对表4-2中“学员编号”=2021005、“姓名”=周某、“班级”=一年级1班、“联系人姓名”=周父、“出生年月”=2015.09以及年龄=6的输出数据记录进行溯源的溯源方法可描述为:
select表3.学员编号,表3.姓名,表3.班级,表3.联系人姓名,表3.出生年月;
from表3;
where表3.学员编号=2021005;
and表3.姓名=周某;
and表3.班级=一年级1班;
and表3.联系人姓名=周父;
and表3.出生年月=2015.09;
and表3.2021-出生年份=6;
利用上述数据字段及其对应的输出数据记录,在数据计算日志3中的表3中匹配对应的输入数据记录,完成表4-2中该条输出数据记录的溯源。
对于操作节点3(即分组聚合)的数据溯源方法为:
对于表3中的聚合字段“总分”,由于其为求和得到,根据其聚合规则,计算具有不可逆性,在确定数据字段时,应删除该字段。因此,选择表5中的“学员编号”=2021001进行溯源时,其溯源方法可描述为:
select表2.学员编号,表2.科目,表2.成绩;
from表2;
where表2.学员编号=2021001;
利用上述数据字段及其对应的输出数据记录,在数据计算日志2中的表2中匹配对应的输入数据记录,完成表5中该条输出数据记录的溯源,此时溯源的结果存在两条输入数据记录,即“‘学员编号’=2021001,‘科目’=语文,‘成绩’=80;‘学员编号’=2021001,‘科目’=数学,‘成绩’=90”。
对于操作节点4(即数据连接)的溯源方法为,对于表6中的字段“总分”为其上以操作节点求和得到,根据其聚合规则,计算具有不可逆性,在确定数据字段时,需避免将该字段用于溯源。即对表6中的连接字段“学员编号”=2021001进行溯源时,其溯源方法可描述为:
在表4-1上的溯源:
select表4-1.学员编号,表4-1.姓名;
from表4-1;
where表4-1.学员编号=2021001;
在表5上的溯源:
select表5.学员编号,表5.总分;
from表5;
where表5.学员编号=2021001;
利用上述数据字段及其对应的输出数据记录,在数据计算日志4的表4-1和数据日志5的表5中匹配对应的输入数据记录,完成表4-2中该条输出数据记录的溯源。
S304:判断所述输出数据记录与输入数据记录是否匹配成功,若匹配成功,则说明在该当前节点的输入数据集存在与其选择的输出数据记录相对应的输入数据记录,然后跳转执行步骤S305,否则跳转执行步骤S306。
S305:提取匹配成功的输入数据记录,并判断当前节点是否为结束节点,若是,则结束溯源,否则以当前节点为一新的起始节点返回执行步骤S302,继续向前进行溯源。
S306:对匹配失败的输出数据记录进行报错,并判断是否存在用户自定义的溯源限制规则,若存在,则根据所述溯源限制规则修改溯源信息后返回执行步骤S304。
在本实施例中,所述溯源限制规则包括不存在逆运算的溯源信息(如聚合计算得到汇总数和平均数等)、新增字段等等。
S4:溯源可视化,展示原始输入数据以及数据演变过程。
具体的,将步骤S305中提取的匹配成功的输入数据记录逐条进行展示,并于各级输入数据记录之间显示对应的计算规则,形成所述输入数据记录的逐级演变路径,以便用户能够直观看到数据在某一节点时的原始数据。
本实施例的基于数据流的数据溯源方法,通过配置数据工厂以及在节点间配置对应的数据计算日志,并在数据工厂执行数据计算过程中,将输入数据集或输出数据集以及对应的处理规则写入对应的数据计算日志中,可实现数据的顺向可追踪,逆向可溯源,以便用户直观了解数据处理的全过程。
本发明的另一实施例还提供一种计算机存储介质,其上存储有计算机程序,通过所述计算机执行计算机程序时,可执行上述实施例1的基于数据流的数据溯源方法的部分或全部操作,从而实现上述实施例的功能
以上所述的仅是本发明的实施例,方案中公知的具体结构及特性等常识在此未作过多描述。应当指出,对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些也应该视为本发明的保护范围,这些都不会影响本发明实施的效果和本发明的实用性。
Claims (10)
1.一种基于数据流的数据溯源方法,其特征在于,包括以下步骤:
S1:配置多个逐级指向的数据流转节点,形成一数据工厂并执行数据计算,于各数据流转节点的首端和/或末端生成对应的输入数据集和输出数据集;
S2:响应于所述数据工厂的数据计算,于数据流转节点的末端生成对应的数据计算日志;
S3:设置溯源范围并配置各数据流转节点的溯源信息,结合所述溯源信息和数据计算日志对输出数据集中的数据进行逆向逐级溯源得到原始输入数据记录。
2.根据权利要求1所述的一种基于数据流的数据溯源方法,其特征在于,在步骤S1中,所述多个逐级指向的数据流转节点包括至少一个输入节点、一个输出节点以及至少一个配置在输入节点和输出节点之间并逐级连接的操作节点,所述操作节点中配置有对流入该操作节点的数据进行数据计算的计算规则;所述数据工厂根据配置的计算规则逐级执行数据计算,且计算过程中生成的各输入数据集分别对应形成于对应的操作节点和输出节点的首端,各输出数据集分别对应形成于对应的输入节点和操作节点的末端。
3.根据权利要求2所述的一种基于数据流的数据溯源方法,其特征在于,在步骤S1中,所述数据工厂执行数据计算的具体方法为:
S101:在输入节点中添加数据源并设置输入字段,基于所述输入字段获取数据源中对应的数据于所述输入节点的末端形成输入节点的输出数据集;
S102:所述输入节点的输出数据集沿各操作节点逐级流转,于所述操作节点的首端形成操作节点的输入数据集,并经配置于操作节点的计算规则执行计算后,于该操作节点的末端形成对应操作节点的输出数据集;其中,所述计算规则包括数据连接、抽取转换、筛选过滤和分组聚合;
S103:最后一级所述操作节点的输出数据集继续流转,于所述输出节点的首端形成所述输出节点的输入数据集,设置输出字段后经所述输出节点输出。
4.根据权利要求3所述的一种基于数据流的数据溯源方法,其特征在于,在步骤S1中,所述输入数据集中包括至少一条数据结构相同的输入数据记录,所述输出数据集中包括至少一条数据结构相同的输出数据记录,输入数据记录和输出数据记录的数据结构均包括数据字段和数据约束,所述输入数据记录和输出数据记录中分别存储有数据字段对应的数据信息。
5.根据权利要求4所述的一种基于数据流的数据溯源方法,其特征在于,在步骤S102中,配置有数据连接的操作节点具有至少两个对应的输入数据集,配置数据连接的操作节点对输入数据集进行计算的具体方法为:
在两个数据输入集中确定至少一个相同数据字段为连接字段,对两个数据集按照设置的连接规则进行数据连接,并返回连接后的数据形成所述输出数据集,所述输出数据集的数据字段为所述两个输入数据集的数据字段去重后的并集;
配置抽取转换的操作节点对输入数据集进行计算的具体方法为:
在所述输入数据集中确定至少一个数据字段为抽取字段,利用所述抽取字段抽取对应的数据记录形成所述输出数据集;
和/或
在所述输入数据集中确定至少一个数据字段为转换字段,配置转换规则,并根据转换规则设置一新增字段,利用所述转换规则对转换字段对应的输入数据记录进行转换得到转换后的数据记录并填充至新增字段中形成所述输出数据集;
配置筛选过滤的操作节点对输入数据集进行计算的具体方法为:
在所述输入数据集中确定至少一个数据字段为筛选字段或者过滤字段,配置执行筛选过滤过的筛选字段及过滤字段的值,利用所述筛选字段或过滤字段的值对输入数据集中输入数据记录进行筛选或过滤形成所述输出数据集;其中,当确定有多个筛选字段或过滤字段时,多个筛选字段或过滤字段的值之间逻辑关系为“且”;
配置分组聚合的操作节点对输入数据集进行计算的具体方法为:
在所述输入数据集中确定至少一个数据字段为分组字段,利用所述分组字段对输入数据记录进行分组,并根据分组情况设置一聚合字段,设置聚合规则,利用所述聚合规则对分组后的输入数据记录进行聚合得到聚合后的数据记录并填充至聚合字段中,形成所述输出数据集。
6.根据权利要求5所述的一种基于数据流的数据溯源方法,其特征在于,在步骤S2中,所述数据计算日志中写入有对应数据流转节点的输出数据集及其对应的处理规则,其中,所述输入节点的处理规则为设置输入字段,所述操作节点的处理规则为对应节点的计算规则,所述输出节点的处理规则为设置输出字段。
7.根据权利要求6所述的一种基于数据流的数据溯源方法,其特征在于,所述步骤S3具体包括以下步骤:
S301:设置数据溯源范围,确定数据溯源的起始节点和结束节点;
S302:以所述起始节点为当前节点,并确定当前节点的节点类型,根据当前节点的输出数据集及对应的处理规则配置该节点的溯源信息;其中,所述节点类型为输入节点、操作节点或输出节点;
S303:在输出数据集中确定需溯源的输出数据记录,利用所述溯源信息在对应的数据计算日志的输入数据集中匹配与所述输出数据记录相对应的输入数据记录;
S304:判断所述输出数据记录与输入数据记录是否匹配成功,若匹配成功,则跳转执行步骤S305,否则跳转执行步骤S306;
S305:提取匹配成功的输入数据记录,并判断当前节点是否为结束节点,若是,则结束溯源,否则以当前节点为一新的起始节点返回执行步骤S302;
S306:对匹配失败的输出数据记录进行报错,并判断是否存在用户自定义的溯源限制规则,若存在,则根据所述溯源限制规则修改溯源信息后返回执行步骤S304。
8.根据权利要求7所述的一种基于数据流的数据溯源方法,其特征在于,在步骤S302中,配置溯源信息的具体方法为:
当所述当前节点为输入节点或输出节点时,在输出数据集中获取至少一个数据字段形成所述溯源信息;
当所述当前节点为操作节点时,获取所述操作节点的计算规则,基于所述计算规则配置对应节点的溯源规则形成所述溯源信息。
9.根据权利要求1所述的一种基于数据流的数据溯源方法,其特征在于,在步骤S3之后,还包括如下步骤:
S4:对所述原始输入数据记录逐级进行可视化,并于各级输入数据记录之间显示对应的计算规则,形成所述输入数据记录的逐级演变路径。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-9任一项所述的基于数据流的数据溯源方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111654957.4A CN114297262A (zh) | 2021-12-30 | 2021-12-30 | 一种基于数据流的数据溯源方法及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111654957.4A CN114297262A (zh) | 2021-12-30 | 2021-12-30 | 一种基于数据流的数据溯源方法及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114297262A true CN114297262A (zh) | 2022-04-08 |
Family
ID=80974540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111654957.4A Pending CN114297262A (zh) | 2021-12-30 | 2021-12-30 | 一种基于数据流的数据溯源方法及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114297262A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055676A (zh) * | 2016-06-03 | 2016-10-26 | 电子科技大学 | 一种基于大数据模型分析平台的数据溯源方法及系统 |
CN106203140A (zh) * | 2016-07-15 | 2016-12-07 | 上海数据交易中心有限公司 | 基于数据结构的数据流通方法、装置及终端 |
CN106779554A (zh) * | 2016-12-12 | 2017-05-31 | 东莞市极酷机电科技有限公司 | 一种可追溯大数据智能物流系统以及管理使用方法 |
CN108734475A (zh) * | 2017-04-19 | 2018-11-02 | 中山大学 | 一种基于大数据关联度分析的溯源防伪方法 |
CN110019116A (zh) * | 2017-09-26 | 2019-07-16 | 中兴通讯股份有限公司 | 数据追溯方法、装置、数据处理设备及计算机存储介质 |
CN112181931A (zh) * | 2020-10-20 | 2021-01-05 | 上海依图网络科技有限公司 | 一种大数据系统链路追踪方法及电子设备 |
CN112329031A (zh) * | 2020-10-27 | 2021-02-05 | 国网福建省电力有限公司信息通信分公司 | 一种基于数据中台的数据权限控制系统 |
-
2021
- 2021-12-30 CN CN202111654957.4A patent/CN114297262A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055676A (zh) * | 2016-06-03 | 2016-10-26 | 电子科技大学 | 一种基于大数据模型分析平台的数据溯源方法及系统 |
CN106203140A (zh) * | 2016-07-15 | 2016-12-07 | 上海数据交易中心有限公司 | 基于数据结构的数据流通方法、装置及终端 |
CN106779554A (zh) * | 2016-12-12 | 2017-05-31 | 东莞市极酷机电科技有限公司 | 一种可追溯大数据智能物流系统以及管理使用方法 |
CN108734475A (zh) * | 2017-04-19 | 2018-11-02 | 中山大学 | 一种基于大数据关联度分析的溯源防伪方法 |
CN110019116A (zh) * | 2017-09-26 | 2019-07-16 | 中兴通讯股份有限公司 | 数据追溯方法、装置、数据处理设备及计算机存储介质 |
CN112181931A (zh) * | 2020-10-20 | 2021-01-05 | 上海依图网络科技有限公司 | 一种大数据系统链路追踪方法及电子设备 |
CN112329031A (zh) * | 2020-10-27 | 2021-02-05 | 国网福建省电力有限公司信息通信分公司 | 一种基于数据中台的数据权限控制系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110472068B (zh) | 基于异构分布式知识图谱的大数据处理方法、设备及介质 | |
CN107622103B (zh) | 管理数据查询 | |
CN106104592B (zh) | 映射带键实体的属性 | |
CN107430611B (zh) | 过滤数据沿袭图 | |
CN103793422A (zh) | 基于增强星型模型的立方体元数据及查询语句生成 | |
CN109791543B (zh) | 执行多表连接操作的控制方法及对应装置 | |
CN107015901B (zh) | 一种日志分析方法及装置 | |
CN110019116B (zh) | 数据追溯方法、装置、数据处理设备及计算机存储介质 | |
CN105354272B (zh) | 一种基于维度组合的指标计算方法和系统 | |
CN110765750B (zh) | 报表数据录入方法及终端设备 | |
JPWO2017090475A1 (ja) | 情報処理システム、関数作成方法および関数作成プログラム | |
CN110716970A (zh) | 异构数据同构化处理方法、装置、计算机设备及存储介质 | |
CN110471945A (zh) | 活跃数据的处理方法、系统、计算机设备和存储介质 | |
CN109344169B (zh) | 数据处理方法及装置 | |
CN109241163B (zh) | 电子凭证的生成方法及终端设备 | |
CN110674183A (zh) | 科研社群划分及核心学者发现方法、系统、介质及终端 | |
CN114297262A (zh) | 一种基于数据流的数据溯源方法及计算机存储介质 | |
CN116401238A (zh) | 偏离度监测方法、装置、设备、存储介质和程序产品 | |
CN111625521B (zh) | 基于可视化数据集构建的管理方法、系统、介质及设备 | |
CN115203435A (zh) | 基于知识图谱的实体关系生成方法及数据查询方法 | |
CN112131291B (zh) | 基于json数据的结构化解析方法、装置、设备及存储介质 | |
CN113656369A (zh) | 一种大数据场景下的日志分布式流式采集及计算方法 | |
CN113918771A (zh) | 批流融合的信息处理方法和装置、存储介质 | |
CN112445918A (zh) | 一种知识图谱生成方法、装置、电子设备及存储介质 | |
Sąsiadek | Assembly sequence planning with the principles of design for assembly |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230627 Address after: Room 1-1-18, Unit 1, Building 4, No. 1580 Zhiyun Avenue, Yudong Street, Banan District, Chongqing, 401320 Applicant after: Chongqing Yunfeng Technology Co.,Ltd. Address before: 408300 building a, 59 Chaoyang Road, Dianjiang Industrial Park, Chongqing Applicant before: Chongqing Yuncheng Internet Technology Co.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220408 |