数据集成背景中的标准化的制作方法-j9九游会真人

文档序号:35756900发布日期:2023-10-16 22:43阅读:10来源:国知局

数据集成背景中的标准化


背景技术:

1.本文所描述的各个实施例一般涉及数据集成(data integration)背景中的标准化。更具体地,各个实施例描述了创建一组数据标准化规则以促进云计算环境的管理服务域(managed services domain)中的数据集成的技术。


技术实现要素:

2.本文所描述的各个实施例提供了数据集成背景中的自动数据标准化的技术。一种相关联的计算机实现的方法,包括在数据载入(data onboarding)过程期间接收数据集。该方法还包括对数据集内的数据点进行分类。该方法还包括将机器学习数据标准化模型应用于数据集内的每个分类的数据点。该方法还包括基于随着机器学习数据标准化模型的应用而确定的任何标准化修改来得到针对数据集的所提出的数据标准化规则集。在一实施例中,可任选地,该方法包括呈现所提出的数据标准化规则集以供客户端审阅,以及响应于接受所提出的数据标准化规则集,将所提出的数据标准化规则集应用于数据集。在进一步的实施例中,该方法包括:响应于接受所提出的数据标准化规则集合,基于所提出的数据标准化规则集合来更新机器学习数据标准化模型。
3.一个或多个另外的实施例涉及一种计算机程序产品,该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质具有程序指令。根据这样的实施例,程序指令可由计算设备执行以使计算设备执行与上述计算机实现的方法相关联的一个或多个步骤和/或实现与上述计算机实现的方法相关联的一个或多个实施例。一个或多个进一步的实施例涉及一种系统,该系统具有至少一个处理器和存储应用程序的存储器,当在至少一个处理器上执行应用程序时,该应用程序执行与上述计算机实现的方法相关联的一个或多个步骤和/或实现与上述计算机实现的方法相关联的一个或多个实施例。
附图说明
4.为了获得并且可以详细地理解上述方面的方式,可以参考附图对以上简要概述的实施例的更具体描述。
5.然而,要注意的是,附图仅仅示出了本发明的典型实施例,因此,不应被视为限制本发明的范围,因为本发明可以允许其他同样有效的实施例。
6.图1示出了根据一个或多个实施例的云计算环境。
7.图2示出了根据一个或多个实施例的由云计算环境提供的抽象模型层。
8.图3示出了根据一个或多个实施例的云计算环境中的管理服务域。
9.图4示出了根据一个或多个实施例的创建数据标准化规则以促进管理服务域中的数据集成的方法。
10.图5示出了根据一个或多个实施例的配置机器学习数据标准化模型的方法。
11.图6示出了根据一个或多个实施例的将机器学习数据标准化模型应用于数据集中的每个数据点的方法。
12.图7示出了根据一个或多个实施例的确定至少一个标准化修改以处理(address)数据集内的数据点的方法。
13.图8示出根据一个或多个实施例的应用数据抓取算法以评估数据集内的不频繁异常字符串值的方法。
14.图9示出了根据一个或多个实施例的确定针对数据集内的异常非字符串值的纠正(remediation)的方法。
15.图10示出了根据一个或多个另外的实施例的确定针对数据集内的异常非字符串值的纠正的方法。
16.图11示出根据一个或多个另外的实施例的确定用于数据集内的异常非字符串值的纠正的方法。
具体实施方式
17.本文所描述的不同实施例针对用于云计算环境的管理服务域中的数据集成的目的的自动数据标准化的技术。在不同实施例的上下文中,数据集成涵盖数据治理,并且进一步涵盖数据治理和集成。示例数据集成j9九游会真人的解决方案是统一治理与集成平台。云计算环境是其中一个或多个计算能力可用作服务的虚拟化环境。被配置成实现与本文描述的各实施例相关联的自动数据标准化技术的云服务器系统可利用机器学习知识模型(具体地,机器学习数据标准化模型)的人工智能能力,以及与这样的模型相关联的知识库的信息。
18.各个实施例可具有优于常规技术的优点。传统的数据集成需要数据载入,该数据载入需要人工标准化,例如,由主题专家或数据管理员人工纠正数据集内的异常或不一致的数据点。人工纠正虽然在提高数据质量方面是有用的,但是在时间和劳动力方面可能消耗大量资源。此处描述的各个实施例集中于数据集成背景中提供自动标准化,由此减少人工纠正的必要性。具体地,不同实施例通过减少对主题专家和/或数据管理员的人工数据标准化的需要来促进数据集的自动数据标准化,同时仍然允许需要时的审阅和批准。此外,各个实施例通过促进基于数据标准化模型的连续应用而不断改进数据集成的机器学习来改进计算机技术。此外,不同实施例通过应用数据抓取和/或众包(crowdsourcing)技术来处理和/或调查数据集的异常值来改进计算机技术。不同实施例中的一些可能不包括所有此类优点,并且此类优点不一定是所有实施例所需要的。
19.在下文中,参考本发明的各种实施方式。然而,应当理解,本发明不限于具体描述的实施例。相反,以下特征和元件的任何组合(无论是否涉及不同实施例)被考虑来实现和实践本发明。此外,尽管实施例可以实现优于其他可能的j9九游会真人的解决方案和/或优于现有技术的优点,但是无论给定实施例是否实现特定优点都不是限制性的。因此,除非在权利要求中明确陈述,以下方面、特征、实施例和优点仅仅是说明性的,并且不被认为是所附权利要求的元素或限制。同样,除非在一个或多个权利要求中明确陈述,对“本发明”的引用不应被解释为在此所披露的任何发明主题的概括,并且不应被认为是所附权利要求的元素或限制。
20.本发明可以是任何可能的技术细节集成度的系统、方法和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质。
21.计算机可读存储介质可为可保留和存储供指令执行装置使用的指令的有形装置。
计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式紧凑盘只读存储器(cd-rom)、数字通用盘(dvd)、记忆棒、软盘、诸如具有记录在其上的指令的穿孔卡或槽中的凸出结构之类的机械编码设备、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。
22.本文描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
23.用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(诸如smalltalk、c 等)、以及常规的过程式程序设计语言(诸如“c”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(lan)或广域网(wan))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
24.下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
25.这些计算机可读程序指令可被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。
26.计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置、或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现在流程图和/
或框图的或多个框中指定的功能/动作。
27.附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,连续示出的两个方框实际上可以作为一个步骤完成,同时、基本上同时、以部分或完全时间上重叠的方式执行,或者方框有时可以以相反的顺序执行,这取决于所涉及的功能。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
28.具体实施例描述了涉及在管理服务域中出于数据集成的目的的自动数据标准化的技术。然而,应当理解的是,除了本文中具体描述的那些之外,本文中描述的技术还可以适用于各种目的。因此,对特定实施例的引用被包括在内以是说明性的而非限制性的。
29.本文所述的不同实施例可通过云计算基础设施被提供给终端用户。应当理解,虽然本公开包括关于云计算的详细描述,但是本文所引用的教导的实现不限于云计算环境。相反,本文所述的不同实施例能够结合现在已知或以后开发的任何其他类型的计算环境来实现。
30.云计算是服务交付的模型,用于使得能够方便地、按需地网络访问可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池,可配置计算资源可以以最小的管理努力或与所述服务的提供者的交互来快速供应和释放。因此,云计算允许用户访问云中的虚拟计算资源(例如,存储、数据、应用和甚至完整的虚拟化计算系统),而不考虑用于提供计算资源的底层物理系统(或那些系统的位置)。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
31.特性如下:
32.按需自助服务:云消费者可单方面根据需要自动提供计算能力,诸如服务器时间和网络存储,而不需要与服务提供商的人交互。
33.广泛的网络访问:能力可通过网络获得并且通过标准机制访问,该标准机制促进异构瘦客户机平台或厚客户机平台(例如,移动电话、膝上型计算机和个人数字助理(pda))的使用。
34.资源池:提供者的计算资源被池化以使用多租户模型来服务于多个消费者,其中不同的物理和虚拟资源根据需要动态地指派和重新指派。存在位置独立性的感觉,因为消费者通常不具有对所提供的资源的确切位置的控制或了解,但可能能够以较高抽象级别(例如,国家、州或数据中心)指定位置。
35.快速弹性:能够快速和弹性地提供能力,在一些情况下自动地快速缩小和快速释放以快速放大。对于消费者而言,可用于供应的能力通常显得不受限制并且可以在任何时间以任何数量购买。
36.测量的服务:云系统通过在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某个抽象级别处利用计量能力来自动控制和优化资源使用。可以监测、控制和报告资源使用,为所利用的服务的提供者和消费者提供透明度。
37.服务模型如下:
38.软件即服务(saas)::提供给消费者的能力是使用在云基础设施上运行的提供者的应用。可通过诸如网络浏览器(例如,基于网络的电子邮件)之类的瘦客户端接口从不同客户端设备访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储或甚至单独的应用能力的底层云基础设施,可能的例外是有限的用户特定应用配置设置。
39.平台即服务(paas)::提供给消费者的能力是将消费者创建的或获取的使用由提供商支持的编程语言和工具创建的应用程序部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但是对所部署的应用和可能的应用托管环境配置具有控制。
40.基础设施即服务(iaas):“提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其他基本计算资源,所述软件可以包括操作系统和应用程序。消费者不管理或控制底层云基础设施,而是具有对操作系统、存储、所部署的应用的控制以及对所选联网组件(例如,主机防火墙)的可能受限的控制。
41.部署模型如下:
42.私有云:云基础架构只为组织运作。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
43.共同体云:云基础架构由若干组织共享并且支持具有共享关注(例如,任务、安全要求、策略、以及合规性考虑)的特定共同体。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
44.公共云:云基础架构可用于大众或大型行业团体并且由出售云服务的组织拥有。
45.混合云:云基础设施是两个或更多个云(私有、共同体或公共)的组合,这些云保持唯一实体但通过使数据和应用能够移植的标准化或专有技术(例如,云突发以用于云之间的负载平衡)绑定在一起。
46.云计算环境是面向服务的,集中于无状态、低耦合、模块化和语义互操作性。云计算的核心是包括互连节点网络的基础设施。
47.图1示出了根据一个或多个实施方式的云计算环境50。如图所示,云计算环境50可包括一个或多个云计算节点10,云消费者使用的本地计算设备(例如,个人数字助理或蜂窝电话54a、台式计算机54b、膝上型计算机54c和/或汽车计算机系统54n)可与云计算节点10通信。节点10可彼此通信。它们可以物理地或虚拟地分组(未示出)在一个或多个网络中,诸如如上所述的私有云、社区云、公共云或混合云、或其组合。因此,云计算环境50可以提供基础设施、平台和/或软件作为云消费者不需要在本地计算设备上维护资源的服务。应当理解,图1中所示的计算装置54a-n的类型仅旨在是说明性的,并且计算节点10和云计算环境50可通过任何类型的网络和/或网络可寻址连接(例如,使用网络浏览器)与任何类型的计算机化装置通信。
48.图2示出了根据一个或多个实施方式的由云计算环境50提供的一组功能抽象层。应提前理解,图2中所示的组件、层和功能仅旨在是说明性的;在此描述的不同实施例不限于此。如所描述,提供了不同层和对应功能。具体地,硬件和软件层60包括硬件和软件组件。硬件组件的示例可以包括主机61、基于risc(精简指令集计算机)架构的服务器62、服务器63、刀片服务器64、存储设备65、以及网络和网络组件66。在一些实施例中,软件组件可以包括网络应用服务器软件67和数据库软件68。虚拟化层70提供抽象层,从该抽象层可以提供
虚拟实体的以下示例:虚拟服务器71;虚拟存储器72;虚拟网络73,包括虚拟专用网络;虚拟应用和操作系统74;以及虚拟客户端75。
49.在一个示例中,管理层80可以提供以下描述的功能。资源供应81可提供计算资源和用于在云计算环境50内执行任务的其他资源的动态采购。计量和定价82可在云计算环境50内利用资源时提供成本跟踪,并为这些资源的消费开账单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户83可以为消费者和系统管理员提供对云计算环境的访问。服务水平管理84可以提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(sla)规划和履行85可提供云计算资源的预安排和采购,根据该sla预期该云计算资源的未来要求。
50.工作负载层90提供可以利用云计算环境50的功能的示例。可以从该层提供的工作负荷和功能的示例包括:地图和导航91;软件开发和生命周期管理92;虚拟课堂教育提供93;数据分析处理94;交易处理95;以及数据标准化96。数据标准化96可实现自动数据标准化,以用于根据本文描述的不同实施例的经由机器学习知识模型的数据集成的目的。
51.图3示出了云计算环境50内的管理服务域300。可以在管理服务域300中执行与数据标准化96相关的功能和其他工作负荷/功能。管理服务域300包括云服务器系统310。在实施例中,云服务器系统310包括载入数据存储库320、数据库管理系统(database management system,dbms)330、以及包括机器学习知识模型350的云服务器应用340,机器学习知识模型350合并了至少机器学习数据标准化模型的能力。云服务器应用340代表单个应用或多个应用。机器学习知识模型350被配置成根据本文描述的不同实施例实现和/或促进自动数据标准化。此外,管理服务域300包括数据载入接口360、一个或多个外部数据库系统370以及多个应用服务器集群3801至380n。数据载入接口360实现云服务器系统310与数据客户端/系统之间的通信,数据客户端/系统与管理服务域300交互以在数据集成背景中促进数据载入。在一实施例中,云服务器系统310被配置成与一个或多个外部数据库系统370和多个应用服务器群集3801至380n通信。另外,应用服务器集群3801至380n内的相应服务器可被配置成彼此通信和/或与其他域中的服务器集群通信。
52.在一实施例中,代表单个数据存储库或数据存储库集合的载入数据存储库320包括在数据载入过程期间从数据载入接口360接收的未标准化和/或预先标准化的数据集以及根据本文描述的各实施例处理的分类和标准化的数据集。可替代地,一个或多个数据储存库包括在数据载入过程期间接收的预先标准化的和/或未标准化的数据集,而一个或多个附加数据存储库包括分类和标准化的数据集。根据另一替换实施例,一个或多个数据储存库包括在数据载入过程期间接收到的预先标准化的和/或未标准化的数据集,一个或多个附加数据存储库包括分类的数据集,并且一个或多个其他附加数据存储库包括标准化的数据集。在实施例中,dbms 330协调并管理机器学习知识模型350的知识库。dbms 330可包括一个或多个数据库服务器,其可协调和/或管理知识库的各个方面。在另外的实施例中,dbms 330管理或以其他方式与一个或多个外部数据库系统370交互。一个或多个外部数据库系统370包括被配置成与dbms 330接口的一个或多个关系数据库和/或一个或多个数据库管理系统。在进一步的实施例中,dbms 330存储多个应用服务器集群3801至380n与知识库之间的关系。在进一步的实施例中,dbms 330包括或可操作地耦合到一个或多个数据库,这
些数据库中的一些或全部可以是关系数据库。在进一步的实施例中,dbms 330包括一个或多个本体树或其他本体结构。应用服务器集群3801至380n托管和/或存储不同应用的各方面,并且还向一个或多个客户端系统和/或数据系统提供管理服务器服务。
53.图4示出了创建数据标准化规则以促进数据集成的方法400。根据方法400的数据标准化规则的创建促进在此所描述的不同实施例的背景下的自动数据标准化。在一个实施例中,在其中计算能力被提供为服务的环境(例如,云计算环境50)中执行与方法400相关联的一个或多个步骤。根据这样的实施例,与该方法400相关联的一个或多个步骤在该环境内的管理服务域(例如,管理服务域300)中执行。该环境可以是混合云环境。在另一实施例中,在一个或多个其他环境(诸如客户端-服务器网络环境或对等网络环境)中执行与方法400相关联的一个或多个步骤。管理服务域中的集中式云服务器系统(例如,管理服务域300中的云服务器系统310)可促进根据方法400和本文中进一步描述的其他方法的处理。更具体地,云服务器系统中的云服务器应用(例如,云服务器应用340)可执行或以其他方式促进方法400和本文描述的其他方法的一个或多个步骤。经由管理服务域中的云服务器系统促进或以其他方式执行的自动数据标准化技术可与由环境提供的功能抽象层中的工作负荷层内的数据标准化(例如,云计算基础设施50的工作负荷层90内的数据标准化96)相关联。
54.方法400在步骤405开始,其中云服务器应用在数据载入过程期间接收数据集。云服务器应用经由管理服务域中的数据载入接口(例如,经由数据载入接口360)来接收数据集(根据步骤405)。载入数据被完全地或部分地存储在至少一个载入数据存储库(例如,载入数据存储库320)中,该至少一个载入数据存储库可以是或以其他方式与数据湖相关联。在本文描述的不同实施例的上下文中,数据湖是保存来自许多源的天然或原始格式的数据的存储储存库。数据湖中的数据可以是结构化的、半结构化的或非结构化的。在实施例中,数据载入过程包括将数据集载入到数据湖中。根据这样的实施例,可选地以hadoop分布式文件系统(hdfs)格式载入数据集。可替代地,根据这样的实施例,数据集被绑定为归一化数据,例如经由手动或自动消除数据冗余。在进一步的实施例中,在数据载入过程期间,仅载入与位于数据湖中的数据相关联的元数据而不是数据本身。根据此进一步的实施例,基于对方法400的步骤的执行,云服务器应用可选地基于载入元数据来创建位于数据湖中的数据的标准化版本。可替代地,根据此进一步的实施例,基于方法400的步骤的执行,云服务器应用基于载入元数据将数据标准化直接应用于位于数据湖中的数据。总之,在方法400的上下文中,云服务器应用可选地在将数据集载入数据湖,或替换地载入与已经在数据湖中的数据集相关联的元数据。在进一步的实施例中,数据载入过程包括将数据集从在线交易处理(online transaction processing,oltp)系统上线到在线分析处理(online analytical processing,olap)系统。
55.在步骤410,云服务器应用对在步骤405接收的数据集内的数据点进行分类。在一个实施例中,云服务器应用通过基于至少一个数据分类器算法的应用来检测数据类别,并且响应于检测数据类别,用词语或分类(例如,业务相关词语或分类)标记(例如,加标签)相关联的数据字段来对数据点进行分类。相应数据类的示例包括市政和邮政编码。根据这样的实施例,至少一个数据分类器算法合并正则表达式(regular expression)以标识数据字段内的或基于数据字段名称的数据。附加地或可替代地,至少一个数据分类器算法包括(一个或多个)查找操作以引用包含组成数据类值的(一个或多个)表。附加地或可替代地,至少
一个数据分类器算法包括以编程语言(例如,java)编写的自定义逻辑。在进一步的实施例中,云服务器应用基于对各个单独值的评估对数据点进行分类。附加地或可替代地,云服务器应用基于(例如在结构化或半结构化数据的上下文中)对数据列内的多个值的评估来对数据点进行分类。附加地或可替代地,云服务器应用基于对多个相关数据列内的多个值的评估来对数据点进行分类。在另一实施例中,云服务器应用将置信度水平值与经由至少一个数据分类器算法作出的数据点分类相关联。根据这样的进一步的实施例,云服务器应用基于经由至少一个数据分类器作出的置信度水平数据点分类来排序优先级和/或标签。可选地,诸如主题专家或数据管理者(即,数据编辑器或数据工程师)的客户端覆盖经由至少一个数据分类器算法作出的一个或多个数据点分类并手动地分配一个或多个数据点分类。
56.在实施例中,在步骤410的上下文中,云服务器应用对数据集内的分类数据点的子集进行随机采样。根据这样的实施例,云服务器应用确定随机采样的数据点的值,然后确定与随机采样的数据点相关联的特定数据类和/或数据列。根据这样的实施例,云服务器应用基于与随机采样的数据点的关联确定与子集内的其他数据点相关联的数据类和/或数据列。由此,根据这样的实施例的随机采样可以使得云服务器应用能够避免迭代整个数据集,以对数据点进行分类。附加地或可替代地,云服务器应用通过指派数据类别来直接对数据集的一个或多个数据点进行分类。因此,云服务器应用可基于随机采样和/或基于直接人工分类来对数据集内的每个数据点进行分类。
57.在步骤415,云服务器应用将机器学习数据标准化模型(例如,机器学习知识模型350)应用于数据集内的每个分类的数据点。在实施例中,云服务器应用基于数据类别应用数据标准化模型。根据此类实施例,至少部分地基于数据类别类型来确定所检测到的异常的类型以及相对于此类异常类型的对应标准化。例如,具有电话号码数据类的数据点仅需要关于格式的验证(即,仅格式异常是相关的),而具有城市数据类的数据点需要关于至少拼写和可能的语法的验证(即,拼写和语法异常是潜在相关的)。如本文进一步描述的,数据类别也相对于在数据集中的字符串(string)值和非字符串(non-string)值之间的区分是相关的。
58.在实施例中,云服务器应用在数据标准化模型的上下文中应用多个数据质量规则,以便确定数据集内的数据点是有效值还是异常值,并且进一步确定如何处理被确定为异常值的任何值。多个数据质量规则包括多个基线数据集成规则,这些基线数据集成规则是用于确定数据点是有效值还是异常值的标准化基线。在本文所述的各个实施例的上下文中,多个基线数据集成规则是可应用于数据类别或数据类别组的硬编码或固定规则,并且在模型初始化时被集成到数据标准化模型中。可选地,多个基线数据集成规则是基于数据集大小和/或数据集源而定制的。多个基线数据集成规则包括用于识别与数据集内的数据点相关联的异常的预先建立的规则。在进一步的实施例中,多个基线数据集成规则特定于特定数据类或特定数据类组。根据这样的进一步的实施例,云服务器应用基于数据类别来应用多个基线数据集成规则。例如,根据关于生日数据类别值的基线集成规则,这样的值不能是未来的日期。根据这样的进一步的实施例,云服务器应用可选地基于与这样的空值或重复值相关联的数据类别来分析空值或重复值。在各个实施例中,有效值是符合多个基线数据集成规则的值,而异常值是不符合多个基线数据集成规则的值。云服务器应用可选地确定值不符合多个基线数据集成规则,并且因此如果该值不满足针对相关联的数据类别
和/或针对相关联的数据列建立的一个或多个条件(即,如果该值包括至少一个异常),则该值是异常值。附加地或可替代地,云服务器应用确定值不符合多个基线数据集成规则并且因此是异常值,如果该值与数据集内的定义的组(例如,数据列或相关联的数据列的组)中的其他值不一致的话。在某些实例中,在其中第一数据列与另一数据列或其他数据列相关,这样第一数据列内的异常值和与第一数据列相关的另一数据列或其他数据列中的对应值不一致的场景中,这样的不一致是明显的。在不同实施例的上下文中,如果一个列内的值是基于其他列中的值可预测的,则相应的列是相关的。在其他实例中,在数据列内的数据值基于数据列位置而相关联以使得数据列内的异常值与其数据列位置不一致的场景中,这样的不一致是明显的。在其他实例中,通过异常值,这样的不一致是明显的,该异常值相对于相关数据列中的对应值以及相对于其数据列位置两者具有不一致性。
59.除了多个基线数据集成规则之外,多个数据质量规则包括先前得到的并被接受的数据标准化规则的任何集合,以用于处理由于应用多个基线数据集成规则而被确定为异常值的值。多个数据质量规则被完全绑定,以便不具有任何不确定的范围。此外,多个数据质量规则包括被绑定到数据集中的数据列的变量。在实施例中,云服务器应用计算随着数据标准化模型的应用而在数据集内标识的异常值的数量。根据这样的实施例,云服务器应用基于与多个基线数据集成规则的符合性计算数据集的定量的数据质量分数。云服务器应用可选地基于数据集内的所有分类的数据点中的不合格/异常值的百分比来计算数据质量分数。通过根据步骤415应用数据标准化模型,云服务器应用可应用先前得到和接受的标准化规则以处理异常值,并且此外,如下所述,云服务器应用可确定附加的标准化修改,基于附加的标准化修改可得到一组新的提出的标准化规则。参照图6描述了关于根据步骤415将数据标准化模型应用于数据集内的每个数据点的方法。
60.在步骤420,云服务器应用基于随着机器学习数据标准化模型的应用而确定的任何标准化修改来得到用于数据集的提出的数据标准化规则集合。所提出的数据标准化规则集合包括用于在后续模型应用时自动促进动态数据集标准化的一个或多个规则。在实施例中,所提出的数据标准化规则的集合包括多个映射,这些映射可选地存储在标准化查找表中。根据这样的实施例,多个映射包括从异常值到有效值的相应映射或其他关系方面。具体地,多个映射可以包括在包括一个或多个字母的拼写错误的异常字符串值与具有正确拼写的有效字符串值之间的映射,例如,异常字符串值“dehli”可以被映射到有效字符串值“delhi”。本文进一步描述关于标准化修改确定的实施例。
61.可选地,在步骤425,云服务器应用呈现在步骤420得到的提出的数据标准化规则集合以用于客户端审阅。在实施例中,云服务器应用通过在客户机可访问的论坛中发布所提出的数据标准化规则的集合来呈现该集合。在进一步的实施例中,云服务器应用通过将所提出的数据标准化规则的集合传输到客户端接口来呈现该集合。根据这种进一步的实施方式,客户端界面是通过安装在客户端系统或设备上或者由客户端系统或设备可访问的至少一个客户端应用程序呈现的图形用户界面(gui)和/或命令行界面(cli)形式的用户界面。可选地,云服务器应用通过生成用于显示给客户端(例如,在客户端可访问的论坛或客户端界面中)的表格响应界面元素来促进客户端接受所提出的数据标准化规则集合。客户端包括特定领域的主题专家、数据管理员、和/或与数据集或云服务器系统相关联的任何其他实体。
62.在实施例中,云服务器应用基于归属于所提出的数据标准化规则集合和/或其中的相应标准化规则的定量的置信度水平值,自动地接受所提出的数据标准化规则集合,而无需客户端审阅。根据这样的实施例,响应于确定所提出的数据标准化规则集合以超过预定置信度水平阈值的置信度水平纠正数据不准确性,云服务器应用自动地接受所提出的数据标准化规则集合,并且因此放弃客户端审阅。预定的置信度水平阈值定量地测量自动数据纠正能力(即,没有主题专家/数据管理员的纠正能力)中的置信度。根据这样的实施例,归属于所提出的数据标准化规则集合和/或其中的相应标准化规则的定量的置信度水平值可选地由客户端基于相关使用情况来设置。另外或替代地,基于在先前模型应用和/或先前模型迭代(即,当前模型应用内的先前迭代)的上下文中经由机器学习分析识别的数据关系确定置信度水平值。例如,假设州首府数据类值是“孟菲斯”,对应的州数据类值总是将是“田纳西州”,并且因此关于一个或多个可应用的数据标准化规则的置信度水平值将相对高。在另一个示例中,假设州首府数据类值是“海德拉巴(hyderabad)”,取决于上下文,相应的州数据类值可以是“特仑甘纳(telangana)”或“安得拉邦(andhra pradesh)”(因为海德拉巴是两个州的首府),并且因此关于一个或多个可应用的数据标准化规则的置信度水平值将相对低。因此,假设这些示例的上下文中的预定置信度水平阈值相同,如果所提出的集合内的一个或多个规则解决对应于“孟菲斯”(与“海德拉巴”相反)的数据集内的州数据类值,则在确定标准化州数据类值的上下文中云服务器应用接受所提出的数据标准化规则集合而无需客户端审阅是相对更可能的。
63.在步骤430,云服务器应用确定提出的数据标准化规则集合是否已被接受。任选地,基于客户端审阅来确定所提出的数据标准化规则组的接受,或者可替代地,响应于确定所提出的数据标准化规则组以超过预定的置信度水平阈值的置信度水平来补救数据不准确性,接受是自动的。响应于确定所提出的数据标准化规则集合尚未被接受,云服务器应用可选地调整所提出的数据标准化规则集合中的一个或多个,然后重复步骤430。可选地,这样的规则调整包括关于所提出的数据标准化规则集的客户端反馈的收集,在这种情况下,云服务器应用可基于客户端反馈应用一个或多个修改。在实施例中,这样的客户端反馈包括具有一个或多个客户端施加的规则修改的一个或多个规则覆盖请求。云服务器应用可选地基于客户端反馈来调整所提出的数据标准化规则的集合。
64.响应于确定所提出的数据标准化规则组已被接受,在步骤435,云服务器应用将提出的数据标准化规则组应用于数据集。在实施例中,云服务器应用将所提出的数据标准化规则集合应用于数据集的每个数据点。在进一步的实施例中,云服务器应用确认数据集数据质量已随着提出的数据标准化规则集合的应用而改善。根据这样的进一步的实施例,云服务器应用通过在应用所提出的数据标准化规则集之前和之后对数据集的数据质量的客户端审阅来确认数据集数据质量已改善。附加地或可替代地,云服务器应用经由在应用所提出的数据标准化规则集之前和之后的数据集数据质量的比较来确认数据集数据质量已改善。
65.此外,响应于所提出的数据标准化规则集合的接受,在步骤440,云服务器应用基于提出的数据标准化规则集合来更新机器学习数据标准化模型。在实施例中,云服务器应用将所提出的数据标准化规则集合集成(例如,添加或以其他方式关联)到与数据标准化模型相关联的多个数据质量规则,使得云服务器应用在后续模型应用期间考虑所提出的数据
标准化规则集合连同多个基线数据集成规则和任何先前接受的数据标准化规则集合。根据这样的实施例,云服务器应用将所提出的数据标准化规则集合添加到与数据标准化模型相关联的知识库中。与模型相关联的知识库任选地包括与多个数据质量规则以及任何提出的数据标准化规则集相关联的所有储存库、本体(ontologies)、文件和/或文档。云服务器应用可选地经由与云服务器系统相关联的dbms(例如,dbms 330)来访问知识库。
66.基于所提出的数据标准化规则集合向多个数据质量规则的集成,云服务器应用可选地训练数据标准化模型以标识将允许在后续模型应用期间的自动标准化的数据点模式。云服务器应用在接受时促进对所提出的数据标准化规则集合的适配以确保先前未预期但由所提出的集合自动处理的异常值在随后应用与机器学习数据标准化模型相关联的多个数据质量规则时被标准化。因而,基于所提出的数据标准化规则集合的集成,在后续模型应用期间,如果通过所提出的数据标准化规则集合中的一个或多个来处理被确定为异常值的数据集数据点的标准化,则云服务器应用自动地将该数据点标准化。在根据步骤440更新数据标准化模型时,云服务器应用可选地返回步骤415以将数据标准化模型重新应用于数据集,以便细化数据集标准化。这样的进一步实施例与如在不同实施例的上下文中设想的多遍(multi-pass)算法应用一致。可替代地,在根据步骤440更新数据标准化模型时,云服务器应用可前进到方法400的结束。
67.图5示出了配置机器学习数据标准化模型的方法500。方法500开始于步骤505,其中云服务器应用在多个相应的数据载入场景期间对多个数据集进行采样。在一实施例中,云服务器应用基于一个或多个相关联的数据类来对数据集进行采样。根据一个可替换实施例,为了集中在某个或某些数据类别上,云服务器应用采样具有大于根据一个或多个相关联的数据类别来分类的阈值数量的值的数据集。根据另一可替换实施例,为了确保采样的数据多样性,云服务器应用对具有与大于阈值数量的数据类别相关联的值的数据集进行采样。在步骤510,云服务器应用基于多个采样的数据集来识别相应的数据异常场景。在实施例中,云服务器应用通过应用与数据标准化模型相关联的多个数据质量规则来识别多个采样的数据集中的异常值。可选地,多个数据质量规则中的多个基线数据集成规则包括识别相关数据列中的相应值之间的(between)或之中的(among)预期关系的至少一个相关规则。例如,相关规则可要求第一数据列中的某行的数值为第二数据列中的某行的数值的两倍。附加地或可替代地,多个基线数据集成规则包括识别数据列内的相关值之间或之中的预期关系的至少一个数据列相关规则。可选地,多个数据质量规则还包括从诸如本体或储存库的外部源得到的任何可适应的规则。例如,云服务器应用可从数据储存库获取关于一个或多个数据类的有效值的列表,并且得到用于解释包括在该列表中的有效值的规则。在数据标准化模型的初始构建之后,云服务器应用可选地基于对相应的提出的数据标准化规则集合的接受(例如,在方法400的上下文中)和/或基于对来自外部源的附加规则的采用来更新多个基线数据集成规则之外的多个数据质量规则。
68.在步骤515,云服务器应用识别现有数据异常纠正技术以处理相应的数据异常场景。在一实施例中,云服务器应用通过咨询任何先前接受的数据标准化规则集合和/或任何先前提出的数据标准化规则集合来识别现有数据异常纠正技术。这样的规则集可存储在与数据标准化模型相关联的知识库中,或以其他方式可与模型相关地被记录,例如,诸如可从外部源检索。根据这样的实施例,云服务器应用识别先前为多个采样的数据集中的数据集
接受和/或先前提出的任何数据标准化规则集合。在步骤520,云服务器应用基于现有数据异常校正技术对相应的数据异常场景的适用性来训练机器学习数据标准化模型。根据步骤520,云服务器应用通过创建和分析处理相应数据异常情形与现有数据异常校正技术之间的关联的关联数据来训练模型。关联数据可包含关于现有异态校正技术中的一者或一者以上在寻址相应数据异态情境中的一者或一者以上方面的有效性的置信度水平数据。另外或替代地,关联数据可包含多个现有异常纠正技术在处理某一相应数据异常场景方面的比较。通过分析关联数据,云服务器应用可确定在未来模型应用期间现有异常纠正技术中的哪一个可在处理相应数据异常场景或与其类似的场景方面相对更有效。因而,云服务器应用可基于这样的分析来校准模型。在实施例中,云服务器应用将关于模型的关联数据记录在例如与模型关联的知识库中。
69.在实施例中,云服务器应用基于对任何查阅的先前接受的数据标准化规则集合和/或任何查阅的先前提出的数据标准化规则集合的分析来训练数据标准化模型,以便增强或以其他方式适配超出多个基线数据集成规则的多个数据质量规则。可选地,在步骤520处的训练之后,云服务器应用将来自先前接受的数据标准化规则集的规则集成到多个数据质量规则中。根据方法400的上下文中的步骤440,随着接受所提出的数据标准化规则集合,此类训练可增强数据标准化模型,作为更新数据标准化模型的补充或替代。在另外的实施例中,云服务器应用最初执行一个或多个模型配置步骤,特别是外部源协商,以便构建数据标准化模型。在进一步的实施例中,云服务器应用以周期性的时间间隔和/或每次云服务器应用处理阈值数量的数据集来执行一个或多个模型配置步骤,尤其是训练。云服务器应用可以在训练机器学习数据标准化模型之后继续到方法500的结束。
70.总之,根据方法500对机器学习数据标准化模型进行配置包括:在多个相应的数据载入场景期间对多个数据集进行采样;基于多个采样的数据集识别相应的数据异常场景;识别现有数据异常纠正技术以解决相应的数据异常场景;以及基于现有数据异常纠正技术对相应的数据异常场景的适用性来训练机器学习数据标准化模型。
71.图6示出了方法400的步骤415的上下文中将机器学习数据标准化模型应用于数据集内的每个分类的数据点的方法600。方法600在步骤605开始,其中云服务器应用选择数据集内的数据点用于评估。在步骤610,云服务器应用确定在步骤605选择的数据点是否是有效值。在实施例中,云服务器应用程序通过确定数据点是否符合多个基线数据集成规则来确定数据点是否是有效值。响应于确定在步骤605选择的数据点是有效值,对于该数据点不需要进一步的标准化处理,并且因此云服务器应用前进到步骤630。响应于确定数据点不是有效值,即,响应于确定数据点不符合多个基线数据集成规则,在步骤615,云服务器应用确定数据点是否是由并入到数据标准化模型中的预先存在的标准化规则(例如,来自集成到多个数据质量规则中的先前接受的数据标准化规则的集合的规则、和/或随着模型训练而从外部源适配的规则)处理的异常值。响应于确定数据点是由并入到数据标准化模型中的预先存在的标准化规则处理的异常值,在步骤620,云服务器应用通过应用预先存在的标准化规则来动态地修改异常值。通过基于预先存在的标准化规则的应用来动态地修改异常值,云服务器应用可利用该模型来自动地解决标准化问题而无需进一步分析和处理。在步骤620之后,云服务器应用前进到步骤630。
72.响应于确定数据点是未被并入数据标准化模型中的预先存在的标准化规则处理
的异常值,在步骤625,云服务器应用确定至少一个标准化修改以纠正数据点。参照图7描述了关于根据步骤625确定至少一个标准化修改以纠正数据点的方法。在步骤625之后,云服务器应用前进到步骤630。在步骤630,云服务器应用确定数据集中是否存在要评估的另一数据点。响应于确定在数据集中存在另一数据点要评估,云服务器应用返回步骤605。响应于确定在数据集中没有其他数据点要评估,云服务器应用可前进到方法600的结束。
73.总之,根据方法600将机器学习数据标准化模型应用于数据集内的每个分类的数据点包括:响应于确定数据点是由结合在机器学习数据标准化模型中的预先存在的标准化规则处理的异常值,通过应用预先存在的标准化规则来动态地修改异常值。此外,根据方法600将机器学习数据标准化模型应用于数据集内的每个分类的数据点包括:响应于确定数据点是未被任何预先存在的标准化规则处理的异常值,确定至少一个标准化修改以纠正该数据点。
74.图7示出了方法600的步骤625的上下文中确定至少一个标准化修改以纠正数据集内的数据点的方法700。方法700开始于步骤705,其中云服务器应用确定数据点是否为空值。响应于确定数据点不是空值,云服务器应用前进到步骤715。响应于确定数据点是空值,在步骤710,云服务器应用基于包括空值的第一数据列与至少一个相关数据列(即,与第一数据列相关的至少一个数据列)之间的关系或基于第一数据列内的相关值之间的关系来确定空值的替换。在实施例中,在空值在与一个或多个其他数据列相关的第一数据列中的情况下,云服务器应用可选地用与数据列相关性一致的值来替换空值。根据此类实施例,云服务器应用可选地分析一个或多个其他数据列内的相应值(例如,与包括空值的第一数据列相邻或以其他方式与其相关联的数据列中的相应值),以便确定包括空值的第一数据列与(一个或多个)其他数据列之间的相关关系,并用基于该相关性关系识别的有效值来替换空值。附加地或可替代地,云服务器应用可选地分析一个或多个其他数据列行内的相应值(例如,与空值的行相邻或以其他方式相关联的行中的相应值),以确定包括空值的第一数据列与(一个或多个)其他数据列之间的相关关系,并用基于该相关性关系识别的有效值来替换空值。云服务器应用可选地应用至少一个模式匹配算法和/或至少一个集群算法来确定任何这样的(一个或多个)关联关系。在另一实施例中,在空值处于具有基于数据列位置(例如,数据列行)的相关值的数据列中的情况下,云服务器应用可选地用与空值的数据列位置一致的值来替换空值。
75.在实施例中,根据步骤710,云服务器应用基于从多个基线数据集成规则得到的相关的值信息和/或互相关的值信息,基于从可适应规则和从存储库或本体获得的关系数据得到的相关值信息和/或互相关值信息,和/或基于通过数据标准化模型的应用通过机器学习获得的相关值信息和/或互相关值信息,确定空值的替换。在进一步的实施例中,云服务器应用在应用模型的上下文中记录、标记或以其他方式记录空值的替换作为标准化修改。根据这样的进一步的实施例,云服务器应用基于标准化修改来得到所提出的数据标准化规则集合中的至少一个规则。在数据标准化模型的上下文中,更一般地,任何此类提出的数据标准化规则可选地补充或以其他方式修改多个基线数据集成规则或多个数据质量规则内的数据列相关规则和/或互相关规则。响应于执行步骤710,云服务器应用可前进到方法700的结束。
76.在步骤715,云服务器应用确定数据点是否是频繁的异常字符串值。云服务器应用
将频繁的异常字符串值识别为具有大于或等于预先确定的数据集频率阈值的出现率的异常字符串值。在不同实施例的上下文中,云服务器应用可选地基于这样的异常字符串值在根据本文描述的方法被处理的数据集内的出现来测量异常字符串值的出现率,或者可替代地,云服务器应用基于这样的异常字符串值在指定的多个数据集内的出现来测量出现率,指定的多个数据集可以包括或可以不包括被处理的数据集和/或采样的多个数据集内的数据集。在各个实施例中,字符串值是用于表示文本的数据类型。这样的字符串值可以包括字母、数字和/或符号的序列。在实施例中,这样的字符串值可以是或以其他方式包括可变字符字段(varchar),其在不同实施例的上下文中是不确定长度的字符集。某个数据类别可以被定义为包括字符串值或者可以以其他方式与字符串值相关联,例如与非字符串值相反。例如,邮政编码数据类值可以被定义为包括特定数量的字符(数字和/或字母)的字符串值。因而,在某些实施例中,基于数据类别类型和/或数据列类型,字符串值与非字符串值是可区分的。响应于确定数据点不是频繁的异常字符串值,云服务器应用行进至步骤725。响应于确定数据点是频繁的异常字符串值,在步骤720,云服务器应用将频繁的异常字符串值分类为有效值。在实施例中,云服务器应用在数据标准化模型的上下文中将频繁的异常字符串值存储、标记或以其他方式标记为有效值。根据这样的实施例,云服务器应用可选地将频繁的异常字符串值存储在与模型相关联的知识库中。在进一步的实施例中,云服务器应用在应用模型的上下文中记录、标记或以其他方式记录对频繁的异常字符串值的验证作为标准化修改。根据这样的进一步的实施例,云服务器应用基于标准化修改来得到所提出的数据标准化规则集合中的至少一个规则。通过验证频繁的异常字符串值,云服务器应用在后续模型应用时促成关于频繁的异常字符串值的自动标准化。响应于执行步骤720,云服务器应用可前进到方法700的结束。
77.在步骤725,云服务器应用确定数据点是否是不频繁的异常字符串值。云服务器应用将不频繁的异常字符串值识别为具有小于预定的数据集频率阈值的出现率的异常字符串值。响应于确定数据点不是不频繁的异常字符串值,云服务器应用前进到步骤735。响应于确定数据点是不频繁的异常字符串值,在步骤730,云服务器应用应用数据抓取算法以经由自动化应用来评估不频繁的异常字符串值。在相关实施例中,对数据抓取算法的输入包括不频繁的异常字符串值和相关联的数据类名。在进一步相关的实施例中,数据抓取算法是被设计为系统地访问网页的网络爬取算法。在不同实施例的上下文中,自动化应用可以是或以其他方式结合机器人。附加地或可替代地,在步骤730的上下文中,云服务器应用应用数据抓取算法以检索网页之外的其他源中的数据。响应于执行步骤730,云服务器应用可前进到方法700的结束。关于图8描述了根据步骤730关于应用数据抓取算法以评估不频繁的异常字符串值的方法。
78.在步骤735,云服务器应用确定数据点是否是异常非字符串值。在各个实施例中,非字符串值表示结合文本之外的一个或多个方面的数据类型,诸如正则表达式。正则表达式包括定义搜索模式的字符序列。虽然通常通过值的有限列表来定义字符串值,但是基于模式分析(例如,正则表达式分析)来评估非字符串值。在某些实施例中,基于数据类别类型和/或数据列类型,非字符串值与字符串值是可区分的。某个数据类别可以被定义为包括非字符串值或者可以与非字符串值相关联,例如与字符串值相反。
79.在一个实施例中,云服务器应用确定非字符串值是异常值,并且更具体地,根据正
则表达式分析(即,搜索模式分析),基于非字符串值是异常值,确定一个或多个异常。云服务器应用在正则表达式分析期间将一个或多个异常识别为格式违规。例如,云服务器应用可以基于缺失连字符(hyphen)确定非字符串社会安全号数据类值是异常值,因为社会安全号数据类中的非字符串值的正则表达式验证需要定义的连字符模式。在另一示例中,云服务器应用可以基于缺失句点(period)确定非字符串电子邮件地址数据类值是异常值,因为域名内的句点是电子邮件地址数据类中的非字符串值的正则表达式验证所需要的。根据此类实施例,云服务器应用至少部分地基于包括在多个数据质量规则内的多个基线数据集成规则的应用来识别与异常非字符串值相关联的格式违规。响应于多个基线数据集成规则的应用,可选地自动触发与(一个或多个)非字符串值格式违规相关联的(一个或多个)警报。在另一实施例中,云服务器应用基于数据点内的一个或多个字符串部分中的一个或多个异常来确定数据点是异常非字符串值。在另一实施例中,云服务器应用基于数据点是与唯一值相关联的数据列内的重复值来确定数据点是异常非字符串值。例如,云服务器应用可以将具有非字符串社会安全号数据类值的数据点识别为非串异常值,该非字符串社会安全号数据类值是社会安全号数据列内的至少一个其他数据点的重复的值。
80.响应于确定数据点是异常非字符串值,在步骤740,云服务器应用确定针对异常非字符串值的纠正。响应于执行步骤740,云服务器应用可继续到方法700的结束。关于图9-11描述了关于根据步骤740确定异常非字符串值的纠正的多种方法。响应于确定数据点不是异常非字符串值,可选地在步骤745处,云服务器应用经由众包和/或外部储存库协商来调查数据点的识别,并且然后可以进行到方法700的结束。在实施例中,云服务器应用通过咨询数据专家或主题专家的公共论坛来促成众包。在步骤745之前无法识别数据点可指示例如由不良定义的值引起的数据质量异常。根据一个或多个替换实施例,云服务器应用在替换配置中执行方法700的步骤。例如,云服务器应用可在一个或多个替代顺序中执行步骤705-710、步骤715-720、步骤725-730和步骤735-740。
81.总之,根据方法700确定用于纠正数据点的至少一个标准化修改包括:响应于确定数据点是空值,基于包括空值的第一数据列与至少一个相关数据列之间的关系或基于第一数据列内的相关值之间的关系来确定空值的替换。此外,根据方法700确定用于纠正数据点的至少一个标准化修改包括:响应于确定数据点是发生率大于或等于预先确定的数据集频率阈值的频繁的异常字符串值,将频繁的异常字符串值分类为有效值。此外,根据方法700确定用于纠正数据点的至少一个标准化修改包括:响应于确定数据点是发生率小于预定的数据集频率阈值的不频繁的异常字符串值,应用数据抓取算法以经由自动化应用来评估不频繁的异常字符串值,其中到数据抓取算法的输入包括不频繁的异常字符串值和相关联的数据类名称。另外,根据方法700确定用于纠正数据点的至少一个标准化修改包括:响应于确定数据点是异常非字符串值,确定针对异常非字符串值的纠正。
82.图8示出了在方法700的步骤730的上下文中应用数据抓取算法以评估不频繁的异常字符串值的方法800。方法800开始于步骤805,其中云服务器应用确定是否已经经由数据抓取识别与不频繁的异常字符串值和相关联的数据类名称两者相关联的阈值数量的数据点。响应于未能识别与不频繁的异常字符串值和相关联的数据类名称两者相关联的阈值数量的数据点,云服务器应用行进至步骤815。响应于识别与不频繁的异常字符串值和相关联的数据类名称两者相关联的阈值数量的数据点,在步骤810,云服务器应用将不频繁的异常
字符串值分类为有效值。在实施例中,云服务器应用在数据标准化模型的上下文中将不频繁的异常字符串值存储、标记或以其他方式标记为有效值。根据这样的实施例,云服务器应用可选地将不频繁的异常字符串值作为有效值存储在与模型相关联的知识库中。在进一步的实施例中,在应用模型的上下文中,云服务器应用将不频繁的异常字符串值的验证记录、标记或以其他方式记录为标准化修改。根据这样的进一步的实施例,云服务器应用基于标准化修改来得到所提出的数据标准化规则集合中的至少一个规则。通过验证不频繁的异常字符串值,云服务器应用在后续模型应用时促成相对于不频繁的异常字符串值的自动标准化。响应于执行步骤810,云服务器应用可进行到方法800的结束。
83.在步骤815,云服务器应用确定在数据集内是否存在至少一个有效字符串值,该至少一个有效字符串值与不频繁的异常字符串值具有预定程度的字符串相似度。实施例中,云服务器应用基于不频繁的异常字符串值和具有最大数量的字符差异的有效字符串值来定义不频繁的异常字符串值和有效字符串值之间的字符串相似度的预定的程度。附加地或可替代地,云服务器应用基于不频繁的异常字符串值和具有最小数量的共同字符的有效字符串值来定义不频繁的异常字符串值和有效字符串值之间的字符串相似度的预定的程度。附加地或可替代地,云服务器应用基于不频繁的异常字符串值和具有相差小于预定阈值的相应字符串长度的有效字符串值来定义不频繁的异常字符串值和有效字符串值之间的字符串相似度的预定的程度。响应于未能识别数据集内的具有与不频繁的异常字符串预定的程度的字符串相似度的至少一个有效字符串值,云服务器应用前进到步骤825。响应于识别出数据集内的具有与不频繁的异常字符串值预定的程度的字符串相似度的至少一个有效字符串值,在步骤820处,云服务器应用基于有效字符串值选择来确定针对不频繁的异常字符串值的纠正。实施例中,有效字符串值选择包括在至少一个有效字符串值之中选择有效字符串值,以及基于不频繁的异常字符串值和所选的有效字符串值之间的任何识别的字符差异来确定对不频繁的异常字符串值的至少一个修改。在另一实施例中,在应用模型的上下文中,云服务器应用将不频繁的异常字符串值的至少一个修改记录、标记或以其他方式记录为标准化修改。根据这样的实施例,云服务器应用基于标准化修改得到所提出的数据标准化规则的集合中的至少一个规则。
84.根据步骤820在至少一个有效字符串值之中选择有效字符串值可选地包括评估不频繁的异常字符串值与至少一个有效字符串值中的每一个之间的定量的相似度。实施例中,云服务器应用通过基于评估的有效字符串值和不频繁的异常字符串值之间的相似度为至少一个有效字符串值中的每一个计算定量的相似度得分来评估定量的相似度。根据这样的实施例,云服务器应用基于所计算的最高定量的相似度得分从至少一个有效字符串值中选择有效字符串值。云服务器应用可选地基于一个或多个相似度评估因素计算定量的相似度得分。相似度评估因子任选地包括不频繁的异常字符串值与至少一个有效字符串值中的每一个之间的编辑距离。在不同实施例的上下文中,编辑距离是修改异常值以符合特定有效值所需的修改量。附加地或可替代地,相似度评估因子包括与至少一个有效字符串值中的每一个相比较的不频繁的异常字符串值的数据源。这样的上下文中的数据源任选地包括作者的起始位置和/或身份。附加地或可替代地,相似度评估因子包括与至少一个有效字符串值中的每一个相比较的不频繁的异常字符串值的数据分类。在这样的背景下的数据分类可选地包括数据类别、数据类型、主题、(一个或多个)预期的统计、数据年龄、数据修改历
史、和/或相关联的数据字段的值。
85.在相关实施例中,对一个或多个相似度评估因子加权,使得具有相对较高权重的相似度评估因子比具有相对较低权重的相似度评估因子对计算的定量的相似度得分具有更大的影响。为了在具有相同定量的相似度得分的两个有效值之间进行区分(例如,来自共同源并且在具有单个字符差异的相同数据类内的两个城市值),云服务器应用可选地基于对两个有效值中的每一个的相关数据类中的相应相关联的字段值(例如,两个城市数据类值中的每一个的邮政编码数据类值)的评估来选择两个有效值中的一个。云服务器应用可基于两个有效值中的哪一个具有满足或更完全遵循如由与数据标准化模型相关联的数据标准化规则集合(例如,先前接受的数据标准化规则集合)所确定的针对相关联的数据类别和/或针对相关联的数据列建立的一个或多个条件的相关联的字段值来选择两个有效值中的一个。例如,给定不频繁的异常字符串城市数据类别值“middletonw”和有效城市数据类别值“middleton”和“middletown”,云服务器应用可基于哪个有效值具有满足或更完全遵循如由与模型相关联的数据标准化规则集合所确定的针对相关联的邮政编码数据类别和/或针对相关联的邮政编码数据列建立的一个或多个条件的邮政编码来选择两个有效城市数据类别值中的一个。
86.在进一步相关的实施例中,云服务器应用通过基于加权决策树应用算法来评估不频繁的异常字符串值与至少一个有效字符串值中的每一个之间的定量的相似度。云服务器应用可选地基于不频繁的异常字符串值与至少一个有效字符串值中的每一个之间的相应编辑距离来确定加权决策树的相应权重值。附加地或可替代地,云服务器应用可选地基于与不频繁异常字符串值的数据列相关(例如,相关或以其他方式相关联)的数据列中的相应值来确定加权决策树的相应权重值。
87.附加地或可替代地,根据步骤820在至少一个有效字符串值之中选择有效字符串值可选地包括至少部分地基于字符串值选择历史来应用一个或多个试探法(heuristic)。在该实施例和本文描述的其他实施例的上下文中,试探法是基于机器逻辑的规则,其基于一个或多个预定类型的输入来提供确定。在至少一个有效字符串值之中选择有效字符串值的上下文中的对一个或多个试探法的预定类型的输入可以包括在与不频繁的异常字符串值相关联的数据类和/或数据列的上下文中的有效字符串选择历史,例如,最近选择的有效字符串或最频繁选择的有效字符串。响应于执行步骤820,云服务器应用可前进到方法800的结束。
88.在步骤825,云服务器应用将不频繁的异常字符串值标记为数据质量异常并且应用至少一种众包技术来确定针对不频繁的异常字符串值的纠正。在一个实施例中,云服务器应用通过查询数据专家或主题专家的公共论坛以获得一个或多个纠正技术来识别有效字符串值来促进众包,基于该有效字符串值来实现纠正。在进一步的实施例中,云服务器应用在应用模型的上下文中记录、标记或以其他方式记录对不频繁的异常字符串值的纠正作为标准化修改。根据这样的实施例,云服务器应用基于标准化修改得出所提出的数据标准化规则的集合中的至少一个规则。如果众包未能识别有效字符串值,则云服务器应用可选地用空值替换不频繁的异常字符串值。响应于执行步骤825,云服务器应用可进行到方法800的结束。
89.总之,根据方法800应用数据抓取算法以评估不频繁的异常字符串值包括:响应于
识别与不频繁的异常字符串值和相关联的数据类名称两者相关联的阈值数量的数据点,将不频繁的异常值串值分类为有效值。另外,根据方法800应用数据抓取算法以评估不频繁的异常字符串值包括:响应于未能识别与不频繁的异常值串值和相关联的数据类名称两者相关联的阈值数量的数据点,确定在数据集内是否存在与不频繁的异常字符串值具有预定程度的字符串相似度的至少一个字符有效串值。在这样的情况下,根据方法800应用数据抓取算法以评估不频繁的异常字符串值还包括:响应于识别数据集内具有预定程度的字符串相似度的至少一个有效字符串值,通过在至少一个有效字符串值之中选择有效字符串值来确定对不频繁的异常字符串值的纠正,以及基于不频繁的异常值串值与所选择的有效字符串值之间的任何识别的字符差异来确定对不频繁的异常字符串值的至少一个修改。在相关实施例中,在至少一个有效字符串值之中选择有效字符串值包括评估不频繁的异常字符串值和至少一个有效字符串值中的每一个之间的定量的相似度。在进一步相关的实施例中,在至少一个有效字符串值之中选择有效字符串值包括至少部分地基于字符串值选择历史来应用一个或多个试探法。此外,根据方法800应用数据抓取算法以评估不频繁的异常字符串值还包括:响应于无法识别数据集内具有预定程度的字符串相似度的至少一个有效字符串值,应用至少一个众包技术以确定针对不频繁的异常字符串值的纠正。
90.图9示出了方法700的步骤740的上下文中确定针对异常非字符串值的纠正的方法900。方法900开始于步骤905,其中云服务器应用识别与异常非字符串值相关的正则表达式格式。在实施例中,云服务器应用基于分配给异常非字符串值的数据类别来识别正则表达式格式和/或任何预定义的正则表达式规则。附加地或可替代地,云服务器应用基于在异常非字符串值中识别的一个或多个字符、句法和/或符号模式来标识正则表达式格式和/或任何预定义的正则表达式规则。在步骤910,云服务器应用确定对异常非字符串值的至少一个修改以符合正则表达式格式。在实施例中,至少一个修改包括对正则表达式格式所指示的任何字符、句法和/或符号差异的校正。在不同实施例的上下文中,异常非字符串值相对于正则表达式格式的句法差异可以包括字符(字母和/或数字)相对于符号的不规则放置、不规则字符次序、不规则标点、和/或不规则模式。例如,日期数据类的异常非字符串值可以在月份、日期、和/或年份表示方面具有不规则模式。异常非字符串值相对于正则表达式格式的符号差异可以包括符号省略和/或不规则符号使用,例如,使用与有效非字符串值中的对应符号类似但不相同的异常非字符串值中的符号。例如,异常非字符串值可以使用日期的各方面之间的斜线,而日期数据分类值的相关正则表达式格式可能需要使用连字符而不是斜线。虽然在这样的实例中的异常非字符串值可以表示日期,但是该值可能违反每个数据标准化模型所需的相关正则表达式格式,并且因此云服务器应用可以根据步骤910修改该值以符合这样的格式。在另一实施例中,云服务器应用在应用模型的上下文中记录、标记或以其他方式记录异常非字符串值的至少一个修改作为标准化修改。根据这样的进一步的实施例,云服务器应用基于标准化修改来得到提出的数据标准化规则集合中的至少一个规则。
91.总之,根据方法900确定用于异常非字符串值的纠正包括:识别与异常非字符串值相关的正则表达式格式;以及确定对异常非字符串值的至少一个修改以符合正则表达式格式。
92.图10示出了方法700的步骤740的上下文中确定针对异常非字符串值的纠正的方
法1000。作为方法900的步骤的补充或替代,云服务器应用可选地执行方法1000的步骤。方法1000开始于步骤1005,其中云服务器应用将异常非字符串值解析成至少一个字符串部分。云服务器应用解析异常非字符串值以识别非字符串值内的任何字符串部分,然后分析每个识别的字符串部分以确定其中的任何格式违规。在确定任何这样的字符串部分内的任何格式违反时,云服务器应用将该字符串部分识别为异常字符串部分。在步骤1010,对于该至少一个字符串部分中的每个异常字符串部分,即,对于包括至少一个异常的每个字符串部分,云服务器应用执行两个子步骤。在子步骤1010a,云服务器应用通过评估异常字符串部分和至少一个有效字符串值中的每一个之间的定量的相似度来从至少一个有效字符串值中选择有效字符串值。在实施例中,为了评估定量的相似度,云服务器应用应用与先前关于步骤820所描述的技术类似的至少一种技术,例如,定量的相似度得分的计算或基于加权决策树的算法的应用。在子步骤1010b,云服务器应用基于异常字符串部分与在子步骤1010a选择的有效字符串值之间的任何识别的字符差异来确定对异常字符串部分的至少一个修改。在实施例中,云服务器应用在应用模型的上下文中记录、标记或以其他方式记录异常字符串部分的至少一个修改作为标准化修改。根据这样的进一步的实施例,云服务器应用基于标准化修改来得到提出的数据标准化规则集合中的至少一个规则。
93.总之,根据方法1000确定针对异常非字符串值的纠正包括将异常非字符串值解析成至少一个字符串部分,以及,对于至少一个字符串部分中的每个异常字符串部分,通过评估异常字符串部分和至少一个有效字符串值中的每个之间的定量的相似度,并且进一步通过基于异常字符串部分和所选择的有效字符串值之间的任何识别的字符差异来确定对异常字符串部分的至少一个修改,来从至少一个有效字符串值中选择有效字符串值。
94.图11示出了方法700的步骤740的上下文中确定针对异常非字符串值的纠正的方法1100。除了方法900和/或1000的步骤以外,或者作为方法900和/或1000的步骤的替代,云服务器应用可选地执行方法1100的步骤。方法1100开始于步骤1105,其中云服务器应用确定异常非字符串值是否是重复值。响应于确定异常非字符串值不是重复值,云服务器应用可以前进到方法1100的结束。响应于确定异常非字符串值是重复值,在步骤1110,云服务器应用基于包括重复值的第一数据列与至少一个相关数据列(即,与第一数据列相关的至少一个数据列)之间的关系来确定对重复值的替换。在实施例中,在重复值在与一个或多个其他数据列相关的第一数据列中的情况下,云服务器应用可选地用与数据列相关一致的值来替换重复值。根据此类实施例,云服务器应用可选地分析一个或多个其他数据列内的相应值(例如,毗邻包括重复值的第一数据列或以其他方式与包括重复值的第一数据列相关联的数据列中的相应值),以便确定包括重复值的第一数据列与其他数据列之间的相关关系,并用基于该相关关系识别出的有效值来替换重复值。例如,响应于确定社交安全号数据列内的重复的社交安全号数据类值,云服务器应用可以分析相关数据列中的一个或多个名称数据类值,以基于一个或多个名称数据类值确定适当的社交安全号数据类值替换。附加地或可替代地,云服务器应用可选地分析一个或多个其他数据列行内的相应值(例如,毗邻或以其他方式与重复值的行相关联的行中的相应值),以便确定包括重复值的第一数据列与其他数据列之间的相关关系,并用基于该相关关系识别出的有效值来替换重复值。云服务器应用可选地应用至少一个模式匹配算法和/或至少一个集群算法来确定任何这样的(一个或多个)关联关系。在进一步的实施例中,云服务器应用在应用模型的上下文中记录、标
记或以其他方式记录重复值的替换作为标准化修改。根据这样的进一步的实施例,云服务器应用基于标准化修改来得到提出的数据标准化规则集合中的至少一个规则。在数据标准化模型的背景下,更一般地,任何这种提出的数据标准化规则可选地补充或以其他方式修改多个基线数据集成规则内或多个数据质量规则内的数据列相关规则。
95.总之,根据方法1100确定针对异常非字符串值的纠正包括:响应于确定异常非字符串值是重复值,基于包括重复值的第一数据列与至少一个相关数据列之间的关系来确定针对重复值的替换。
96.已经出于说明的目的呈现了本发明的各种实施方式的描述,但并不旨在是详尽的或者限于所公开的实施方式。对所描述的实施例和等同布置进行的所有种类的修改应当落入本发明的保护范围内。因此,本发明的范围应当根据以下与具体实施方式相关的权利要求最广泛地解释,并且应当覆盖所有可能的等效变化和等效布置。在不脱离所描述的实施例的范围的情况下,许多修改和变化对于本领域普通技术人员来说是清晰的。本文使用的术语被选择来最好地解释实施例的原理、实际应用或优于市场中发现的技术的技术改进,或者使得本领域普通技术人员能够理解本文描述的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
网站地图