一种数据管控的方法及系统
文献发布时间:2023-06-19 09:41:38
技术领域
本说明书实施例涉及数据处理领域,特别涉及一种数据管控的方法及系统。
背景技术
数据是一个企业或组织的核心资产,保护重要数据不被非授权访问、篡改和泄露是企业应该具备的能力。特别是在现今信息化和互联网的时代,对数据安全管控尤为重要。
然而,对于复杂海量的数据,因为类型和内容都很丰富,如何提高管控的效率和准确度是亟需解决的问题。
发明内容
本说明书实施例的一个方面提供一种数据管控方法,所述方法包括:基于一条或多条第一源数据,确定一条或多条第二源数据;对于所述一条或多条第二源数据中的每一条,基于所述第二源数据确定一个或多个数据标签;基于所述一个或多个数据标签确定一个或多个提取器;基于所述第二源数据,通过所述一个或多个提取器获取一个或多个数据特征;基于部分或全部所述一个或多个数据特征,确定所述第二源数据的管控信息;所述管控信息用于对所述第二源数据的访问进行管控。
本说明书实施例的一个方面提供一种数据管控系统,所述系统包括:源数据确定模块,用于基于一条或多条第一源数据,确定一条或多条第二源数据;管控信息确定模块,用于对于所述一条或多条第二源数据中的每一条,基于所述第二源数据确定一个或多个数据标签;基于所述一个或多个数据标签确定一个或多个提取器;基于所述第二源数据,通过所述一个或多个提取器获取一个或多个数据特征;基于部分或全部所述一个或多个数据特征,确定所述第二源数据的管控信息;所述管控信息用于对所述第二源数据的访问进行管控。
本说明书实施例的一个方面提供一种数据管控装置,所述装置包括处理器以及存储器,所述存储器用于存储指令,其特征在于,所述处理器用于执行所述指令,实现如前任一项所述的数据管控方法对应的操作。
本说明书实施例的一个方面提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,实现如前任一项所述的数据管控方法对应的操作。
附图说明
本说明书将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书的一些实施例所示的数据管控系统的应用场景示意图;
图2是根据本说明书一些实施例所示的处理设备的模块图;
图3是根据本说明书一些实施例所示的数据管控的方法的示例性流程图;
图4是根据本说明书一些实施例所示的数据管控的示例性示意图;
图5是根据本说明书一些实施例所示的数据管控的另一示例性示意图;
图6是根据本说明书一些实施例所示的基于指纹提取器和数据指纹特征确定第二源数据的管控信息的示例性流程图;
图7是根据本说明书一些实施例所示的获取一个或多个数据特征的示例性流程图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是根据本说明书的一些实施例所示的数据管控系统的应用场景示意图。
数据管控系统可以应用于各个需要对数据进行管控,以实现数据保护的场景。例如,金融领域、医疗领域、共享平台等。在一些实施例中,数据管控系统可以提取数据的数据特征,并根据数据特征,确定数据的管控信息,以实现对数据的管控。特别的,对于需要管控海量大数据的领域或平台而言,数据管控系统可以根据数据的特征,确定数据特征提取的方式,以保证数据特征提取的准确率,进一步保证数据管控的正确性。在一些情况下,数据管控系统还可以对数据进行过滤,筛除不需要管控的数据,提高数据管控的效率。
如图1所示,数据管控系统100的应用场景可以包括服务器110、网络120、应用端130以及存储设备140。服务器110可以包括处理设备112。
服务器110可以用于处理与数据处理相关的信息和/或数据。在一些实施例中,服务器110可以通过网络120访问储存于应用端130和/或存储设备140中的信息和/或资料。例如,服务器110可以通过网络120获取存储设备140中包括的第一源数据和/或第二源数据。又例如,服务器110可以通过网络120接收应用端130发起的对数据的请求(如,查询、修改、复制、转发等请求)。在一些实施例中,服务器110可以直接与应用端130和/或存储设备140连接以访问存储于其中的信息和/或资料。服务器110可以是独立的服务器或者服务器组。该服务器组可以是集中式的或者分布式的(如:服务器110可以是分布系统)。在一些实施例中,服务器110可以是本地的或者远程的。在一些实施例中,服务器110可在云平台上执行。例如,该云平台可包括私有云、公共云、混合云、社区云、分散式云、内部云等或其任意组合。
在一些实施例中,服务器110可以包括处理设备112。处理设备112可以处理数据和/或信息以执行一个或多个本申请中描述的功能。例如,处理设备112可以根据第一源数据确定第二源数据。又例如,处理设备112可以根据第二源数据确定数据标签。又例如,处理设备112可以确定提取第二源数据的数据特征的提取器。又例如,处理设备112可以根据提取的数据特征确定第二源数据的管控信息。在一些实施例中,处理设备112可包括一个或多个子处理设备(例如,单芯处理设备或多核多芯处理设备)。仅仅作为示例,处理设备112可包括中央处理器(CPU)、专用集成电路(ASIC)、专用指令处理器(ASIP)、图形处理器(GPU)、物理处理器(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编辑逻辑电路(PLD)、控制器、微控制器单元、精简指令集电脑(RISC)、微处理器等或其任意组合。
网络120可促进数据和/或信息的交换。在一些实施例中,数据管控系统100中的一个或多个组件(例如,服务器110、应用端130、存储设备140)可通过网络120发送数据和/或信息至数据管控系统100中的其他组件。在一些实施例中,网络120可是任意类型的有线或无线网络。例如,网络120可包括缆线网络、有线网络、光纤网络、电信网络、内部网络、网际网络、区域网络(LAN)、广域网络(WAN)、无线区域网络(WLAN)、都会区域网络(MAN)、公共电话交换网络(PSTN)、蓝牙网络、ZigBee网络、近场通讯(NFC)网络等或其任意组合。在一些实施例中,网络120可包括一个或多个网络进出点。例如,网络120可包括有线或无线网络进出点,如基站和/或网际网络交换点120-1、120-2、…,通过这些进出点,数据管控系统100的一个或多个组件可连接到网络120上以交换数据和/或信息。
应用端130可以是对数据管控系统中管控的数据进行应用的终端。应用端130可以是各个领域中提供数据应用的终端。应用端130可以是一台计算设备或计算设备组。计算设备组可以是集中式或分布式的。外部用户(个人或组织等)可以通过应用端130获取数据应用服务,例如,数据查询、修改等。应用端130可以包含输入设备,便于用户输入对数据的请求。在一些实施例中,应用终端130可以包括显示设备,用于显示服务器确定的数据的请求的反馈结果。
存储设备140可以用于存储与数据管控系统100相关的信息和/或数据。例如,存储设备140可以存储第一源数据、第二源数据等。在一些实施例中,存储设备140可以用于数据加密、数据解密等操作。在一些实施例中,存储设备140可以存储供服务器110执行或使用的信息和/或指令,以执行本申请中描述的示例性方法。在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、挥发性读写存储器(例如,随机存取存储器RAM)、只读存储器(ROM)等或其任意组合。在一些实施例中,存储设备140可在云平台上实现。例如,该云平台可包括私有云、公共云、混合云、社区云、分散式云、内部云等或其任意组合。在一些实施例中,存储设备可提供各种数据存储服务,例如Mysql服务、大数据服务、Wiki、STEP等。在一些实施例中,处理设备112可以通过探针服务,感知存储设备140中数据的变更,并将变更的数据可以写入到消息中间件。
图2是根据本说明书的一些实施例所示的处理设备的模块图。
在一些实施例中,如图2所示,处理设备(例如,处理设备112)的模块图包括:源数据确定模块210和管控信息确定模块220。
源数据确定模块210用于基于一条或多条第一源数据,确定一条或多条第二源数据。
在一些实施例中,源数据确定模块210还用于:获取过滤器链,过滤器链包含一个或多个过滤器;基于过滤器链,对一条或多条第一源数据进行过滤,确定一条或多条第二源数据。
在一些实施例中,当过滤器链包含多个过滤器时,源数据确定模块210还用于:基于一条或多条第一源数据,确定多个过滤器,以及多个过滤器之间的排列顺序;基于排列顺序和多个过滤器,确定过滤器链。
对于一条或多条第二源数据中的每一条,管控信息确定模块220用于基于第二源数据确定一个或多个数据标签;基于一个或多个数据标签确定一个或多个提取器;基于第二源数据,通过一个或多个提取器获取一个或多个数据特征;基于一个或多个数据特征的部分或全部,确定第二源数据的管控信息管控信息用于对第二源数据的访问进行管控。
在一些实施例中,一个或多个提取器包括数据指纹提取器,一个或多个数据特征包括数据指纹特征,管控信息确定模块220还用于:基于数据指纹特征与一个或多个预设数据指纹特征的相似度,确定目标预设数据指纹特征;基于目标预设数据指纹特征,确定第二源数据的管控信息。在一些实施例中,数据指纹特征通过Sim Hash算法对第二源数据处理得到。
在一些实施例中,管控信息确定模块220还用于:将数据指纹特征分为多段,得到多段子数据指纹特征;将一个或多个预设数据指纹特征中的每一个分为多段,得到多段子预设数据指纹特征;从多段子预设数据指纹特征中,获取与多段子数据指纹特征中任意一段相同的至少一个候选子预设数据指纹特征;从至少一个候选子预设数据指纹特征所在的预设数据指纹特征中,确定与数据指纹特征的相异位个数小于阈值的预设数据指纹特征为目标预设数据指纹特征。
在一些实施例中,管控信息确定模块220还用于:基于第二源数据的一个或多个数据特征,确定一个或多个提取器的执行次序和/或资源分配。
在一些实施例中,管控信息确定模块220还用于:使用一个或多个提取器的部分或全部对第二源数据的部分数据进行提取;当提取程度满足预设条件时,基于已提取数据确定第二源数据的一个或多个数据特征。
应当理解,图2所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于处理设备及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,图2中披露的源数据确定模块210、管控信息确定模块220可以是一个系统中的不同模块,也可以是一个模块实现上述的两个模块的功能。又例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
图3是根据本申请一些实施例所示的数据管控的方法的示例性流程图。在一些实施例中,流程300可以由处理设备(例如,处理设备112)执行。如图3所示,该流程300可以包括以下步骤:
步骤310,基于一条或多条第一源数据,确定一条或多条第二源数据。在一些实施例中,该步骤可以由源数据确定模块210执行。
第一源数据是未经过处理的原始数据。第一源数据可以包括不同类型的数据。在一些实施例中,类型可以是指数据的结构或格式对数据所做的分类,例如,结构化数据和非结构化数据,其中,结构化数据可以是关系型数据库、面向对象数据库等存储的数据;非结构化数据可以是非关系型数据库存储的数据,如,办公文档、文本、图片、XML、HTML等。在一些实施例中,类型可以是根据与实际业务相关的客体对数据所做的分类,例如,身份证号、电话号码、车牌号等。类型还可以是自定义的分类,此处不作限制,例如,个人数据、公司数据等。
在一些实施例中,第一源数据可以从不同的存储服务中获取,例如,Mysql服务、大数据服务、WIKI、SFTP、云端网盘等,也可以从外部数据源直接获取。第一源数据可以是主动获取的,也可以是获取由数据源或第三方推送的数据。
在一些实施例中,在获取第一源数据时,可以感知第一源数据的变更,将发生变更的数据进行处理。变更可以是数据内容或数据结构等发生改变,例如,增加、删除和/或修改数据内容,又例如,修改数据结构等。数据的变更还可以是其他类型,在此不作限制。在一些实施例中,数据变更还包括元(meta)信息变化(如,增加一个字段),导致数据结构发生变化。
在一些实施例中,可以使用探针服务感知数据变更,并将变更的数据推送到消息中间件,消息中间件可以将变更的数据传递给过滤器或提取器等进行后续处理。
探针服务是感知数据变更的服务,当某个存储系统中的数据发生了变更,探针服务通过此数据所在的存储服务提供的一些机制,如Mysql的bin日志、Hadoop的DD/ML等感知数据变更,并获取变更的数据。
第二源数据是对部分或全部原始数据处理后得到的数据。在一些实施例中,处理包括但不限于:筛选、过滤(具体见后文)、数据归一化(具体见后文)、数据类型转化、数据格式转化、数据排列方式变更等中的一种或多种的组合。在一些实施例中,第二源数据可以是包含或不包含特定关键字的文本、指定长度的字符串等。第二源数据可以是符合预设特征的数据,例如,指定大小的数字、指定长度的字符串等。第二源数据可以是与正则表达式匹配的数据,例如,具有指定开头的字符串、包含指定内容的文本等。
在一些实施例中,源数据确定模块210可以对部分或全部第一源数据进行处理后得到第二源数据。其中,处理的方式可以参见上文。例如,源数据确定模块210可以直接对部分或全部第一源数据进行过滤得到第二源数据(关于过滤可以参见后文)。又例如,源数据确定模块210可以将部分或全部第一源数据进行数据归一化得到第二源数据。又例如,源数据确定模块210可以从第一源数据中选取部分或全部数据作为第二源数据。可以理解,处理方式可以是上述多种的不同顺序组合,本说明书不作限制,例如,源数据确定模块210可以先对第一源数据进行数据归一化,再过滤得到第二源数据等。
示例的,如图4所示,确定第二源数据430时,如果第一源数据410是结构化数据,可以直接从第一源数据410提取用于后续确定第二源数据430的数据(例如,直接将第一源数据410作为第二源数据430)。如果第一源数据是非结构化数据,可以先对第一源数据410进行数据归一化处理,再从归一化的数据中提取用于后续确定第二源数据430的数据。
在一些实施例中,源数据确定模块210基于第一源数据处理得到第二源数据可以包括:源数据确定模块210对第一源数据或基于第一源数据进行其他处理得到的中间数据(简称中间源数据)进行数据归一化处理,得到第二源数据。数据归一化处理是将不同格式的数据转换为符合特定规范(例如,结构化)的数据。在一些实施例中,数据归一化可以包括:对待归一化数据(例如,第一源数据)进行类型检测,基于检测的类型匹配到对应的类型解析器后,使用该对应类型的解析器进行数据解析,得到归一化的数据。其中,解析器可以是基于数据类型,按照预设方法对数据进行内容、属性等提取的模块,经过解析器的处理后,可以将非结构化数据转换为机构化数据,以便于进行后续处理。例如,对于PPT文档,对应的解析器可以提取PPT中的文本,图片则可以通过OCR转化为文本;对于照片,对应的解析器可以直接进行文档属性的提取。
示例的,如图4所示,对为非结构化数据的第一源数据410的数据归一化过程包括:先获取承载第一源数据410的文件,基于文件进行类型检测,基于检测的类型匹配对应的解析器进行解析得到归一化的数据。
在一些实施例中,源数据确定模块210基于第一源数据处理得到第二源数据可以包括:源数据确定模块210对第一源数据或基于第一源数据进行其他处理得到的中间数据(简称中间源数据)进行过滤处理,得到第二源数据。过滤可以将数据中不满足要求的数据筛除。例如,将第一源数据中非敏感数据筛除,从而基于敏感数据进行后续的数据管控,从而可以提高后续处理(例如,数据特征提取)的效率和准确率,其中,敏感数据是需要保密和限制访问的信息数据,如,客户隐私、公司业务等。
在一些实施例中,过滤可以通过一个或多个过滤器实现。过滤器可以是对数据进行筛选的模块。过滤器可以通过算法或模型等实现,例如,DFA(Deterministic finiteautomaton,确定有穷状态自动机)、NFA(Non-deterministic finite automaton,非确定有穷自动机)等。
在一些实施例中,可以根据实际需求和/或算法等对过滤器进行分类。例如,可以包括筛选特定类型数据的过滤器、筛选特定大小数据的过滤器、可保留关键字出现频率超过阈值的数据的过滤器、可提取特定数据的过滤器等。又例如,过滤器可以包括特征过滤器、正则表达式过滤器等。
特征过滤器是根据第一源数据或中间源数据中的部分特点而设计的过滤器。例如,根据第一源数据或中间源数据中特定位置的数据类型、数值范围等设计的过滤器。示例的,以11位的手机号为例,手机号码前3位代表运营商,中间4位代表区域号,后面4位用于区分用户,可以基于前3位、中间4位或前7位设计对应的特征过滤器,将前3位、中间4位或前7位不符合运营商和/或区域号对应数值范围的数据过滤。特征过滤器可以根据应用场景进行适应性设计。在一些实施例中,特征过滤器可以通过DFA等算法实现。特征过滤器可以适用于海量数据的过滤,过滤成本低(例如,过滤耗时短等)。
正则表达式过滤器是基于正则表达式对应算法实现的过滤器,其可以是根据第一源数据或中间源数据的整体数据特点而设计的过滤器。例如,正则表达式过滤器可以根据数据的长度、数据的数据类型、数据中不同位置的数据类型或数值范围等设计。示例的,以身份证号码为例,基于数据长度为14位,前三位数值为代表区域的特定数值而设立正则表达式,得到对应的正则表达式过滤器,从而通过该正则表达式可以过滤掉不符合数据长度为14位和/或前三位数值不为特定数值的数据。在一些实施例中,正则表达式过滤器可以通过DFA、NFA等算法实现。在一些实施例中,可以通过子集构造法将NFA转化为DFA,从而构建正则表达式式过滤器。NFA在进行正则匹配时所耗时间长,对于海量数据的过滤而言可能适应性不强,将NFA转化为DFA可以提高海量数据过滤效率。
在一些实施例中,可以根据实际的需求,对正则表达式过滤器进行分级,实现对数据的不同程度或精度的过滤。例如,将正则表达式过滤器分为非精确复合正则表达式过滤器以及严格正则表达式过滤器,严格正则表达式过滤器可以是更高精度的过滤,例如,在设计过滤器时,考虑的数据的特性更多,或者更细的特征等。
可以理解的,正则表达式过滤器相比于特征过滤器而言,过滤的精度更高,但相应的过滤成本也更高,对于海量数据而言,过滤所耗时间较长。
在一些实施例中,过滤可以通过过滤器链进行。过滤器链是由多个过滤器组合形成。过滤器链中多个过滤器的类型可以相同,也可以不同。示例的,如图4中过滤器420所示,过滤器链包含过滤器1、2和3。
在一些实施例中,过滤器链中的多个过滤器可以按照顺序排列。
在一些实施例中,过滤器链中的多个过滤器的执行方式包括但不限于:顺序执行、并行执行、条件分支执行等。例如,第一源数据或中间源数据按照排列的顺序依次进入过滤器进行过滤。又例如,过滤器链中包含多个针对不同类型数据的过滤器,这些过滤器可以是并行执行的,第一源数据或中间源数据按照数据类型分配给与之匹配的过滤器进行处理。
在一些实施例中,可以基于第一源数据或中间源数据确定过滤器链中的多个过滤器和/或多个过滤器之间的顺序。
在一些实施例中,可以根据第一源数据或中间源数据的相关信息,例如,数据类型(关于类型见上文)、数据大小、数据包含的元素、不同类型的数据的过滤成本等因素,确定多个过滤器。其中,数据元素可以代表源数据中的最小单位,例如,源数据为个人信息,则数据元素可以是身份证、电话号码、驾驶证等。在一些实施例中,数据元素可以是数据类型下的子类型,例如,数据类型为个人数据,则子类型包括身份证、电话号码等。示例的,当过滤司机数据时,司机数据至少包含身份证、车牌号、电话号码等数据,从而设计对应的特征过滤器和正则表达式过滤器,过滤司机数据中非敏感数据,过滤器可以根据司机数据或者包含的数据元素(如身份证、车牌号等)设计得到。又一示例的,若第一源数据或中间源数据的大小较小(例如,小于某阈值,该阈值可以通过实验确定),可以直接使用过滤精度更高的正则表达式过滤器进行过滤,而不用特征过滤器,减少过滤工序。
在一些实施例中,过滤器链中的过滤器顺序也可以根据第一源数据或中间源数据的信息确定。示例的,当过滤司机数据时,则可以将基于车牌号的特点设计的特征过滤器和/或正则表达式过滤器放在基于电话号码的特点设计的特征过滤器和/或正则表达式过滤器之前,因为司机而言,车牌号属于他们特有的数据,可以先基于该特点进行过滤,减少后续过滤的计算量。
在一些实施例种,可以结合第一源数据或中间源数据,以及预设要求,确定过滤器链中多个过滤器及其之间的顺序。预设要求可以根据实际需求自定义。例如,可以以减少过滤成本(例如,计算量、时间等),或保证过滤效果等设定对应的规则。示例的,若预设要求为过滤成本较低,且第一源数据为司机信息数据时,则可以基于身份证号、车牌号和电话号码的特点设计对应的特征过滤器以及非精确复合正则表达式过滤器,且顺序为特征过滤器排在前面。又例如,预设要求为过滤成本较低且过滤精度高,且第一源数据为司机信息数据时,则可以基于身份证号、车牌号和电话号码的特点设计对应的特征过滤器、非精确复合正则表达式过滤器和严格正则表达式过滤器,且顺序为特征过滤器排在前面,其次是非精确复合正则表达式过滤器,最后为严格正则表达式过滤器。
在一些实施例中,过滤器链中过滤器的顺序可以提前预设,例如,先后顺序为特征过滤器、正则表达式过滤器,在此不做限定。
通过过滤器或过滤器链过滤掉大量非敏感数据,减小了后续处理的数据量级,使得极大地缩短了后续对敏感数据进行数据特征提取和管控信息确定所消耗的时间,减少对后续处理的干扰。
通过使用过滤器链对第一源数据或中间源数据进行过滤,可以使每个过滤器只专注于某个特定的过滤,减小了过滤器的设计复杂度,并且可以使得单个过滤器处理的效率很高。同时,过滤器链中的不同过滤器可以从不同维度进行过滤,提高了过滤的精准程度。以及,通过对过滤器链中的过滤器设计合理的顺序,可以保证过滤的成本较低。例如,先通过低成本的特征过滤器进行粗维度的过滤,减少后续过滤的数据量,再通过正则表达式进行细维度的过滤,保证过滤的精确度等。
确定过滤器链时考虑第一源数据,使得可以针对数据的具体情况选择相应的过滤器链,避免了过滤器的多余或无效操作,提高了数据的处理效率。
通过步骤310,基于一条或多条第一源数据,确定一条或多条第二源数据。对于确定的一条或多条第二源数据中的每一条,进行步骤320-350。
步骤320,基于第二源数据确定一个或多个数据标签。在一些实施例中,该步骤320可以由管控信息确定模块220执行。
数据标签是用来标识数据,表示数据的相关信息。例如,数据标签可以用来表示数据特征(关于数据特征见下文)等。
在一些实施例中,数据标签可以根据第二源数据的相关信息确定。示例的,第二源数据中包含身份证号码、驾驶证号码,则其数据标签包括:身份证和驾驶证。又例如,第二源数据中包含图片,数据标签可以确定为分辨率等。
在一些实施例中,可以对第二源数据进行检测,基于检测的结果确定数据标签,检测可以通过模型或者算法实现,可以是关键词检测、正则表达式检测等。在一些实施例中,可以预先设定检测参数,例如,检测时间或检测数据量等。对于第二源数据较大时,当到达检测时间或检测数据量量超过阀值则停止检测,使用已检测到的数据特征进行后续操作。
在一些实施例中,还可以使用其他方式确定数据标签。例如,第一源数据获取的同时可以获取其对应的数据标签,基于第一源数据确定第二源数据的同时可以获取第二源数据的数据标签。
步骤330,基于一个或多个数据标签确定一个或多个提取器。在一些实施例中,该步骤330可以由管控信息确定模块220执行。
提取器是从数据中提取数据特征的模块。数据特征是从数据中获取的,用于表示数据特点、性质或属性的信息。例如,数据的类型、长度、创建日期、访问权限、文本编码、数据的关键字、符合特定规则的数据等。提取器可以用于提取单个数据特征或多个数据特征。提取器可以单独或组合使用。
在一些实施例中,提取器可以分为多种。例如,数据指纹提取器、关键词提取器、正则表达式数据提取器、通用数据提取器以及复合数据提取器、语义(NLP)提取器等。提取器的类型还可以是其他,本实施例不做限制,例如,特定类型数据的提取器等。
数据指纹提取器用于提取数据的数据指纹特征,关于数据指纹特征参见图6及其相关描述。在一些实施例中,数据指纹提取器可以用于提取每条第二源数据,与数据的相关信息无关。关键词提取器用于提取数据的关键字。正则表达式数据提取器用于提取数据中与正则表达式匹配的数据。通用数据提取器用于提取固定格式或类型的数据,例如,日期、姓名、账号、银行卡号、身份证号等固定类型的数据。又例如,数字、字符、文字等固定格式的数据。复合数据提取器用于提取包含多种数据类型或格式的数据,例如,提取数据类型或格式复杂度大于预设条件的数据,在一些实施例中,复合数据提取器可以是其他多种提取器的组合。语义提取器用于提取数据的语义信息。
在一些实施例中,可以根据一个或多个数据标签,确定一个或多个提取器。多个提取器的类型可以相同可以不同。例如,数据标签包含驾驶证和身份证等,确定的提取器可以包括通用数据提取器,具体的,身份证号码提取器和驾驶证号码提取器,因为驾驶证号码排列存在规则,确定的提取器还可以包括正则表达式提取器。
示例的,如图4所示,多个提取器440包括关键词提取器、正则表达式数据提取器、复合数据提取器、通用数据提取器。
步骤340,基于第二源数据,通过一个或多个提取器获取一个或多个数据特征。在一些实施例中,该步骤340可以由管控信息确定模块220执行。
在一些实施例中,可以基于确定的一个或多个提取器提取第二源数据的一个或多个数据特征。
在一些实施例中,可以基于部分或全部确定的一个或多个提取器对第二源数据的部分数据进提取,确定第二源数据的一个或多个数据特征。具体参见图7及其相关描述,此处不再赘述。
在一些实施例中,确定的一个或多个提取器中包含数据指纹提取器,数据指纹提取器提取的数据特征为数据指纹特征。在一些实施例中,当对第二源数据进行数据特征提取时,首先经过数据指纹提取器,若提取的数据指纹特征与预设数据指纹特征相符,直接确定管控信息(即,步骤350),如否,则进入其他提取器进行提取。关于基于数据指纹特征提取器提取数据指纹特征的更多细节参见图6及其相关描述。
在一些实施例中,基于多个提取器对第二源数据进行数据特征提取过程中,该多个提取器的类型还可以根据第二源数据的当前数据情况进行动态调整。
在一些实施例中,基于多个提取器中任意一个对第二源数据进行数据特征提取之前,可以先对第二源数据进行验证,判断第二源数据中是否包含符合该提取器的提取类型的数据,若有,则将该提取器用于后续提取,若否,则将忽略该提取器。在一些实施例中,验证可以是多种方式,包括但不限于:局部/全局数据验证、正则表达式验证等。局部数据验证是抽取第二源数据中的部分数据判断是否有与提取器相符的数据,若有,则验证通过。全局数据验证是判断整个第二源数据是否有与提取器相符的数据,若有,则验证通过。正则表达式验证判断第二数据源中是否有与正则表达式匹配的数据,若有,则验证通过。通过该方式可以对该多个提取器的类型进行动态调整。在一些实施例中,可以结合多种验证方法进行验证,且多种验证方法之间存在顺序,例如,先通过全局数据验证再经过正则表达式验证等,以尽量减少验证的成本。
示例的,如图4所示,在基于通用数据提取器提取数据特征之前,先基于全局验证器和正则表达式验证器进行验证,验证之后再进入通用数据提取器。
在一些实施例中,还可以通过其他方式动态调整后续所用的提取器。例如,基于已经提取的数据特征占第二源数据中该数据特征的比例进行调整;示例的,若该比例大于0,则该数据特征对应的提取器会继续进行后续提取,或基于通过检测确定的当前剩余未提取的数据特征等。
在一些实施例中,基于确定的多个提取器提取数据特征时,多个提取器执行的方式可以包括但不限于顺序执行、并行执行、条件分支执行等一种或多种的组合。
数据特征提取过程中,不同的提取器提取对应的数据特征,并将提取之后的数据传递给其他提取器,直到任务完成。
在一些实施例中,多个提取器执行的顺序还可以根据检测得到的第二源数据的数据特征确定。例如,根据检测到数据特征占整个第二源数据的比例排列对应的提取器,对于占比较大(或大于一定值),可以将对应的提取器排在前面。又例如,根据检测到数据特征的重要程度排列对应的提取器,对于非常重要或敏感程度较高的数据特征,可以将对应的提取器排在前面。可以理解的,还可以根据数据特征的其他信息,例如提取的复杂程度、数据的内容大小等确定顺序。
在一些实施例中,还可以根据检测得到的第二源数据的数据特征确定提取器的资源分配。资源分配可以是提取器所占用的资源,包括但不限于处理器资源、处理时间、宽带资源等。与提取器执行的顺序类似,例如,占比越大或越敏感,则资源分配得越充足等。
在一些实施例中,可以基于预设的配置规则确定多个提取器的执行次序和/或资源分配。预设的配置规则可以根据实际需求设定,例如,基于提取所花时间、提取所耗资源等设定对应的配置规则。
在一些实施例中,还可以通过其他方式确定多个提取器的执行顺序或资源分配,本实施例不作限制,例如,可以任意设置等。又例如,根据历史提取记录,确定多个提取器的执行次序和/或资源分配。例如,第二源数据为个人信息数据,可以基于历史对个人信息数据的提取情况,确定多个提取器的执行次序和/或资源分配,因为同类型的数据具有相似性。
示例的,如图5所示,通过检测第二数据源中包含多种个人信息:身份证号、手机号、车辆编码、车牌号、信用卡号等,其中身份证号占比例最高且重要性或敏感性较高,因此将身份证号提取器放在提取器链的最前面。其次是手机号、车辆编码、车牌号、信用卡号等。
在一些实施例中,基于多个提取器对第二源数据进行数据特征提取过程中,该多个提取器执行的顺序或资源分配还可以根据第二源数据的当前数据情况进行动态调整。
在一些实施例中,可以基于第二源数据的一个或多个数据特征,确定一个或多个提取器的执行次序和/或资源分配。其中,该一个或多个数据特征是指已经被提取的数据特征。在一些实施例中,可以通过已经提取的数据特征,对未被提取的数据特征的重要性、占整个待提取数据的比例、提取难易程度等进行更新,从而进一步根据更新的结果动态调整执行次序和/或资源分配。例如,若已经被提取的数据特征为关键词,则可以根据关键词预判第二源数据中数据特征的占比,确定是否需要对之前的执行次序或资源分配进行调整。
在一些实施例中,可以对不同提取器提取的数据特征进行计数或者周期性计数,并基于计数的结果或者某周期内的计数结果,确定不同提取器在后续提取的顺序。例如,若将第二源数据同时或者按顺序输入身份证号提取器和电话号码提取器中,在10min的时间周期内,身份证号提取器的提取的数量大于电话号码提取器中,则在后续提取时,身份证号提取器的执行次序可以排在电话号码提取器的前面。同理的,可以对不同提取器提取的数据特征进行计数或者周期性计数,并基于计数的结果或者某周期内的计数结果,确定不同提取器的资源分配,即,计数越多,资源分配量越大。在一些实施例中,还可以建立计数数量与资源分配量之间的计算关系,以确定资源分配。在一些实施例中,可以对计数数量进行调整,以强化需要提取较多数据特征的提取器的优先级。例如,10min内,身份证提取器的计数数量为100,电话号码提取器的计数数量为70,可以将身份证提取器的计数数量增加或者将电话号码提取器的计数数量减少,以加大两者差距。
在一些实施例中,可以使用机器学习模型,确定多个提取器及其执行次序。机器学习模型的输入包括第二源数据,输出为对应的提取器及其顺序。机器学习模型可以是提前训练好的模型,类型包括但不限于:CNN(卷积神经网络)、DNN(全连接深度神经网络)、RNN(循环神经网络)、GNN(图神经网络)等。
在一些实施例中,若已经提取了部分数据特征,通过机器学习的方式确定后续的提取器及其顺序时,模型的输入还包括已经提取的数据特征和/或已经提取的数据特性的相关信息,已经提取的数据特性的相关信息包括但不限于:数据特征的类型(例如,身份证、手机号等)、数据特征的数量、数据特征占整个第二源数据比例等。可以理解的,通过输入已经提取的数据特性及其相关信息,机器学习模型不仅能够根据第二源数据本身确定提取器及其顺序,还能基于已经提取的内容对提取器及其顺序进行调整。
在一些实施例中,机器学习模型的输入还可以包括其他信息,包括预设要求、当前环境等。例如,预设要求可以包括提取成本预算、提取速度预算、提取精确度要求等;当前环境可以包括当前网路速度、当前处理设备计算速度、处理设备的配置信息等其他影响提取效果的因素。其通过该输入,可以使得机器学习模型根据预设要求或/和实时根据当前环境,对提取器及其顺序进行调整。
可以理解的,通过机器学习模型,可以对基于数据标签确定的提取器进行更新或调整,使得提取器对第二源数据进行数据特征提取前,无需对第二源数据进行验证(即,无需判断第二源数据中是否包含符合该提取器的提取类型的数据),在保证提取准确性的同时保证了提取效率。
在一些实施例中,基于任意一个提取器,对第二源数据提取了数据特征之后,可以对提取的数据特征进行验证,保证提取的准确性,即提取的数据特征与该提取器相符。在一些实施例中,数据特征验证的方法包括但不限于:范围关键词验证、非正常词验证等。范围关键词验证可以是验证数据特征的数据长度范围、数值(例如,数字或字母等)范围、特定位置的数值范围等是否符合预设标准。非正常词验证可以是验证数据特征中是否出现了非正常词等。
示例的,如图4所示,在基于同样数据提取器提取完数据特征之后,分别基于范围关键词验证器、非常正常词验证器、前缀验证器和脚本验证器进行准确性验证。
在一些实施例中,提取器提取数据特征之前的验证和之后的验证可以通过多种算法实现,例如,bloom filter等。
步骤350,基于一个或多个数据特征的部分或全部,确定第二源数据的管控信息。在一些实施例中,该步骤350可以由管控信息确定模块220执行。
管控信息是对数据的重要性进行量化,用于访问控制或管理控制等的信息。例如,管控信息可以包括数据的安全等级、数据的类别、数据的拥有者等。基于目标数据(如第二源数据)的管控信息,管理者可以对目标数据进行有效的管控,提高数据的安全性和/或使用效率。
管控信息可以由多种方式确定。在一些实施例中,可以根据数据特征,基于预设规则,确定数据的管控信息。例如,预设规则中包含多个预设特征对应的管控信息,从而将与数据特征的匹配度满足要求(大于阈值)的预设特征对应的管控信息,作为数据特征的管控信息等。
在一些实施例中,可以根据数据特征进行评分从而决定数据安全等级。例如,安全运营分析数据,明确数据分类分级标准,明确数据的类型和安全等级的划分原则,再基于数据分类分级标准通过人工和机器学习等方式对内部数据进行调研,提取数据特征,建立特征集合,该特征集合中包含了数据特征及与该特征对应的积分。当第二源数据存在符合特征集合中的数据特征,则对于该数据,会记录相关特征对应的积分,得到第二源数据积分和,并基于该积分和获取对应的安全等级。
在一些实施例中,可以基于数据的分类信息,进一步确定数据的安全等级。数据的分类信息可以是根据规则确定的数据的类别,例如,根据共享汽车运营涉及对象确定的乘客信息类、司机类、公司财务类、公司业务类等。
在一些实施例中,还可以基于其他方式确定管控信息,例如,通过算法或者模型对数据特征进行处理得到对应的安全等级,在此不作限制。
在一些实施例中,管控信息可以用于对数据访问和/或使用进行控制。例如,可以预先设置多个安全等级及对应的访问规则,从而可以基于管控信息中的安全等级,确定对应的访问规则,使用访问规则控制对数据的访问。其中,安全等级可以是不同的审核或访问等级。
在一些实施例中,可以根据管控信息确定第二源数据的数据访问策略、数据处理策略。数据访问策略可以包括:数据访问者、数据访问权限、数据访问方式等。数据处理策略可以包括:是否可以修改、修改的内容等。
在一些实施例中,可以根据管控信息,确定第二源数据的数据访问者。例如,对第二源数据中的数据进行分组,将一类或几类数据分为一组,每一组可以对应不同的数据访问者,根据数据访问者确定数据访问权限,根据数据访问权限确定具体的数据访问方式。
在一些实施例中,可以基于管控信息,确定第二源数据的访问权限。例如,根据数据安全等级,给每一个安全等级的数据分配不同的访问权限。根据实际情况,不同的安全等级可以合并,以减少管理开销;安全等级也可以进一步细化,以适应数据或访问者的变化,例如,第二源数据中增加了一个新的数据元素类型或数据字段,根据原有的安全等级确定的数据访问权限需要进一步细化,则可以将原有安全等级进一步细分,以对应不同的访问权限。
在一些实施例中,可以基于管控信息确定不同的数据访问方式,例如,根据数据类别将数据分为只读、可读写、可添加/删除等,根据数据安全等级确定具体的访问步骤、访问路径等。在一些实施例中,对于某个具体的数据安全等级,可以确定访问数据需要经过几个步骤的审核,每个审核步骤的具体内容,经过哪些步骤的审核后可以赋予哪些访问权限等。
如前所述,数据管控信息可以包括安全等级。在一些实施例中,可以根据安全等级确定数据的管控力度,安全等级越高,管控力度越大。例如,安全等级包含3个等级:c1、c2和c3,对于c1而言,所有成员均可访问,对于c2而言,需要经过简单审批(例如,1-2个步骤的审批)即可访问,对于c3而言,需要经过较为复杂审批(例如,3-5个步骤的审批)。可以理解的,安全等级、对应的管控力度及审批方式等均可以根据实际的应用场景设置,在此不作限制。
在一些实施例中,可以根据安全等级确定对应的访问级别,并根据访问级别确定相应级别的访问者。在一些实施例中,数据的安全等级可以用数值来表示,可以是整数或小数,访问级别可以是整数数值,一个或多个安全等级可以对应一个访问级别,一个安全等级可以对应一个或多个访问级别,一个访问级别可以对应一个或多个访问者。在一些实施例中,若数据的安全等级是小数,表示对应访问级别的只有部分访问者可以访问,可以基于小数部分的数值,确定多个不同的访问级别,例如,数据安全等级为3.3,访问级别为3的访问者不可以访问该数据,而访问级别为4的访问者中有30%的可以访问;或者,访问级别为4的访问者中30%的可以读写数据,而另外的70%只可以读取数据。
图6是根据本说明书一些实施例所示的基于指纹提取器和数据指纹特征确定第二源数据的管控信息的示例性流程图。在一些实施例中,流程600可以由处理设备(例如,处理设备112)执行。如图6所示,该流程600可以包括以下步骤:
步骤610,基于数据指纹特征与一个或多个预设数据指纹特征的相似度,确定目标预设数据指纹特征。在一些实施例中,该步骤610可以由管控信息确定模块220执行。
数据指纹特征是基于数据,使用预设算法计算得出的数据特征,可以用长度符合一定条件的数字或者字符串表示。例如,使用哈希算法(例如,SimHash算法等)得出的哈希值等。在一些实施例中,第二源数据的数据指纹特征可以通过SimHash算法对第二源数据处理得到。
预设数据指纹特征可以是提前基于预设算法对基于不同类型或内容的数据处理得到。在一些实施例中,预设数据指纹特征存在对应的管控信息。
在一些实施例中,可以将与数据指纹特征的相似度大于阈值的预设指纹特征作为目标预设指纹特征。例如,可以对基于哈希算法(例如SimHash算法)得到的数据指纹特征,与基于哈希算法得到的预设数据指纹特征的每一位进行异同比较,确定相异位和相同位,从而确定两者的相似度,当相同位的数目高于阈值,将该预设数据指纹特征确定为目标预设数据指纹特征。通过使用SimHash算法,可以将数据进行降维处理,将不同的数据降维成64位固定长度的二进制码,使得相似度的确定通过比较二进制码来进行,提高了比较的效率。
在一些实施例中,可以将数据指纹特征和预设数据指纹特征分别进行分段,基于分段后得到的子数据指纹特征和预设子数据指纹特征之间的相似度确定目标预设指纹特征。
在一些实施例中,可以将数据指纹特征分为多段,得到多段子数据指纹特征;将一个或多个预设指纹特征中的每一个分为多段,得到多段子预设指纹特征;从多段子预设指纹特征中,获取与多段子数据指纹特征中任意一段相同的至少一个候选子预设指纹特征;从至少一个候选子预设指纹特征所在的预设指纹特征中,确定与数据指纹相异位个数小于阈值的预设指纹特征为目标预设指纹特征。在一些实施例中,可以基于索引等方式确定与子数据指纹特征相同的候选子预设指纹特征。
例如,可以将从第二源数据中获取的64位的文本SimHash值(基于Simhash算法得到的数据指纹特征)分为长度相等的4段,得到每段16位的SimHash值,将预先储存的文本SimHash值也分为长度相等的4段,得到每段为16位的SimHash值。将第二源数据中获得的16位的SimHash值与预先存储的16位SimHash值比较,若相等,则基于该预先存储的16位SimHash值,确定其所在的64位预先存储的SimHash值。计算从第二源数据中获取的64位SimHash值与该预先存储的SimHash值的相异位个数。若相异位个数小于阈值3,则将该预先存储的SimHash值确定为目标SimHash值。
可以理解的,通过将数据指纹特征分段处理的方式,可以大大降低数据处理的量级,减少对资源的占用,加快了处理速度,提高了处理效率。具体的,若两个数据指纹中无相同子分段,则这两个数据指纹必不相似;若存在相同子分段,才会进一步确定是否相似。
在一些实施例中,数据指纹特征和预设数据指纹特征的相似度可以通过相似度算法或距离算法得到,包括但不限于:欧氏距离、海明距离等。
步骤620,基于目标预设数据指纹特征,确定第二源数据的管控信息。在一些实施例中,该步骤620可以由管控信息确定模块220执行。
如前所述,预设指纹数据特征存在对应的管控信息。在一些实施例中,可以将目标预设指纹特征对应的管控信息确定为第二源数据的管控信息。
图7是根据本说明书一些实施例所示的获取一个或多个数据特征的示例性流程图。在一些实施例中,流程700可以由处理设备(例如,处理设备112)执行。如图7所示,该流程700可以包括以下步骤:
步骤710,使用一个或多个提取器的部分或全部对第二源数据的部分数据进行提取。在一些实施例中,该步骤710可以由管控信息确定模块220执行。
在一些实施例中,可以随机确定第二源数据的部分数据,并基于提取器进行数据特征提取,也可以基于第二源数据的相关信息(如,数据类型、数据生成或更新时间等)确定第二源数据的部分数据并进行数据特征提取。其中,提取用的提取器的确定方式参见步骤320和步骤330,此处不再赘述。
在一些实施例中,可以先判断第二源数据是否满足预设要求,若满足,则提取第二源数据的部分数据进行提取。预设要求可以是数据量大于阈值等。
在一些实施例中,可以多次进行部分数据的提取,每次提取的数据的大小可以预设。
步骤720,当提取程度满足预设条件时,基于已提取数据确定第二源数据的一个或多个数据特征。在一些实施例中,该步骤720可以由管控信息确定模块220执行。
预设条件可以自定义,包括但不限于提取时间或已提取的数据量大于阈值、提取到某个特定的数据等。
在一些实施例中,当提取程度满足预设条件,即可停止提取,将当前已经提取的数据特征作为第二源数据的数据特征,并基于这些已经提取的数据特征确定后续的管控信息。
在一些实施例中,预设条件还可以是扫描时间、扫描量等。在一些实施例中,还可以先对第二源数据进行扫描,基于扫描情况确定预设条件是否被满足,若满足则将已扫描的数据进行数据特征提取。
可以理解的,通过对数据量较大或文件较大的数据管控而言,通过提取部分数据来实现管控,可以提高管控的效率。
本说明书实施例可能带来的有益效果包括但不限于:(1)本说明书实施例提供的数据管控方法适用于不同大小规模、不同数据类型、同构或异构的数据,对大数据等各种场景下的数据处理有着很好的适应性;(2)该数据管控方法可以对数据分类分级,能够保证在复杂场景下的性能稳定,以及定级的准确性;(3)该数据管控数据方法在对数据分类分级时,可以根据实际情况动态调整处理策略,实现了数据处理过程的最优化。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
- 一种数据管控系统及数据管控方法
- 一种用于电力交易数据仓库的质量管控方法及其管控系统