CN102656554B - 映射数据集元素 - Google Patents

映射数据集元素 Download PDF

Info

Publication number
CN102656554B
CN102656554B CN201080051923.XA CN201080051923A CN102656554B CN 102656554 B CN102656554 B CN 102656554B CN 201080051923 A CN201080051923 A CN 201080051923A CN 102656554 B CN102656554 B CN 102656554B
Authority
CN
China
Prior art keywords
output
data
data set
input
transformation
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.)
Active
Application number
CN201080051923.XA
Other languages
English (en)
Other versions
CN102656554A (zh
Inventor
S.斯图德
A.威斯曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ab Initio Technology LLC
Original Assignee
Ab Initio Technology LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ab Initio Technology LLC filed Critical Ab Initio Technology LLC
Priority to CN201910769882.0A priority Critical patent/CN110516209A/zh
Publication of CN102656554A publication Critical patent/CN102656554A/zh
Application granted granted Critical
Publication of CN102656554B publication Critical patent/CN102656554B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • G06F16/88Mark-up to mark-up conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

将输入数据集的一个或多个元素映射到输出数据集的一个或多个元素包括:在界面中接收在给定的输出和由输入变量表示的一个或多个输入之间的一个或多个映射关系,映射关系中的至少一个包括可在数据处理系统上执行的变换表达式,所述变换表达式基于映射到输入数据集的元素的至少一个输入变量定义映射关系的输出;在所述界面中接收映射到各个映射关系的输出的输出数据集的元素的标识;基于来自输入数据集的与映射到输入变量的输入数据集的元素相关联的输入数据,根据变换表达式,从数据处理系统中生成输出数据;以及基于确认标准,响应于生成的输出数据,确定确认信息。

Description

映射数据集元素
优先权声明
本申请要求在2009年9月16日提交的美国临时专利申请No.61/243,132的权益,其全部内容在此被引用附于此。
技术领域
该描述涉及映射数据集元素。
背景技术
在一些数据库或数据仓储系统中,一个数据集(“源”或“输入”数据集)的元素被映射到另一数据集(“输出”或“目标”数据集)的元素。例如,这些元素可以包括数据库表的字段或数据对象的属性。然后,输入数据集的记录(例如,表格的行)可以被输入到输出数据集中,其适当的输入字段被映射到适当的输出字段。可以存在输入数据集的格式和输出数据集的格式之间的差异,这要求转换数据值来满足输出格式。在一些情况下,还应用例如另外的数据变换以保证数据质量或满足输出数据集的期望特征。映射处理可以涉及在具有不同技能级别(例如,新手或专家)或不同关注领域(例如,商业或技术)的不同用户之间的交互。
发明内容
在一个方面中,通常,描述一种用于将在输入数据处理系统中存储的输入数据集的一个或多个元素映射到在输出数据处理系统中存储的输出数据集的一个或多个元素的方法。该方法包括在界面中接收在给定的输出和由输入变量表示的一个或多个输入之间的一个或多个映射关系,映射关系中的至少一个包括可在数据处理系统上执行的变换表达式,所述变换表达式基于映射到输入数据集的元素的至少一个输入变量定义映射关系的输出。该方法包括在所述界面中接收映射到各个映射关系的输出的输出数据集的元素的标识。该方法包括基于来自输入数据集的、与映射到输入变量的输入数据集的元素相关联的根据变换表达式,从数据处理系统中生成输出数据。该方法包括基于定义与输出数据集的一个或多个标识元素相关联的有效值的一个或多个特性的确认标准,响应于生成的输出数据,确定确认信息;以及基于确定的确认信息,在界面中呈现可视反馈。
上述方面可以包括一个或多个以下特征。
该方法还包括根据映射关系,将来自输入数据集的输入数据导入到输出数据集中。
导入该输入数据包括向输入数据集的输入记录的各个字段中的输入值应用变换表达式,且在输出数据集的输出记录的各个字段中存储输出值,其中,所述输入记录的至少一些字段对应于映射到输入变量的、输入数据集的元素,且输出记录的至少一些字段对应于映射到各个映射关系的输出的、输出数据集的元素。
向输入数据集的输入记录的各个字段中的输入值应用变换表达式、且在输出数据集的输出记录的各个字段中存储输出值包括:执行数据流图,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入记录的数据流的输入数据集的节点和表示接收输出记录的数据流的输出数据集的节点。
该方法还包括存储指定映射关系的映射。
确定确认信息包括检索输出数据处理系统中存储的确认标准的规范。
通过数据处理系统来提供所述界面,且向第一用户呈现所述界面,且从第二用户接收输出数据处理系统中存储的确认标准的规范。
该方法还包括在界面中呈现表示生成的输出数据的值。
确定确认信息包括基于与映射到变换映射关系的输出的、输出数据集的所标识元件相关联的确认标准,评价关于包括变换表达式的每个变换映射关系所生成的输出数据。
所述映射关系包括多个包括变换表达式的变换映射关系。
所述确认标准包括第一确认标准和第二确认标准,所述第一确认标准与输出数据集的第一所标识元素相关联、用于定义与第一所表示元素相关联的有效值的一个或多个特性,且所述第二确认标准与输出数据集的第二所标识元素相关联,用于定义与第二所标识元素相关联的有效值的一个或多个特性。
响应于所生成的、包括对应于第一所标识元素的第一字段和对应于第二所标识元素的第二字段的输出记录来确定确认信息。
所述第一确认标准依赖于在输出记录的第二字段中的值。
所述确认信息依赖于在输出记录的第一字段中的值和输出记录的第二字段中的值。
该方法还包括确定指示变换表达式的有效结构的句法信息。
该方法还包括基于所确定的句法信息,在界面中呈现界面可视反馈。
该方法还包括接受基于所接收的用户对变换表达式的修改的修改后变换表达式。
该方法还包括基于来自输入数据集的输入数据,根据修改后变换表达式,从数据处理系统生成修改后输出数据。
该方法还包括响应于所生成的修改后输出数据,确定修改后确认信息,且基于修改后确认信息在界面中呈现可视反馈。
生成修改后输出数据并基于修改后确认信息呈现可视反馈发生在正修改变换表达式时。
生成修改后输出数据并基于修改后确认信息呈现可视反馈在已经修改了变换表达式之后响应于用户请求而发生。
根据表示到应用变换表达式的数据流图的组件的数据流的链接,接收来自输入数据集的输入数据,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出数据的数据流的输出数据集的节点。
根据表示来自应用变换表达式的数据流图的组件的数据流的链接,向输出数据集提供在输出数据集中存储的所生成输出数据,所述数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出数据的数据流的输出数据集的节点。
响应于对应用第一映射关系的数据流图的组件的选择,接收至少第一映射关系,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出数据的数据流的输出数据集的节点。
所述可视反馈包括表示在界面上显示的沿袭图的多个节点之一的确认信息的指示符,所述节点表示包括与输出数据集的一个或多个所标识元素相关联的至少一个变换后值的变换后值。
所述可视反馈包括多个指示符,每个指示符与界面上显示的沿袭图的多个节点之中的节点相关联。
由表示节点所表示的变换后值之间的依赖关系的链接来连接与所述指示符相关联的至少一些节点。
所述可视反馈包括多个指示符,每个指示符与界面上显示的多个输出元素之中的输出元素相关联,该多个输出元素包括表示输出数据集的一个或多个所标识元素的至少一个输出元素。
界面上显示的多个输出元素对应于表示将变换表达式应用于输入数据的记录的结果的字段。
至少一个指示符指示对于行字段值的确认信息,该行表示将变换表达式应用于输入数据的单个记录得到的输出值。
至少一个指示符指示对于列字段值的确认信息,该列表示将单个变换表达式多次应用于输入数据的各个记录。
所述可视反馈包括基于确认信息计算的统计数据,所述统计数据包括表示将确认标准应用于输入数据的多个记录的结果的数据。
以规律的时间间隔计算统计数据。
所述可视反馈包括与确认标准相关联的定制错误消息,所述定制错误消息指示关于将确认标准应用于输入数据的记录的具体实例的结果的信息。
该方法还包括在界面中接收被定义为与输入变量无关的至少一个常数的输出。
该方法还包括接收表示变换表达式的结果的期望值,其中,确定确认信息包括比较该期望值与关于包括变换表达式的每个变换映射关系生成的输出数据。
在另一方面中,描述一种用于将输入数据集的一个或多个元素映射到输出数据集的一个或多个元素的系统。该系统包括输入数据存储系统,存储输入数据集;输出数据存储系统,存储输出数据集;以及数据处理系统,被配置以提供用于接收用户输入并呈现数据处理的结果的界面。该接收和呈现包括:在界面中接收在给定的输出和由输入变量表示的一个或多个输入之间的一个或多个映射关系,映射关系中的至少一个包括可在数据处理系统上执行的变换表达式,所述变换表达式基于映射到输入数据集的元素的至少一个输入变量定义映射关系的输出;在所述界面中接收映射到各个映射关系的输出的输出数据集的元素的标识;基于来自输入数据集的、与映射到输入变量的输入数据集的元素相关联的输入数据,根据变换表达式,从数据处理系统生成输出数据;基于定义与输出数据集的一个或多个标识元素相关联的有效值的一个或多个特性的确认标准,响应于生成的输出数据,确定确认信息;以及基于确定的确认信息,在界面中呈现可视反馈。
在另一方面中,描述一种用于将输入数据集的一个或多个元素映射到输出数据集的一个或多个元素的系统。该系统包括用于存储输入数据集的装置;用于存储输出数据集的装置;以及用于提供用于接收用户输入并呈现数据处理的结果的界面的装置。该接收和呈现包括:在界面中接收在给定的输出和由输入变量表示的一个或多个输入之间的一个或多个映射关系,映射关系中的至少一个包括可在数据处理系统上执行的变换表达式,所述变换表达式基于映射到输入数据集的元素的至少一个输入变量定义映射关系的输出;在所述界面中接收映射到各个映射关系的输出的输出数据集的元素的标识;基于来自输入数据集的与映射到输入变量的输入数据集的元素相关联的输入数据,根据变换表达式来从数据处理系统中生成输出数据;基于定义与输出数据集的一个或多个标识元素相关联的有效值的一个或多个特性的确认标准,响应于生成的输出数据,确定确认信息;以及基于确定的确认信息,在界面中呈现可视反馈。
在另一方面中,通常,一种计算机可读介质存储计算机程序,用于将输入数据集的一个或多个元素映射到输出数据集的一个或多个元素。该计算机程序包括用于使得计算机进行以下的指令:在界面中接收在给定的输出和由输入变量表示的一个或多个输入之间的一个或多个映射关系,映射关系中的至少一个包括可在数据处理系统上执行的变换表达式,所述变换表达式基于映射到输入数据集的元素的至少一个输入变量定义映射关系的输出;在所述界面中接收映射到各个映射关系的输出的输出数据集的元素的标识;基于来自输入数据集的与映射到输入变量的输入数据集的元素相关联的输入数据,根据变换表达式来从数据处理系统中生成输出数据;基于定义与输出数据集的一个或多个标识元素相关联的有效值的一个或多个特征的确认标准,响应于生成的输出数据,确定确认信息;以及基于确定的确认信息,在界面中呈现可视反馈。
上述方面可以包括下述一个或多个优点。
在一些情况中,当输入数据集正被映射到输出数据集时(例如当将数据填充(datafeed)加载到数据仓储中时),输入数据集可以具有大量字段(例如,上千个字段),而输出数据集可以具有更少量的字段(例如,少于一百个字段)。数据管理系统使用映射,该映射提供来自一个或多个输入字段的信息如何映射到给定的输出字段的规范。提供数据管理系统的用户界面,以使得用户能够配置该映射(在“映射处理”期间)。
用户界面包括测试和确认特征,其使得相对无经验的用户能够观看测试值和确认信息,来使得用户能够验证映射的结果与意图是否一致并减少错误。确认特征使得更有经验的用户能够预先将确认规则与输出数据集的元素相关联,该确认规则稍后在映射处理期间应用。例如,一个或多个有经验的用户可以具有关于对于来自各种不同输入数据存储系统中存储的大量输入数据集的数据、要用作数据仓库的输出数据存储系统中存储的输出数据集的需求的知识。对经验的用户来说,将所有输入数据集的字段映射到输出数据集的适当字段是不实际的。用户界面使得不同新手用户能够为每个输入数据集提供映射,同时仍然提供一种方式,供经验用户实施确认标准,来捕捉新手用户可能犯而有经验的用户不会范的潜在错误,或来满足与输出数据集相关联的某些惯例,新手用户不会知道这些惯例。
通过基于由更有经验或技术能力更强的用户提供的规则而将测试盒确认整合到用户界面中,能够较早(在映射处理期间)、而不是稍后(在系统整合处理期间)捕获较没有经验或技术能力较弱的用户带来的潜在错误或不一致。可以通过较早捕获的这些错误或不一致来潜在地实现若干数量级的成本节约。这不仅减少了不同用户组说明情况且确认问题所需的时间,还使得一旦确认了问题即更容易修复该问题。
附图说明
从以下描述、所附权利要求和附图,本发明的其他特征和方面将变得更明显。
图1是用于映射数据集元素的示例系统。
图2是数据管理系统的例子。
图3A是数据处理图的例子。
图3B是变换的例子。
图4是规则输入界面的例子。
图5是变换视图界面和相关元素的例子。
图6是用于变换视图界面的操作的过程的流程图。
图7A-7H是变换视图界面的操作的例子。
图8是变换视图界面的例子。
图9是沿袭图(lineage diagram)的例子。
图10是变换视图界面的例子。
图11是确认规则界面的例子。
具体实施方式
参考图1,用于映射数据集元素并根据映射的数据集元素来处理数据的系统10包括数据源12,其可以包括诸如存储设备或与在线数据流的连接的一个或多个数据源,每个数据源可以以各种存储格式中(例如,数据表、电子表文件、无格式文本文件或主框架使用的原生格式(native format))的任一来存储数据。执行环境14包括数据集映射模块16和数据集处理模块22。执行环境14可以在适当的操作系统(诸如UNIX操作系统)的控制下位于一个或多个通用计算机上。例如,执行环境14可以包括多节点并行计算环境,包括计算机系统的配置,这些计算机系统使用多个中央处理单元(CPU)、无论本地(例如,诸如SMP计算机的多处理器系统)或本地分布(例如,被耦合为簇或MPP的多个处理器)或远程地、还是远程分布地(例如,经由LAN或WAN网络耦合的多个处理器)、或其任何组合。
数据集映射模块16存储用于在输入数据集和输出数据集之间映射数据的映射信息,如以下更详细地描述的。数据集处理模块22从数据源12中存储的输入数据集读取数据,且例如,基于包括要施加到该数据的变换表达式的数据存储系统26中存储的映射信息24,根据存储的映射信息来处理该数据。提供数据源12的存储设备可以相对于执行环境14位于,例如在与运行执行环境14的计算机连接的存储介质(例如,硬盘18)上存储,或可以相对于执行环境14位于远程,例如位于在局域数据网或广域数据网上与运行执行环境14的计算机通信的远程系统(例如,主框架20)上。
数据集映射模块16基于正被映射的数据,(例如,通过显示器上的用户间界面)向用户显示视觉表示。开发环境28也可以访问数据存储系统26,在该开发环境28中,开发者30能够开发程序,该程序在数据存储系统26中存储,由数据处理模块22用来处理并显示该数据。在一些实施方式中,开发环境28是用于开发数据流图的系统,数据流图包括顶点(组件或数据集),顶点由顶点之间的有向链接(表示工作元素的流)连接。例如,在此处通过引用而并入的美国公开No.2007/0011668、题为"Managing Parameters for Graph-BasedApplications"中更详细地描述这种环境。
数据集处理模块22可以处理来自包括不同形式的数据库系统的各种系统的数据。该数据可以被组织为具有各个字段(也称为"属性"或"列")的值(可能包括空值)的记录。当首次从数据源读取数据时,数据集处理模块22通常以有关数据源中的记录的某初始格式信息而开始。(注意,在一些情况下,最初甚至可能不知道数据源的记录结构,而代之以可能在分析数据源之后来确定)。关于记录的初始信息可以包括表示不同值的位的数量、记录内的字段顺序和由位表示的值的类型(例如,串、符号/无符号整数)。当数据集处理模块22从数据源读取记录时,其施加变换表达式来产生中间数据和输出数据。数据集映射模块16能够访问该数据,并在数据集映射模块16的用户界面中向用户显示数据的表示(representation)。
图2示出可以使用系统10实现的用于将一个数据集的元素映射到另一数据集的元素的示例数据管理系统300。在该例子中,系统300包括输入数据存储系统中存储的一个或多个输入数据集310a、310b,其中,个体的输入数据集(例如数据库表格)可以具有可以用作对系统200的输入的多个个体元素。输入数据集310a具有输入312a、312b、312c、312d(例如,数据库表格的字段或列)。另外,数据管理系统300还具有输出数据存储系统(这可以与输入数据存储系统相同)中存储的一个或多个输出数据集320a、320b,其中,个体输出数据集(例如,数据库表格)可以具有可以用作系统300的输出的多个个体元素。输出数据集320a具有输出322a、322b、322c、322d(例如,数据库表格的字段或列)。数据管理系统300具有映射(mapping)340,其指示在输入312和输出322之间的映射关系,且可选地变换与正从输入映射到输出的元素相关联的指定值或特性。数据管理系统300包括数据处理系统(例如,由数据集处理模块22执行的数据流图),用于执行由映射定义的变换和通过用户界面与用户交互,且可以与数据库服务器350或其他计算系统结合地操作。在一些实施方式中,数据管理系统300的数据处理系统使用该映射340来将数据从输入数据集310a导入到输出数据集320a中,且向正从输入数据集310a导入到输出数据集320a中的数据(例如个体记录)施加变换。在一些实施方式中,数据管理系统300的数据处理系统使用该映射340来帮助用户设计将在稍后施加到数据的变换和/或使用不同数据处理系统导入数据。
在这些图中,实线的闭头箭头指示数据的流,而虚线的开头箭头指示图的描述中指定的另一种关联性。
一些输入可以直接映射到一些输出。例如,数据管理系统300将输入312a在不经变换的情况下直接递送到输出322a。输入312a可以对应于称为"姓"的字段,且输出322a可以对应于称为"L名字"的字段,且由于两个字段意图以相同格式存储相同的数据逻辑数据值,因此当将输入数据集310a的记录导入到输出数据集320a时将不需要数据值的变换。一些输入可以映射到输出,且数据管理系统300可以变换与输入相关联的数据。例如,对于通过输入312c由数据管理系统300映射的元素,可以通过进行计算或应用表达式来进行变换,从而改变与该元素相关联的数据值或与该元素相关联的特性(例如,输入数据集310a中的记录的给定字段内的数据值随着那些记录被导入到输出数据集320a而被变换)。该变换可以包括变换数据类型,而保持数据值相同,或可以包括变换数据值来改变特性,诸如测量或资本(capitalization)的单位。一些输入可以映射到输出,且数据管理系统300可以以取决于预定标准而可变的方式变换该输入。例如,与通过输入312d由数据管理系统300映射的元素相关联的一些数据可以具有基于给定的标准而应用的一个变换,且与通过相同输入312d由数据管理系统300映射的元素相关联的其他数据可以具有基于给定的标准而应用的不同变换。用于确定对数据应用哪种变换的标准例如可以由数据管理系统300中的计算逻辑302来确定。例如,可以通过用户在用户界面中输入表达式或定义规则来提供计算逻辑302,如以下更详细地描述的。另外,在这些实施例中,变换可以对来自多于一个输入的数据进行操作,来生成映射到单个输出的数据,诸如来自输入312b和312c的数据用于生成映射到输出322b的数据。例如,输出322b可以对应于其值是对应于输入312b和312c的字线的值的函数的字段。因此,在给定的输出和一个或多个输入之间的映射关系可以包括标识单个输或者指定变换施加于一个或多个所标识的输入。将一个或多个输入映射到输出时使用的变换可以采用数据结构的形式,该数据结构定义要应用的表达式或要进行的计算,其称为变换,可以用于各种数据处理情境下,如下更详细描述的。使用一组变换130a、130b、130c、130d来实现数据管理系统300中的映射340。
变换定义了对一个或多个输入进行的操作,以生成一个或多个可能的输出。在一些实施方式中,初始地将该变换存储为具有预定格式的数据结构,且稍后被编译为可执行的形式。该变换可以用在基于图形的计算的情境下,诸如数据流图,数据流图具有数据处理组件,通过表示数据流的链接元素连接数据处理组件。例如,图3A的简单数据流图130采用两个数据集132、134作为输入(例如,飞行里程(frequent flyer)数据和机票预定数据),在单独的格式组件136、138中格式化每个数据集中的数据,以便它们可以被一起使用,且在结合组件140中结合它们,以产生输出数据集142。变换本身可以通过基于图形的计算,诸如在图130中的计算,来实现,或可以在图像的组件、诸如构成该图130的个体组件136、138和140内实现。
还可以使用称为"业务规则(business rule)"的数据处理构造来实现变换。业务规则可以被表示为一组标准,其可以用于例如将数据从一个格式转换为另一个格式、进行关于数据的确定、或基于一组输入数据来生成新数据。例如,在图3B中,在机票预定系统中的记录102指示乘客的名字104、他今年飞行了多少英里106、他机票的级别108、和他的座位排110。业务规则指示这种乘客应该被归入到登机组1。业务规则通常是人们容易理解的,即“头等舱乘客处于组1中”,但在使用业务规则来操纵数据之前可能需要被翻译为计算机可以理解的东西。可以使用变换112来实现业务规则,变换112从一个或多个数据源例如输入数据集100接收输入记录诸如记录102,并向输出数据集120中插入输出记录例如指示乘客的名字104和他所在的哪个组118的记录114。输入和输出数据集还可以被称为数据流。
为了针对无技术用户简化实现业务规则的变换的创建和操纵,为这种用户提供工具,以便以这些用户熟悉的格式处理一个或多个业务规则的集合,其称为规则集,其告知计算机系统他们想要变换做什么。规则集是产生单个变换的规则的集合,规则可以由一个或多个规则案例(rule case)组成,该一个或多个规则案例取决于该输入计算用于规则的输出的不同值。规则还可以包括其他规则。在规则集中的一些规则可以产生另外或替换的输出的值。规则集可以包含其它规则集,该其它规则集被称为“被包括的”规则集。
图4示出业务规则编辑器200,其是用于指定业务规则的属性的用户界面的例子。业务规则编辑器200可以是用户界面的组件,用于将输入数据集的元素映射到输出数据集的元素且生成在数据管理系统300中使用的对应映射340。业务规则的输入在左侧列出,且业务规则的输出在右侧列出。业务规则编辑器200中的触发列(trigger column)202、204、206、208对应于可用(available)数据值,且行210a-h对应于规则示例,即涉及可用数据值的标准(criteria)的集合。如果给定记录(对于规则案例具有标准的每个触发列)的数据值满足触发标准,则规则案例应用于该给定记录(例如图3B中的102)。如果应用规则案例,则基于一个或多个输出列212来生成输出。所有输入关系被满足的规则案例可以被称为"被触发的"。每个输出列212对应于潜在的输出变量,且在可应用的行210a-h的对应单元(cell)中的值确定该变量的输出(如果有的话)。该单元可以包含被分配给该变量的值,或其可以包含必须被估算以生成输出值的表达式,如以下所述的。可能存在多于一个的输出列,虽然在图4中仅示出一个输出列。
关于编辑业务规则,输出变量具有"缺省值",该缺省值是表达式,包括仅是输入变量的名称的表达式。还可以通过表示更复杂的逻辑的规则来计算输出变量。当用户编辑业务规则时,该用户可以观看输出变量,且通过将输入变量从工具条(sidebar)拉到对应于输出变量的缺省值单元来建立映射。用户还可以直接编辑输出变量的缺省值表达式。另外,当需要更先进的逻辑来计算具体输出时,用户可以创建一个或多个规则来计算该输出。
当编辑业务规则时,用户可以在包含关于输出变量的技术信息的输出变量网格(grid)中分配缺省值。例如,用户可以从示出规则集的主窗体中创建输出的规则。在用于生成映射340的用户界面的一些实施方式中,当用户创建规则时,该用户可以看到缺省值,且当用户分配缺省值时,该对应的规则可以是可用的。
由于由不具有技术能力的用户来创建和操纵业务规则,所以一组用户可能在创建和操纵将如意图地运作的规则的能力上不同。一些用户可能对如何创建和操纵业务规则具有初步或不完整的理解,而其他用户可能在技术上很娴熟,且完全理解创建和操纵业务规则的所有方面。而且,一些用户可能具有业务规则的底层含义的知识,例如其在真实世界的应用,而其他用户可能不具有如何在使用中应用业务规则的任何知识。例如,对收入税所知有限或者完全不知的用户可能不能完全理解用于处理收入税返还的业务规则的目的。用户对业务规则的真实世界的应用的知识可以与用户对业务规则的技术知识无关。例如,具有较高技术知识但具有较低应用知识的用户可以创建业务规则,然后,具有较高应用知识的用户可以检查该业务规则,以确认当业务规则投入使用时该业务规则将实现意图的目的。在该例子中,具有较高技术知识的用户可以被认为是针对业务规则应用的新手用户,而具有较高应用知识的用户可以被认为是针对业务规则应用的有经验的用户。换句话说,技术上娴熟的用户可以观看由具有有限技术知识的用户创建的业务规则,来确定业务规则是否满足技术需求。在这些例子中,技术上娴熟的用户可以被认为是有经验的用户,且具有有限技术知识的用户可以被认为是新手用户。另外,一些系统可以具有由大量用户生成的大量业务规则,这些用户的每个仅生成总规则的小部分。每个规则的功能性将反映其对应创建者-操纵者的熟练程度。
用户界面可以使能在输入和输出数据集的元素之间映射340的生成、诸如在来自输入记录的字段向输出记录中的字段之间的映射。例如,当向数据仓库中加载数据填充时,填充(输入)可以具有数百字段。填充中的数据将用于在占据数据仓库中的五十个字段(输出)。该例子中的映射340提供输入字段如何映射到输出字段的规范。
在一些情况下,个体输入字段将直接映射到个体输出字段。因此,将通过在用户界面中简单地为许多输出分配具体输入字段的值来计算这许多输出。可以用表达式、常数、输入字段的简单组合(例如串链接)、或包括if/then/else逻辑或函数调用的更复杂的逻辑来计算其他输出。可以使用业务规则来计算一些输出。用户界面可以提供适当的编辑器,包括业务规则编辑器200。
在一些实施方式中,数据管理系统300包括用户界面,该用户界面能够允许用户进行更简单的任务、同时还在该用户界面内接收与更复杂的任务相关联的直接反馈。例如,如下更详细描述的,确认(validation)的任务可以经由由更有经验的用户提前准备的确认规范而并入。有助于多个相关任务的单个用户界面允许用户通过操纵或修改变换以便它们提供期望的映射来将输入数据集的元素映射到输出数据集的元素。另外,用户可以在一个位置处看到对变换进行操纵如何影响输入和输出之间的映射。例如,使用用户界面,用户可以捕捉并修复错误,以便这些变换将如意图地工作。
测试数据可以有助于评估一个变换或一组变换是否会如意图地工作。例如,可以使用一组原型(prototypical)输入和期望的输出来提供测试数据。
在一些例子中,用户具有可以用于生成测试数据的真实数据。例如,为了处理用户不具有用来测试的真实数据的情况,该系统可以提供用于一次一个记录地输入测试数据的数据输入表格。用户可以在输入数据集中键入每个字段的值,且这些记录将被添加到测试数据集。
数据管理系统300能够为这些变换提供句法规则。句法规则指示将适当编译和/或执行的变换的结构。如果操作数据管理系统的用户修改任何变换,用户的修改应该符合句法规则。另外,数据管理系统300能够为这些变换的输出提供确认规则。确认规则指示根据期望的格式或输出数据集的其他特性而被接受为有效的输出的类型。如果用户向真实数据或测试数据施加任何变换,变换的输出应该符合确认规则。确认规则和句法规则可以被提供作为规则集,如上所述,或被提供作为可以施加于变换的输出的其他形式的可执行逻辑。
在一些例子中,用户可以在单个用户界面处访问一个或多个变换。该用户界面向用户提供与映射340相关联的一些或所有变换的视图(view)。另外,单个界面还可以在修改或执行任何变换时自动对变换和测试数据应用句法规则和确认规则。
因此,从该界面,用户可以观看该映射如何将输入的集体(collection)相关于输出的集体,包括如何评估和变换这些输入。
图5示出了映射观看界面500的例子,其可以由不一定具有显著的技术专业知识的新手用户402来操纵。映射观看界面500呈现每个指定在一个或多个输入和给定的输出之间的映射关系的行。界面500包括变换502的列,该变换以可以输入、观看和编辑的变换表达式的形式显示。变换表达式参考映射到输入数据集的字段的输入变量。在输入正被直接映射到输出、而没有任何变换的情况下,变换列可以简单地标识该输入,而不包括任何变换表达式。在一些实施方式中,变换502可以将常数值直接映射到输出,且得到的输出将具有不基于任何输入变量而改变的值。
该变换502可以自动地从该界面中执行、以及修改和使用这些修改重新执行。新手用户402可能不具有专业知识来保证他生成或修改的变换502的输出的有效性,但映射观看界面500向新手用户402提供另外的信息,该另外信息并入了更有经验的用户的专业知识,且映射观看界面500提供另外的安全措施来防止新手用户402犯潜在的错误。
可以通过包括一个或多个组件数据流图130来实现变换。数据流图130包含执行变换的功能性的可执行代码。映射观看界面500可以提取该代码,且直接执行该代码。
当新手用户402修改变换502时,该映射观看界面500可以向修改后的变换应用句法规则510,来评估这些修改是否可接受。句法规则510为变换指定有效结构。不适当地构造的变换可能无法适当地执行。如果新手用户402以使得变换具有无效结构的方式修改变换,变换观看界面将使用句法规则来标识该无效性,且向用户指示该问题。可以由具有对变换结构和执行的技术专业知识的有经验的用户404b来定义句法规则510,从而新手用户402将受益于有经验的用户对变换的更好的理解。
在使用中,可能存在少量有经验的用户404a、404b、404c,但大量新手用户402,他们都使用映射观看界面500的实例来操纵对类似的数据集操作的变换。有经验的用户404a、404b、404c可以定义由许多可能的新手用户在许多可能的操作情形下使用的句法规则和确认规则。以此方式,所有许多可能的新手用户手边拥有了有经验的用户的知识和专业水平。
还参考图5,每个变换502与输出名508相关联。相比于由数据管理系统本身使用的变量名或另一标识符,可以选取输出名508来表示变换后的输出的“真实世界”功能。输出名508对应于变换503向其提供数据的输出数据集320中的字段。例如,如果变换502处理注定用于行旅行者的数据库的数据,则输出名508可以表示与航线、航班、乘客身份或另一真实世界概念有关的数据库中的字段。
每个变换502还可以与测试值504相关联。用户可以选择对其执行变换的测试数据512,以便对测试数据格式化以用作变换502的输入数据集310。对测试数据512中的给定记录(例如初始记录)执行的变换的结果被示出为测试值504。可以由新手用户402或由具有专业知识来定义各种测试情形的有经验的用户404a、404b、404c生成测试数据512,以便新手用户402可以仅编辑变换502并观看该结果。
每个变换还可以与确认506相关联。当新手用户402使用测试数据512执行变换时,映射观看界面500可以应用确认规则514,来确定得到的测试值504是否是有效的。变换502的输出可以具有(例如,基于输出数据集320的特性)针对其格式或内容的约束,且确认规则514指定输出的什么样的格式或内容是有效的。例如,变换可能提供应该落入特定范围内的数字形式的输出,或变换可能提供应该具有特定长度、根据字典正确拼写的或具有其他特性的字(word)的形式的输出。确认规则514可以指定输出必须是一组预定可能值之一。确认规则514可以指定输出应该不对应于空白(blank)或空(NULL)的值,该空白或空的值可能由变换导致,该变换将输入连接到产生空白或空的值的输出,或可能由输出未被映射到任何输入而导致。确认规则514可以统一地应用到映射的输出,来保证在不同输出之间的约束得到满足。例如,两个输出可以分别具有有效的值,但其总和可能不满足给定的约束,或一个输出值是否有效的确定可能取决于另一输出的值(例如,“父母产假(parental leave)”字段的有效值可以取决于“性别”字段具有男性还是女性的值)。在一些实施方式中,确认规则514可以接合次要或外部的信息源而操作。例如,变换502可以用于将数据从第一格式转换为第二格式。确认规则可以引用诸如表格的数据结构,该表格指示以第一格式表示的数据的有效值、且还指示以第二格式表示的数据的有效值。
如果测试值504落在由确认规则514指定的格式或内容约束之外,则该确认506将指示关于测试值504存在问题,且指示因此可能存在变换502的潜在问题。有经验的用户404a、404b、404c可以利用有经验的用户对如何分析给定的数据集且确定什么构成了该数据集的有效数据的知识,定义确定规则514。有经验的用户还可以利用技术编程和数据管理知识,来将那些确认约束编制为确认规则514,这些确认规则514可以被存储为可执行代码,且应用于变换的输出。因此,操作映射观看界面500的新手用户402不一定需要仔细检查由测试数据512得到的测试值504,而是可以查看确认506来看是否可能存在应该给予进一步关注的问题。
图6示出由系统300用来使得用户能够使用映射观看界面500观看和操纵映射和其相关联的变换的示例过程600的流程图。该过程获取602测试数据,测试数据包括提供对应于映射到给定变换的输入的输入数据集的元素(例如字段)的输入数据值的一个或多个记录。然后,该过程标识604对应于映射到给定变换的输出的输出数据集的元素的数据目的地(例如字段)。接下来,该过程获取606映射的最后版本,该映射的最后版本包括变换的最后版本。在“记录测试模式”中,该过程向输入数据集的单个测试记录应用确认规则。在“数据集测试模式”中,该过程向输入数据集的多个测试记录(在一些情况下,在输入数据集指定所有记录)应用确认规则。
该过程确定608用户是否输入了新输入,其表示对一个或多个变换的修改。如果用户没有输入新输入,该过程向测试数据应用610变换的当前版本。然后,该过程向作为这些变换的输出接收的得到的测试值应用612确认规则。该过程显示614修改后的变换,且还显示616来源于修改后的变换的测试值。另外,该过程基于应用确认规则的结果来显示618确认信息,以便用户可以评估这些测试值是否有效。如果该确认信息与其输出不满足确认标准的具体变换相关联,则确认信息可以在可视地与该变换相关联(例如,用在确认列的对应行中的图标和/或说明文本)。在一些情况下,该确认信息可以与多个变换的无效输出或多个变换之间的无效关系相关联,在该情况下,该确认信息不一定与任何具体变换相关联。该过程还显示620由这些变换使用的目的地的输出名。然后,该过程返回到确定608用户是否输入了任何修改这些变换的新输入。
如果用户输入了新输入,该新输入将导致得到了一个或多个修改后的变换,则该过程从基于新输入而重新编译这些变换的变换编译器接收622修改后的变换,且该过程还检查624修改后的变换的句法。如果根据句法规则,该句法无效,则该过程警告625用户,以便该用户可以以新输入的形式校正该句法。如果该句法有效,该过程接受626该修改后的变换,且然后继续上述步骤,以向测试数据应用610这些变换开始。在记录测试模式中,重新编译和向测试记录应用修改后的变换可以几乎实时地发生(例如少于一秒),以便随着变换正被编辑,用户体验基于该句法和确认规则的实况反馈(live feedback)。在数据集测试模式中,重新编译和向测试记录应用修改后的变换可以响应于用户请求而发起。
图7A-7H示出与映射观看界面500的各种用户交互的例子。该界面包括变换表达式702(变换的文本表示)、测试值704、确认712和输出708。
参考图7A,用户修改变换表达式702。如果该修改产生畸形的(malformed)变换表达式,该界面根据供应的句法规则,利用感叹号710指示该畸形变换表达式。
参考图7B,响应于用户提供具有校正后的句法的修改后的变换表达式702而提供测试值704。
参考图7C,用户输入变换表达式702,基于由该表达式变换的输入数据来计算输出708的值。
参考图7D,用户输入变换表达式702a,基于由若干变换表达式702b、702c之一来计算输出708的值。
参考图7E,用户输入依赖于另一变换表达式702b的变换表达式702a,来计算其输出708的值。
参考图7F,用户修改变换表达式702b,另一变换表达式702a依赖于该变换表达式702b。第一变换表达式的输出708据此更新。
参考图7G,确认通知712指示变换表达式702的输出的任何问题,即使该变换表达式在句法上是正确的。
参考图7H,用户观看测试数据708。确认通知712指示向测试数据应用变换表达式702的任何问题。
图8示出表示映射观看界面500的一个实施方式的示例映射观看界面800,用于管理计算税表的值的变换表达式。映射观看界面800具有许多行802a、802b、802c,每个包括输出字段804(例如,在该例子中的税表的行)的名字、进行以计算对应于输出字段804的输出值的该变换表达式806、当被应用于测试数据(例如,图5所示的测试数据512)时变换表达式806的计算的值808的形式的测试值。如果计算的值808之一触发确认规则之一(例如图5所示的确认规则514),则该映射观看界面800在计算的值附近显示确认指示符810,来指示已经触发确认规则,且用户可以调查计算的值来确定其是否无效和/或相关联的变换表达式806是否需要修改。在一些实施方式中,确认指示符810指示在计算的值808和预期值之间的差。例如,可能已经在先前的时间点应用了变换表达式806,生成输了出值。当变换表达式806应用于相同的输入数据时,可以预期计算的值808应与先前生成的输出值相同。在一些实施方式中,如果计算的值808之一触发句法规则之一(例如图5所示的句法规则510),则映射观看界面800显示句法错误指示符(未示出)。
映射观看界面500可以用于在由一个或多个数据流图进行的操作序列中在多个时间点中的任一时间点处观看变换表达式、输出字段和计算的值。映射观看界面500可以生成沿袭(lineage)图,其可以用于显示关于根据一个或多个变换表达式而变换了的数据的不同字段的值的信息。有时,数据库用户可能想要调查如何从不同数据源得到特定数据。例如,数据库用户可能想要知道如何生成数据集或数据对象,或从哪个源导入数据集或数据对象。跟踪数据集回溯到源(该数据集是从该源得到的)被称为数据沿袭跟踪(或“上游数据沿袭跟踪”)。有时,数据库用户可能想要调查特定数据集如何被使用(称为“下游数据沿袭跟踪”或“影响分析”),例如,哪个应用读取了给定的数据集。数据库用户还可能有兴趣知道一数据集如何与其他数据集相关。例如,用户可能想要知道是否修改数据集,将影响什么表格。
图9示出沿袭图900,表示包括节点904a、904b、904c和链接906,节点904a、904b、904c表示(例如,通过数据流图中的不同组件)应用的变换表达式,和链接906将表示上游和下游依赖关系的节点从上游输入测试数据集908连接到下游输出数据集912。来自输入数据集908的测试数据可以被提供给节点904a、904b,节点904a、904b表示用于处理测试数据的变换表达式的应用,且这些结果被传送给节点904c,节点904c随着测试数据继续由进一步在沿袭图900的节点序列中的节点变换,而类似地应用变换表达式。用户可以基选择任一节点,且观看与该节点相关联的输出字段和变换表达式,以及基于向已经由节点表示的变换表达式根据链接806表示的依赖关系而处理了的数据应用变换表达式而观看输出字段的计算值。
随着一个或多个数据流图正处理输入测试数据集908中的数据,可以存储生成沿袭图所需的该信息。沿袭图中的每个节点可以与源于变换表达式的应用的计算的值相关联。在一些情况下,一个或多个节点904d、904e、904f与计算的值相关联,该计算的值触发与该节点相关联的一个或多个确认规则。在这些情况下,沿袭图900在节点904d、904e、904f上显示确认指示符910a、910b、910c,其中,对该节点904d、904e、904f,已经触发了确认规则。用户可以使用映射观看界面500来观看输出字段、变换表达式和那些节点中的任一节点的计算的值,以确定是否有问题,例如变换表达式是否产生无效数据。在一些例子中,沿袭图900还显示节点之一何时触发了句法规则(例如,图5的句法规则之一)的指示符。
用户还可以使用沿袭图900的视图,来确定序列中的若干节点是否触发了确认规则,并确定确认问题的初始根源诸如无效数据。在该例子中,所有三个节点904d、904e、904f均触发了确认规则,如指示符910a、910b、910c指示的。可以检查节点904d、904e、904f和从节点904d到节点904e和从节点904e到节点904f的对应沿袭关系,以便找到潜在的确认问题。有可能节点904d中的变换表达式生成了无效数据,然后,该无效数据传播到节点904e和904f,还触发那些节点中的类似确认规则。给出了该可能性,该用户首先可以观看第一节点904d的变换表达式和计算值,来确定是否这是所有三个节点的问题的根源。
图10示出了可以用于一次观看许多输出字段和计算值的测试结果界面1000。例如,在数据集测试模式中,测试结果界面1000可以被用于显示向测试数据应用变换表达式的结果。测试结果界面1000显示表示向测试数据的多个记录1004a、1004b、1004c(作为多个行)应用其相关联的变换表达式的多个输出字段1002a、1002b、1002c(在列标题中的)。用户可以观看测试结果界面1000,来看对测试数据的许多记录应用许多变换表达式的效果,包括测试数据中的任一个是否触发了任何确认规则。测试结果界面1000可以显示确认指示符1006a,其指示哪个数据段(在具体记录中的计算值)触发了确认规则,且可能是无效的。测试结果界面1000还可以在列(或行)标题中显示确认指示符1006b,来向用户指示对应列(或行)中的至少一个数据段触发了确认规则。该显示形式可以当由测试结果界面1000呈现的数据的视图很大时、帮助用户找出个体数据段的确认指示符1006a。在一些实施方式中,测试结果界面1000还呈现关于所呈现的数据的统计数据1008(例如,以直方图的形式),诸如多少数据触发了确认规则以及触发了多少不同规则。在一些例子中,以规律的时间间隔、诸如一小时或一天、响应于对测试数据的变换表达式的不同应用,计算该统计数据1008,且在其他例子中,通过在观看数据时应用变换表达式来实时计算该统计数据。例如,有经验的用户(例如图5的有经验用户404b)可能基于天来使用测试结果界面1000,来看在一天中是否由其他用户进行的改变来触发了任何确认规则。
图11示出了确认规则界面1100,其允许用户观看并修改一组确认规则1104a、1104b、1104c的触发条件1102a、1102b、1102c。在一些实施方式中,确认规则还具有相关的错误代码1106,指示确认规则表示的错误类型、例如必要信息的遗漏或输出字段表示的信息之间的不一致。在一些实施方式中,确认规则界面1100允许用户访问关于任何确认规则使用的给定输入的信息1110,以便该用户不需要访问不同界面来获得该信息。
确认规则还可以当用户搜寻关于确认规则触发的具体实例的更多信息时、向用户显示相关的定制(custom)错误消息1108。例如,用户可能点击确认指示符(例如,图9中的确认指示符910a),然后,用户界面将显示针对该确认规则的适当的定制错误消息1108,或用户界面可能显示与由一组数据触发的确认规则相关联的所有定制错误消息的列表。在一些例子中,有经验的用户(例如,图5的有经验的用户404c)定义错误消息,来向可能不熟悉确认规则的、操作用户界面的另一用户提供人类可读的信息。
可以使用在计算机上执行的软件来实现上述映射方法。例如,软件形成在一个或多个已编程或可编程计算机系统(其可以是各种架构,诸如分布式、客户端/服务器式、或网格式)上执行的一个或多个计算机程序中的过程,该一个或多个已编程或可编程计算机系统每个包括至少一个处理器、至少一个数据存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备或端口和至少一个输出设备或端口。软件可以形成例如提供与数据流图的设计和配置相关的其他服务的更大的程序的一个或多个模块。图中的节点(称为“组件”)和元件(称为“数据流”)可以被实现为在计算机可读介质中存储的数据结构或符合在数据储存库中储存的数据模型的其他组织的数据。
可以在诸如可由通用或专用可编程计算机读取的CD-ROM的存储介质上提供软件,或通过网络通信介质发送(编码于传播的信号中)软件到执行其的计算机。所有功能可以在专用计算机或使用专用硬件、诸如协处理器上进行。软件可以按分布式方式实现,其中由软件指定的计算的不同部分被不同计算机实施。每个这种计算机程序优选地被存储在或被下载到可由通用或专用可编程计算机读取的存储介质或设备(例如,固态存储器或介质、或磁或光介质),用于当存储介质或设备被计算机系统读取时配置和操作该计算机以进行在此描述的过程。本发明的系统还可以被考虑实现为用计算机程序配置的计算机可读存储介质,其中如此配置的存储介质使得计算机系统按规定且预定的方式操作以进行在此描述的功能。
已经描述了本发明的大量实施例。但是,将理解,可以在不脱离本发明的精神和范围的情况下进行各种修改。例如,上述步骤的一些可以是无关顺序的,且因此可以按不同于上述的顺序的顺序来进行。
要理解,上述描述意图例示而非限制本发明的范围,本发明的范围由所附权利要求的范围限定。例如,上述大量功能步骤可以按不同的顺序进行,而不实质影响整个处理。其他实施例也在以下权利要求的范围内。

Claims (80)

1.一种用于将输入数据集的一个或多个元素映射到输出数据集的一个或多个元素的方法,所述方法包括:
在界面中接收在给定的输出和由输入变量表示的一个或多个输入之间的一个或多个映射关系,映射关系中的至少一个包括可在数据处理系统上执行的变换表达式,所述变换表达式基于映射到输入数据集的元素的至少一个输入变量定义映射关系的输出;
在所述界面中接收映射到各个映射关系的输出的输出数据集的元素的标识;
基于来自输入数据集的、与映射到输入变量的输入数据集的元素相关联的输入数据,根据变换表达式,从数据处理系统中生成输出数据;
基于确认标准,响应于生成的输出数据,确定确认信息,所述确认标准定义与输出数据集的一个或多个标识元素相关联的有效值的一个或多个特性;以及
基于确定的确认信息,在界面中向第一用户呈现可视反馈,
其中,确定确认信息包括检索所存储的确认标准的规范,已由第二用户定义所述确认标准。
2.根据权利要求1的方法,还包括根据映射关系,将来自输入数据集的输入数据导入到输出数据集中。
3.根据权利要求2的方法,其中,导入该输入数据包括向输入数据集的输入记录的各个字段中的输入值应用变换表达式,且在输出数据集的输出记录的各个字段中存储输出值,其中,所述输入记录的至少一些字段对应于映射到输入变量的、输入数据集的元素,且输出记录的至少一些字段对应于映射到各个映射关系的输出的、输出数据集的元素。
4.根据权利要求3的方法,其中,向输入数据集的输入记录的各个字段中的输入值应用变换表达式、且在输出数据集的输出记录的各个字段中存储输出值包括:执行数据流图,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入记录的数据流的输入数据集的节点和表示接收输出记录的数据流的输出数据集的节点。
5.根据权利要求1的方法,还包括存储用于指定所述映射关系的映射。
6.根据权利要求1的方法,其中,由数据处理系统提供所述界面,且从所述第二用户接收所述确认标准的规范。
7.根据权利要求1的方法,还包括在界面中呈现表示生成的输出数据的值。
8.根据权利要求1的方法,其中,确定确认信息包括:基于与映射到包括变换表达式的变换映射关系的输出的输出数据集的所标识元素相关联的确认标准,评价关于每个变换映射关系所生成的输出数据。
9.根据权利要求8的方法,其中,所述映射关系包括多个包括变换表达式的变换映射关系。
10.根据权利要求8的方法,其中,所述确认标准包括第一确认标准和第二确认标准,所述第一确认标准与输出数据集的第一所标识元素相关联、用于定义与第一所标识元素相关联的有效值的一个或多个特性,且所述第二确认标准与输出数据集的第二所标识元素相关联、用于定义与第二所标识元素相关联的有效值的一个或多个特性。
11.根据权利要求10的方法,其中,响应于所生成的、包括对应于第一所标识元素的第一字段和对应于第二所标识元素的第二字段的输出记录来确定确认信息。
12.根据权利要求11的方法,其中,所述第一确认标准依赖于在输出记录的第二字段中的值。
13.根据权利要求11的方法,其中,所述确认信息依赖于在输出记录的第一字段中的值和在输出记录的第二字段中的值。
14.根据权利要求1的方法,还包括确定指示变换表达式的有效结构的句法信息。
15.根据权利要求14的方法,还包括基于所确定的句法信息,在界面中呈现界面可视反馈。
16.根据权利要求1的方法,还包括接受修改后变换表达式,该修改后变换表达式基于所接收的用户对变换表达式的修改。
17.根据权利要求16的方法,还包括基于来自输入数据集的输入数据,根据修改后变换表达式,从数据处理系统生成修改后输出数据。
18.根据权利要求17的方法,还包括响应于所生成的修改后输出数据,确定修改后确认信息,且基于修改后确认信息在界面中呈现可视反馈。
19.根据权利要求18的方法,其中,生成修改后输出数据并基于修改后确认信息呈现可视反馈发生在正修改变换表达式时。
20.根据权利要求18的方法,其中,生成修改后输出数据并基于修改后确认信息呈现可视反馈在已经修改了变换表达式之后响应于用户请求而发生。
21.根据权利要求1的方法,其中,根据表示到应用变换表达式的数据流图的组件的数据流的链接,接收来自输入数据集的输入数据,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出数据的数据流的输出数据集的节点。
22.根据权利要求1的方法,其中,根据表示来自应用变换表达式的数据流图的组件的数据流的链接,向输出数据集提供在输出数据集中存储的所生成输出数据,所述数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出数据的数据流的输出数据集的节点。
23.根据权利要求1的方法,其中,响应于对应用第一映射关系的数据流图的组件的选择,接收至少第一映射关系,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出记录的数据流的输出数据集的节点。
24.根据权利要求1的方法,其中,所述可视反馈包括表示在界面上显示的沿袭图的多个节点之一的确认信息的指示符,所述节点表示包括与输出数据集的一个或多个所标识元素相关联的至少一个变换后值的变换后值。
25.根据权利要求24的方法,其中,所述可视反馈包括多个指示符,每个指示符与界面上显示的沿袭图的多个节点之中的节点相关联。
26.根据权利要求25的方法,其中,由如下链接连接与所述指示符相关联的节点中的至少一些节点,所述链接表示节点所表示的变换后值之间的依赖关系。
27.根据权利要求1的方法,其中,所述可视反馈包括多个指示符,每个指示符与界面上显示的多个输出元素之中的输出元素相关联,该多个输出元素包括表示输出数据集的一个或多个所标识元素的至少一个输出元素。
28.根据权利要求27的方法,其中,界面上显示的多个输出元素对应于表示将变换表达式应用于输入数据的记录的结果的字段。
29.根据权利要求28的方法,其中,至少一个指示符指示对于行字段值的确认信息,该行表示将变换表达式应用于输入数据的单个记录得到的输出值。
30.根据权利要求28的方法,其中,至少一个指示符指示对于列字段值的确认信息,该列表示将单个变换表达式多次应用于输入数据的各个记录。
31.根据权利要求1的方法,其中,所述可视反馈包括基于确认信息计算的统计数据,所述统计数据包括表示将确认标准应用于输入数据的多个记录的结果的数据。
32.根据权利要求31的方法,其中,以规律的时间间隔计算所述统计数据。
33.根据权利要求1的方法,其中,所述可视反馈包括与确认标准相关联的定制错误消息,所述定制错误消息指示关于将确认标准应用于输入数据的记录的具体实例的结果的信息。
34.根据权利要求1的方法,还包括在界面中接收被定义为与输入变量无关的至少一个常量的输出。
35.根据权利要求1的方法,还包括接收表示变换表达式的结果的期望值,以及其中确定确认信息包括将该期望值与关于包括变换表达式的每个变换映射关系生成的输出数据相比较。
36.根据权利要求1的方法,其中,所述确认标准包括一组确认规则,每个确认规则定义与输出数据集的一个或多个所标识元素相关联的有效值的一个或多个特性。
37.根据权利要求36的方法,其中,所述确认规则指示根据输出数据集的期望格式而被接受为有效的输出数据的类型。
38.根据权利要求1的方法,其中,所述确认标准的至少一些指定对于输出数据集的元素的格式化的约束。
39.根据权利要求1的方法,其中,所述确认标准的至少一些基于输出数据集的多个元素之间的依赖关系来指定有效值的特性。
40.根据权利要求1的方法,其中,所述确认标准的至少一些参考数据结构,该数据结构指示以多种格式表示的数据的有效值,所述多种格式对应于输出数据集的元素的各个格式。
41.一种用于将输入数据集的一个或多个元素映射到输出数据集的一个或多个元素的系统,所述系统包括:
用于在界面中接收在给定的输出和由输入变量表示的一个或多个输入之间的一个或多个映射关系的装置,映射关系中的至少一个包括可在数据处理系统上执行的变换表达式,所述变换表达式基于映射到输入数据集的元素的至少一个输入变量定义映射关系的输出;
用于在所述界面中接收映射到各个映射关系的输出的输出数据集的元素的标识的装置;
用于基于来自输入数据集的、与映射到输入变量的输入数据集的元素相关联的输入数据,根据变换表达式,从数据处理系统生成输出数据的装置;
用于基于确认标准、响应于生成的输出数据确定确认信息的装置,所述确认标准定义与输出数据集的一个或多个标识元素相关联的有效值的一个或多个特性;以及
用于基于确定的确认信息在界面中向第一用户呈现可视反馈,
其中,确定确认信息包括检索所存储的确认标准的规范,已由第二用户定义所述确认标准。
42.根据权利要求41的系统,还包括根据映射关系,将来自输入数据集的输入数据导入到输出数据集中。
43.根据权利要求42的系统,其中,导入该输入数据包括向输入数据集的输入记录的各个字段中的输入值应用变换表达式,且在输出数据集的输出记录的各个字段中存储输出值,其中,所述输入记录的至少一些字段对应于映射到输入变量的、输入数据集的元素,且输出记录的至少一些字段对应于映射到各个映射关系的输出的、输出数据集的元素。
44.根据权利要求43的系统,其中,向输入数据集的输入记录的各个字段中的输入值应用变换表达式、且在输出数据集的输出记录的各个字段中存储输出值包括:执行数据流图,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入记录的数据流的输入数据集的节点和表示接收输出记录的数据流的输出数据集的节点。
45.根据权利要求41的系统,还包括存储用于指定所述映射关系的映射。
46.根据权利要求41的系统,其中,由数据处理系统提供所述界面,且从所述第二用户接收所述确认标准的规范。
47.根据权利要求41的系统,还包括在界面中呈现表示生成的输出数据的值。
48.根据权利要求41的系统,其中,确定确认信息包括:基于与映射到包括变换表达式的变换映射关系的输出的输出数据集的所标识元素相关联的确认标准,评价关于每个变换映射关系所生成的输出数据。
49.根据权利要求48的系统,其中,所述映射关系包括多个包括变换表达式的变换映射关系。
50.根据权利要求48的系统,其中,所述确认标准包括第一确认标准和第二确认标准,所述第一确认标准与输出数据集的第一所标识元素相关联、用于定义与第一所标识元素相关联的有效值的一个或多个特性,且所述第二确认标准与输出数据集的第二所标识元素相关联、用于定义与第二所标识元素相关联的有效值的一个或多个特性。
51.根据权利要求50的系统,其中,响应于所生成的、包括对应于第一所标识元素的第一字段和对应于第二所标识元素的第二字段的输出记录来确定确认信息。
52.根据权利要求51的系统,其中,所述第一确认标准依赖于在输出记录的第二字段中的值。
53.根据权利要求51的系统,其中,所述确认信息依赖于在输出记录的第一字段中的值和在输出记录的第二字段中的值。
54.根据权利要求41的系统,还包括确定指示变换表达式的有效结构的句法信息。
55.根据权利要求54的系统,还包括基于所确定的句法信息,在界面中呈现界面可视反馈。
56.根据权利要求41的系统,还包括接受修改后变换表达式,该修改后变换表达式基于所接收的用户对变换表达式的修改。
57.根据权利要求56的系统,还包括基于来自输入数据集的输入数据,根据修改后变换表达式,从数据处理系统生成修改后输出数据。
58.根据权利要求57的系统,还包括响应于所生成的修改后输出数据,确定修改后确认信息,且基于修改后确认信息在界面中呈现可视反馈。
59.根据权利要求58的系统,其中,生成修改后输出数据并基于修改后确认信息呈现可视反馈发生在正修改变换表达式时。
60.根据权利要求58的系统,其中,生成修改后输出数据并基于修改后确认信息呈现可视反馈在已经修改了变换表达式之后响应于用户请求而发生。
61.根据权利要求41的系统,其中,根据表示到应用变换表达式的数据流图的组件的数据流的链接,接收来自输入数据集的输入数据,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出数据的数据流的输出数据集的节点。
62.根据权利要求41的系统,其中,根据表示来自应用变换表达式的数据流图的组件的数据流的链接,向输出数据集提供在输出数据集中存储的所生成输出数据,所述数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出数据的数据流的输出数据集的节点。
63.根据权利要求41的系统,其中,响应于对应用第一映射关系的数据流图的组件的选择,接收至少第一映射关系,该数据流图包括表示数据处理组件的节点、表示在数据处理组件之间的数据流的链接、表示提供输入数据的数据流的输入数据集的节点和表示接收输出记录的数据流的输出数据集的节点。
64.根据权利要求41的系统,其中,所述可视反馈包括表示在界面上显示的沿袭图的多个节点之一的确认信息的指示符,所述节点表示包括与输出数据集的一个或多个所标识元素相关联的至少一个变换后值的变换后值。
65.根据权利要求64的系统,其中,所述可视反馈包括多个指示符,每个指示符与界面上显示的沿袭图的多个节点之中的节点相关联。
66.根据权利要求65的系统,其中,由如下链接连接与所述指示符相关联的节点中的至少一些节点,所述链接表示节点所表示的变换后值之间的依赖关系。
67.根据权利要求41的系统,其中,所述可视反馈包括多个指示符,每个指示符与界面上显示的多个输出元素之中的输出元素相关联,该多个输出元素包括表示输出数据集的一个或多个所标识元素的至少一个输出元素。
68.根据权利要求67的系统,其中,界面上显示的多个输出元素对应于表示将变换表达式应用于输入数据的记录的结果的字段。
69.根据权利要求68的系统,其中,至少一个指示符指示对于行字段值的确认信息,该行表示将变换表达式应用于输入数据的单个记录得到的输出值。
70.根据权利要求69的系统,其中,至少一个指示符指示对于列字段值的确认信息,该列表示将单个变换表达式多次应用于输入数据的各个记录。
71.根据权利要求41的系统,其中,所述可视反馈包括基于确认信息计算的统计数据,所述统计数据包括表示将确认标准应用于输入数据的多个记录的结果的数据。
72.根据权利要求71的系统,其中,以规律的时间间隔计算所述统计数据。
73.根据权利要求41的系统,其中,所述可视反馈包括与确认标准相关联的定制错误消息,所述定制错误消息指示关于将确认标准应用于输入数据的记录的具体实例的结果的信息。
74.根据权利要求41的系统,还包括在界面中接收被定义为与输入变量无关的至少一个常量的输出。
75.根据权利要求41的系统,还包括接收表示变换表达式的结果的期望值,以及其中确定确认信息包括将该期望值与关于包括变换表达式的每个变换映射关系生成的输出数据相比较。
76.根据权利要求41的系统,其中所述确认标准包括一组确认规则,每个确认规则定义与输出数据集的一个或多个所标识元素相关联的有效值的一个或多个特性。
77.根据权利要求76的系统,其中,所述确认规则指示根据输出数据集的期望格式而被接受为有效的输出数据的类型。
78.根据权利要求41的系统,其中,所述确认标准的至少一些指定对于输出数据集的元素的格式化的约束。
79.根据权利要求41的系统,其中,所述确认标准的至少一些基于输出数据集的多个元素之间的依赖关系来指定有效值的特性。
80.根据权利要求41的系统,其中,所述确认标准的至少一些参考数据结构,该数据结构指示以多种格式表示的数据的有效值,所述多种格式对应于输出数据集的元素的各个格式。
CN201080051923.XA 2009-09-16 2010-09-16 映射数据集元素 Active CN102656554B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910769882.0A CN110516209A (zh) 2009-09-16 2010-09-16 在界面中呈现可视反馈的方法、系统和计算机可读介质

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US24313209P 2009-09-16 2009-09-16
US61/243,132 2009-09-16
PCT/US2010/049142 WO2011035039A1 (en) 2009-09-16 2010-09-16 Mapping dataset elements

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910769882.0A Division CN110516209A (zh) 2009-09-16 2010-09-16 在界面中呈现可视反馈的方法、系统和计算机可读介质

Publications (2)

Publication Number Publication Date
CN102656554A CN102656554A (zh) 2012-09-05
CN102656554B true CN102656554B (zh) 2019-09-10

Family

ID=43731502

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910769882.0A Pending CN110516209A (zh) 2009-09-16 2010-09-16 在界面中呈现可视反馈的方法、系统和计算机可读介质
CN201080051923.XA Active CN102656554B (zh) 2009-09-16 2010-09-16 映射数据集元素

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910769882.0A Pending CN110516209A (zh) 2009-09-16 2010-09-16 在界面中呈现可视反馈的方法、系统和计算机可读介质

Country Status (8)

Country Link
US (2) US8825695B2 (zh)
EP (1) EP2478433A4 (zh)
JP (3) JP6121163B2 (zh)
KR (4) KR101688555B1 (zh)
CN (2) CN110516209A (zh)
AU (2) AU2010295547B2 (zh)
CA (1) CA2771899C (zh)
WO (1) WO2011035039A1 (zh)

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102982065B (zh) 2003-09-15 2016-09-21 起元科技有限公司 数据处理方法、数据处理装置及计算机可读存储介质
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
KR20150042866A (ko) 2008-12-02 2015-04-21 아브 이니티오 테크놀로지 엘엘시 데이터 관리 시스템 내의 데이터 집합의 맵핑 인스턴스
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
KR101688555B1 (ko) 2009-09-16 2016-12-21 아브 이니티오 테크놀로지 엘엘시 데이터세트 요소의 매핑
US8296694B1 (en) * 2009-12-30 2012-10-23 Cadence Design Systems, Inc. System and method for automated synthesis of circuit wrappers
WO2012061109A1 (en) 2010-10-25 2012-05-10 Ab Initio Technology Llc Managing data set objects in a dataflow graph that represents a computer program
US9542662B2 (en) * 2010-12-30 2017-01-10 Sap Se Lineage information for streaming event data and event lineage graph structures for visualization
WO2012097278A1 (en) 2011-01-14 2012-07-19 Ab Initio Technology Llc Managing changes to collections of data
JP6066927B2 (ja) 2011-01-28 2017-01-25 アビニシオ テクノロジー エルエルシー データパターン情報の生成
CN102722412A (zh) 2011-03-31 2012-10-10 国际商业机器公司 组合计算装置和方法
US8745034B1 (en) 2011-05-04 2014-06-03 Google Inc. Selectively retrieving search results in accordance with predefined sort criteria
US8930330B1 (en) * 2011-06-27 2015-01-06 Amazon Technologies, Inc. Validation of log formats
JP5613118B2 (ja) * 2011-07-22 2014-10-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 変換規則生成支援装置、方法、およびプログラム
CN102902685B (zh) * 2011-07-27 2016-04-20 阿里巴巴集团控股有限公司 基于数据库的工具系统的测试方法及装置
US8763093B2 (en) * 2011-09-12 2014-06-24 Microsoft Corporation Access control management
US10546057B2 (en) * 2011-10-28 2020-01-28 Microsoft Technology Licensing, Llc Spreadsheet program-based data classification for source target mapping
US9064013B1 (en) 2011-11-30 2015-06-23 Google Inc. Application of resource limits to request processing
US9235607B1 (en) * 2012-03-29 2016-01-12 Google Inc. Specifying a predetermined degree of inconsistency for test data
US20130268855A1 (en) * 2012-04-10 2013-10-10 John O'Byrne Examining an execution of a business process
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9659042B2 (en) * 2012-06-12 2017-05-23 Accenture Global Services Limited Data lineage tracking
CN103678353B (zh) * 2012-09-11 2017-06-20 北京大学 用于稿件中的职务信息的检查方法和装置
US10489360B2 (en) * 2012-10-17 2019-11-26 Ab Initio Technology Llc Specifying and applying rules to data
US9075860B2 (en) * 2012-10-18 2015-07-07 Oracle International Corporation Data lineage system
AU2013335231B2 (en) 2012-10-22 2018-08-09 Ab Initio Technology Llc Profiling data with location information
US9703822B2 (en) * 2012-12-10 2017-07-11 Ab Initio Technology Llc System for transform generation
US9892026B2 (en) 2013-02-01 2018-02-13 Ab Initio Technology Llc Data records selection
KR20150104615A (ko) 2013-02-07 2015-09-15 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9928283B2 (en) * 2013-04-15 2018-03-27 Validus Solutions, Inc. Tracing data through a transformation process using tracer codes
CN104123309B (zh) * 2013-04-28 2017-08-25 国际商业机器公司 用于数据管理的方法和系统
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9384231B2 (en) * 2013-06-21 2016-07-05 Bank Of America Corporation Data lineage management operation procedures
CN105453026A (zh) 2013-08-06 2016-03-30 苹果公司 基于来自远程设备的活动自动激活智能响应
WO2015048212A2 (en) 2013-09-27 2015-04-02 Ab Initio Technology Llc Evaluating rules applied to data
CA3092699C (en) * 2013-12-06 2023-07-25 Ab Initio Technology Llc Source code translation
US11487732B2 (en) 2014-01-16 2022-11-01 Ab Initio Technology Llc Database key identification
EP3594821B1 (en) 2014-03-07 2023-08-16 AB Initio Technology LLC Managing data profiling operations related to data type
US10191863B2 (en) * 2014-03-14 2019-01-29 Ab Initio Technology Llc Mapping attributes of keyed entities
US9607073B2 (en) * 2014-04-17 2017-03-28 Ab Initio Technology Llc Processing data from multiple sources
US10877955B2 (en) * 2014-04-29 2020-12-29 Microsoft Technology Licensing, Llc Using lineage to infer data quality issues
US10089409B2 (en) 2014-04-29 2018-10-02 Microsoft Technology Licensing, Llc Event-triggered data quality verification
US10552439B2 (en) * 2014-05-11 2020-02-04 Informatica Llc Grid format data viewing and editing environment
US20150331875A1 (en) * 2014-05-16 2015-11-19 Syntel, Inc. System and method for validating integrated data recasting objects
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10290126B2 (en) * 2014-07-01 2019-05-14 Oath Inc. Computerized systems and methods for graph data modeling
KR102279859B1 (ko) 2014-07-18 2021-07-20 아브 이니티오 테크놀로지 엘엘시 파라미터 세트의 관리
CA2959392C (en) * 2014-09-02 2021-08-10 Ab Initio Technology Llc Managing invocation of tasks
US9626393B2 (en) * 2014-09-10 2017-04-18 Ab Initio Technology Llc Conditional validation rules
US11354755B2 (en) 2014-09-11 2022-06-07 Intuit Inc. Methods systems and articles of manufacture for using a predictive model to determine tax topics which are relevant to a taxpayer in preparing an electronic tax return
US9720958B2 (en) 2014-10-24 2017-08-01 International Business Machines Corporation User driven business data aggregation and cross mapping framework
CN104361047B (zh) * 2014-10-29 2019-12-24 中国建设银行股份有限公司 一种客户端中的数据展示方法及装置
US10255641B1 (en) 2014-10-31 2019-04-09 Intuit Inc. Predictive model based identification of potential errors in electronic tax return
US10176234B2 (en) * 2014-11-05 2019-01-08 Ab Initio Technology Llc Impact analysis
KR102054568B1 (ko) * 2015-02-11 2020-01-22 아브 이니티오 테크놀로지 엘엘시 필터링 데이터 계통 다이어그램
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10740853B1 (en) 2015-04-28 2020-08-11 Intuit Inc. Systems for allocating resources based on electronic tax return preparation program user characteristics
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10409802B2 (en) * 2015-06-12 2019-09-10 Ab Initio Technology Llc Data quality analysis
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10366073B2 (en) * 2015-06-30 2019-07-30 Bank Of America Corporation System for automating data validation
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10650020B1 (en) * 2015-09-17 2020-05-12 Trifacta Inc. Analyzing transformations for preprocessing datasets
US10740854B1 (en) 2015-10-28 2020-08-11 Intuit Inc. Web browsing and machine learning systems for acquiring tax data during electronic tax return preparation
US20170124154A1 (en) 2015-11-02 2017-05-04 International Business Machines Corporation Establishing governance rules over data assets
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10528328B2 (en) 2015-12-08 2020-01-07 Microsoft Technology Licensing, Llc Learning from input patterns in Programing-By-Example
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10410295B1 (en) * 2016-05-25 2019-09-10 Intuit Inc. Methods, systems and computer program products for obtaining tax data
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10007674B2 (en) * 2016-06-13 2018-06-26 Palantir Technologies Inc. Data revision control in large-scale data analytic systems
US11755602B2 (en) * 2016-06-19 2023-09-12 Data.World, Inc. Correlating parallelized data from disparate data sources to aggregate graph data portions to predictively identify entity data
US10853376B2 (en) 2016-06-19 2020-12-01 Data.World, Inc. Collaborative dataset consolidation via distributed computer networks
US10915508B2 (en) 2016-06-30 2021-02-09 Global Ids, Inc. Data linking
US11960498B2 (en) * 2016-09-29 2024-04-16 Microsoft Technology Licensing, Llc Systems and methods for dynamically rendering data lineage
KR101862614B1 (ko) * 2016-10-05 2018-05-31 한국전력공사 프로그램 유효성 검증 장치 및 컴퓨터 판독가능 기록 매체
US11138676B2 (en) 2016-11-29 2021-10-05 Intuit Inc. Methods, systems and computer program products for collecting tax data
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10755051B2 (en) * 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10698884B2 (en) 2017-11-06 2020-06-30 Bank Of America Corporation Dynamic lineage validation system
US11068540B2 (en) 2018-01-25 2021-07-20 Ab Initio Technology Llc Techniques for integrating validation results in data profiling and related systems and methods
CN111868682B (zh) * 2018-02-27 2024-05-28 泽腾系统有限公司 用于异构数据的可扩展变换处理单元
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11176104B2 (en) 2018-04-16 2021-11-16 Bank Of America Corporation Platform-independent intelligent data transformer
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
EP3824398A1 (en) 2018-07-19 2021-05-26 AB Initio Technology LLC Publishing to a data warehouse
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
US11645425B2 (en) * 2019-07-03 2023-05-09 Beyond Semiconductor, d.o.o. Systems and methods for data-driven secure and safe computing
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
CN114514506A (zh) * 2019-10-22 2022-05-17 深圳鲲云信息科技有限公司 深度学习框架的调整方法、装置、服务器及存储介质
US11514072B1 (en) 2019-12-31 2022-11-29 Cigna Intellectual Property, Inc. Computerized system for programmatic mapping of record lineage based on data flow through data storage components
US11086848B1 (en) * 2020-02-11 2021-08-10 Bank Of America Corporation Dynamic data transformation system
CN113360363B (zh) * 2020-03-04 2024-04-02 腾讯科技(深圳)有限公司 微服务系统的测试方法、装置、设备和计算机存储介质
US11043220B1 (en) 2020-05-11 2021-06-22 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
CN111930532B (zh) * 2020-07-09 2023-11-17 智盈未来(西安)信息技术有限公司 航电数据集成方法及装置
US11797541B1 (en) 2020-10-23 2023-10-24 State Farm Mutual Automobile Insurance Company Systems and methods for enhanced rules conflict checking with data validation
US11971909B2 (en) 2021-01-31 2024-04-30 Ab Initio Technology Llc Data processing system with manipulation of logical dataset groups
CN112882705B (zh) * 2021-03-01 2024-03-19 浪潮通用软件有限公司 基于界面更新的表达式计算方法、装置、设备及介质
US11567998B2 (en) * 2021-03-25 2023-01-31 Databricks, Inc. Dataflow graph processing
US11461297B1 (en) 2021-06-09 2022-10-04 T-Mobile Usa, Inc. Ensuring database integrity using a data flow in a graph, such as for use by a wireless telecommunications service provider
US11533235B1 (en) 2021-06-24 2022-12-20 Bank Of America Corporation Electronic system for dynamic processing of temporal upstream data and downstream data in communication networks
TWI792684B (zh) * 2021-11-17 2023-02-11 瑞昱半導體股份有限公司 資料傳輸方法以及資料傳輸系統
US11907241B2 (en) * 2022-06-17 2024-02-20 Hewlett Packard Enterprise Development Lp Data recommender using lineage to propagate value indicators

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1339756A (zh) * 2000-08-23 2002-03-13 松下电器产业株式会社 文档检索和分类方法及其装置

Family Cites Families (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758351A (en) * 1995-03-01 1998-05-26 Sterling Software, Inc. System and method for the creation and use of surrogate information system objects
US5966072A (en) 1996-07-02 1999-10-12 Ab Initio Software Corporation Executing computations expressed as graphs
US6216131B1 (en) 1998-02-06 2001-04-10 Starfish Software, Inc. Methods for mapping data fields from one data set to another in a data processing environment
US6948154B1 (en) 1999-03-22 2005-09-20 Oregon State University Methodology for testing spreadsheets
US7120638B1 (en) 1999-09-21 2006-10-10 International Business Machines Corporation Method, system, program, and data structure for cleaning a database table
GB2383866A (en) * 2000-05-09 2003-07-09 Fair Isaac And Company Approach for generating rules
US7164422B1 (en) 2000-07-28 2007-01-16 Ab Initio Software Corporation Parameterized graphs with conditional components
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US6708186B1 (en) * 2000-08-14 2004-03-16 Oracle International Corporation Aggregating and manipulating dictionary metadata in a database system
US7609402B2 (en) * 2001-01-19 2009-10-27 Flexiworld, Inc. Methods for universal data output
US7117430B2 (en) 2001-02-27 2006-10-03 Microsoft Corporation Spreadsheet error checker
US7614036B2 (en) * 2001-03-22 2009-11-03 Robert D Bjornson Method and system for dataflow creation and execution
JP2002279147A (ja) * 2001-03-22 2002-09-27 Sharp Corp 内製化判断支援装置、内製化判断支援方法および内製化判断支援プログラムを記録した機械読取可能な記録媒体および内製化判断支援プログラム
US7853553B2 (en) * 2001-03-26 2010-12-14 Siebel Systems, Inc. Engine for converting data from a source format to a destination format using user defined mappings
US6494159B2 (en) 2001-05-11 2002-12-17 The United States Of America As Represented By The Secretary Of The Navy Submarine launched unmanned combat vehicle replenishment
US7099885B2 (en) * 2001-05-25 2006-08-29 Unicorn Solutions Method and system for collaborative ontology modeling
US6868526B2 (en) 2001-07-18 2005-03-15 The Mathworks, Inc. Graphical subclassing
AUPR966001A0 (en) * 2001-12-20 2002-01-24 Canon Information Systems Research Australia Pty Ltd A microprocessor card defining a custom user interface
US7080088B1 (en) 2002-01-30 2006-07-18 Oracle International Corporation Automatic reconciliation of bindable objects
US7110924B2 (en) * 2002-05-15 2006-09-19 Caterpillar Inc. Method for controlling the performance of a target system
US7574652B2 (en) * 2002-06-20 2009-08-11 Canon Kabushiki Kaisha Methods for interactively defining transforms and for generating queries by manipulating existing query data
JP2004110182A (ja) * 2002-09-13 2004-04-08 Toshiba Corp データ変換装置およびデータ変換方法およびデータ変換プログラム
US7167850B2 (en) 2002-10-10 2007-01-23 Ab Initio Software Corporation Startup and control of graph-based computation
US7739223B2 (en) * 2003-08-29 2010-06-15 Microsoft Corporation Mapping architecture for arbitrary data models
US20050060317A1 (en) 2003-09-12 2005-03-17 Lott Christopher Martin Method and system for the specification of interface definitions and business rules and automatic generation of message validation and transformation software
CN102982065B (zh) 2003-09-15 2016-09-21 起元科技有限公司 数据处理方法、数据处理装置及计算机可读存储介质
US7865507B2 (en) 2003-09-15 2011-01-04 Oracle International Corporation Data quality analyzer
US7765529B1 (en) 2003-10-31 2010-07-27 The Mathworks, Inc. Transforming graphical objects in a graphical modeling environment
US20080052687A1 (en) * 2003-11-03 2008-02-28 Agustin Gonzales-Tuchmann Development environment for data transformation applications
US20050187984A1 (en) 2004-02-20 2005-08-25 Tianlong Chen Data driven database management system and method
US8165853B2 (en) * 2004-04-16 2012-04-24 Knowledgebase Marketing, Inc. Dimension reduction in predictive model development
JP4275013B2 (ja) * 2004-06-21 2009-06-10 三洋電機株式会社 データフローグラフ処理装置、処理装置、リコンフィギュラブル回路。
US20060007464A1 (en) * 2004-06-30 2006-01-12 Percey Michael F Structured data update and transformation system
US7353227B2 (en) 2004-07-23 2008-04-01 Sap Aktiengesellschaft Conflict resolution engine
US7848578B2 (en) * 2004-09-13 2010-12-07 Nokia Corporation Methods, devices and computer program products for capture and display of visually encoded data and an image
US7899833B2 (en) 2004-11-02 2011-03-01 Ab Initio Technology Llc Managing related data objects
US8768877B2 (en) * 2005-03-07 2014-07-01 Ca, Inc. System and method for data manipulation
JP4817697B2 (ja) * 2005-03-30 2011-11-16 富士通株式会社 変換規則評価プログラム及び変換規則評価装置
JP4550641B2 (ja) * 2005-03-30 2010-09-22 大陽日酸エンジニアリング株式会社 データ照合装置及び方法
US8630917B2 (en) 2005-06-09 2014-01-14 At&T Intellectual Property Ii, L.P. Arrangement for guiding user design of comprehensive product solution using on-the-fly data validation
US7877350B2 (en) 2005-06-27 2011-01-25 Ab Initio Technology Llc Managing metadata for graph-based computations
US7716630B2 (en) 2005-06-27 2010-05-11 Ab Initio Technology Llc Managing parameters for graph-based computations
US7464105B2 (en) 2005-07-06 2008-12-09 International Business Machines Corporation Method for performing semi-automatic dataset maintenance
US7870162B2 (en) 2005-07-29 2011-01-11 Sap Ag Method for generating properly formed expressions
US20070050750A1 (en) 2005-08-31 2007-03-01 Microsoft Corporation Extensible data-driven setup application for operating system
US9798781B2 (en) * 2005-10-25 2017-10-24 Angoss Software Corporation Strategy trees for data mining
US8060821B2 (en) * 2005-12-09 2011-11-15 Apple Inc. Enhanced visual feedback of interactions with user interface
US7761586B2 (en) * 2006-02-06 2010-07-20 Microsoft Corporation Accessing and manipulating data in a data flow graph
US7661067B2 (en) 2006-02-21 2010-02-09 International Business Machines Corporation Method for providing quick responses in instant messaging conversations
US7647298B2 (en) * 2006-03-23 2010-01-12 Microsoft Corporation Generation of query and update views for object relational mapping
US20070294119A1 (en) * 2006-03-30 2007-12-20 Adaptive Alpha, Llc System, method and computer program product for evaluating and rating an asset management business and associate investment funds using experiential business process and performance data, and applications thereof
US8868577B2 (en) 2006-03-31 2014-10-21 Sap Se Generic database manipulator
US7797319B2 (en) * 2006-05-15 2010-09-14 Algebraix Data Corporation Systems and methods for data model mapping
US7870556B2 (en) * 2006-05-16 2011-01-11 Ab Initio Technology Llc Managing computing resources in graph-based computations
EP2050013A4 (en) 2006-08-10 2010-01-06 Ab Initio Software Llc DISTRIBUTION SERVICES IN DIAGRAM-BASED CALCULATIONS
US7890509B1 (en) * 2006-12-05 2011-02-15 First American Real Estate Solutions Llc Parcel data acquisition and processing
GB0700450D0 (en) 2007-01-10 2007-02-21 Radiation Watch Ltd The RWL threat engine
US9430552B2 (en) * 2007-03-16 2016-08-30 Microsoft Technology Licensing, Llc View maintenance rules for an update pipeline of an object-relational mapping (ORM) platform
US20080243765A1 (en) * 2007-03-29 2008-10-02 Ariel Fuxman Method for generating nested mapping specifications in a schema mapping formalism
US7603368B2 (en) * 2007-03-30 2009-10-13 Fmr Llc Mapping data on a network
US8069129B2 (en) * 2007-04-10 2011-11-29 Ab Initio Technology Llc Editing and compiling business rules
US8032404B2 (en) 2007-06-13 2011-10-04 International Business Machines Corporation Method and system for estimating financial benefits of packaged application service projects
US8694518B2 (en) * 2007-06-14 2014-04-08 Colorquick, L.L.C. Method and apparatus for database mapping
US8566296B2 (en) 2007-09-14 2013-10-22 Oracle International Corporation Support for compensation aware data types in relational database systems
EP2191362B1 (en) 2007-09-20 2015-08-19 Ab Initio Technology LLC Managing data flows in graph-based computations
WO2009125841A1 (ja) * 2008-04-10 2009-10-15 浜理薬品工業株式会社 5-メチルウリジンを出発原料とするエチニルチミジン化合物の製造方法
JP4224126B1 (ja) 2008-06-09 2009-02-12 パナソニック株式会社 データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム
US20090319494A1 (en) * 2008-06-20 2009-12-24 Microsoft Corporation Field mapping for data stream output
CA2729304C (en) * 2008-06-30 2016-12-13 Ab Initio Technology Llc Data logging in graph-based computations
US8082228B2 (en) 2008-10-31 2011-12-20 Netapp, Inc. Remote office duplication
EP2356581A4 (en) * 2008-11-12 2012-05-02 Ab Initio Technology Llc MANAGEMENT AND AUTOMATIC CONNECTION OF DATA OBJECTS
KR20150042866A (ko) * 2008-12-02 2015-04-21 아브 이니티오 테크놀로지 엘엘시 데이터 관리 시스템 내의 데이터 집합의 맵핑 인스턴스
CN105243422B (zh) * 2009-01-30 2018-07-06 起元技术有限责任公司 使用矢量字段处理数据
EP2221733A1 (en) 2009-02-17 2010-08-25 AMADEUS sas Method allowing validation in a production database of new entered data prior to their release
US8935702B2 (en) 2009-09-04 2015-01-13 International Business Machines Corporation Resource optimization for parallel data integration
KR101688555B1 (ko) * 2009-09-16 2016-12-21 아브 이니티오 테크놀로지 엘엘시 데이터세트 요소의 매핑
US8583664B2 (en) 2010-05-26 2013-11-12 Microsoft Corporation Exposing metadata relationships through filter interplay
US8732143B2 (en) 2010-08-27 2014-05-20 Microsoft Corporation Reducing locking during database transactions
WO2012061109A1 (en) 2010-10-25 2012-05-10 Ab Initio Technology Llc Managing data set objects in a dataflow graph that represents a computer program
US8949166B2 (en) 2010-12-16 2015-02-03 International Business Machines Corporation Creating and processing a data rule for data quality
WO2012097278A1 (en) * 2011-01-14 2012-07-19 Ab Initio Technology Llc Managing changes to collections of data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1339756A (zh) * 2000-08-23 2002-03-13 松下电器产业株式会社 文档检索和分类方法及其装置

Also Published As

Publication number Publication date
CN102656554A (zh) 2012-09-05
KR20150038759A (ko) 2015-04-08
KR101656813B1 (ko) 2016-09-12
US8930337B2 (en) 2015-01-06
US20130318062A1 (en) 2013-11-28
CA2771899C (en) 2017-08-01
AU2010295547A1 (en) 2012-03-08
JP6121163B2 (ja) 2017-04-26
US20110066602A1 (en) 2011-03-17
AU2010295547B2 (en) 2015-05-07
WO2011035039A1 (en) 2011-03-24
KR20150040387A (ko) 2015-04-14
AU2015203037B1 (en) 2015-08-20
EP2478433A4 (en) 2016-09-21
JP6395680B2 (ja) 2018-09-26
JP2018185858A (ja) 2018-11-22
CN110516209A (zh) 2019-11-29
EP2478433A1 (en) 2012-07-25
US8825695B2 (en) 2014-09-02
KR20150027838A (ko) 2015-03-12
KR101631978B1 (ko) 2016-06-20
JP2016015155A (ja) 2016-01-28
KR101660348B1 (ko) 2016-09-27
KR101688555B1 (ko) 2016-12-21
CA2771899A1 (en) 2011-03-24
JP2013505502A (ja) 2013-02-14
KR20120080572A (ko) 2012-07-17

Similar Documents

Publication Publication Date Title
CN102656554B (zh) 映射数据集元素
JP7361609B2 (ja) ルールを編集、シミュレート、バージョン制御、及びビジネスプロセス管理する統合システム
US9026897B2 (en) Integrated, configurable, sensitivity, analytical, temporal, visual electronic plan system
US8707248B2 (en) Transformation framework
CN106372044B (zh) 一种基于报表生成类型化维度xbrl报告的方法
EP2193438A1 (en) Quality assurance tools for use with source code and a semantic model
JP2005515522A (ja) データウェアハウスのデータの保全性を検証し、ウェハハウジングされたデータを複数の事前定義の分析モデルに適用する方法およびシステム。
AU2007200385B2 (en) Re-usuable clauses
Porta Assessing Sector Performance and Inequality in Education: Streamlined Analysis with ADePT Software
Gencel An architectural dimensions based software functional size measurement method
US20140019305A1 (en) Cloud-driven Social-network Platform focused on Pattern Analysis
Krob et al. Managing the Systemic Digital Twin of an Industrial Enterprise with WordLab & Σ
Pimentel Perspectives on Earnings Quality: An Integrated Approach From European Listed Companies
Wan IFC (Industry Foundation Classes)-based integration of architectural design and structural design
Cox Predicting electricity consumption and cost for South African mines
Alluri Testing calculation engines using input space partitioning and automation
JP2002041288A (ja) ソフトウエア開発支援方法
Fife Predicting software development cost for command and control systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant