数据流探索的制作方法

文档序号:9932628阅读:206来源:国知局
数据流探索的制作方法
【专利说明】数据流探索 发明领域
[0001]本文公开的发明设及数据分析,更具体地,设及提供对数据源和数据客户端之间 的数据流的分析。
[000^ 背景
[0003] 已知的是现代企业生成和交换数字数据作为它们的经营活动的结果。数字数据 (诸如电子邮件、电子文档、访问因特网、W及访问数据库)是常见的并且通常被用来促进企 业内的各种经营活动。当运类数字数据在各个计算设备之间交换(例如,通过计算机网络) 时,运些交换形成数据的流(即数据流),当数据流被分析时能够提供对于商业经营的有用 见解并且帮助公司和企业作出商业决策(例如,数据安全性或数据策略决策)。
[0004] 不幸的是,关于数据流的信息常常被限制于日志文件(例如,服务器日志文件)中, 日志文件包含关于各种数据事务(例如,数据交换)的信息,但却W原始数据形式(例如,未 经格式化或缺乏可读性)提供运一信息,其中包含很少或者没有关于运些事务的分析或情 报。在大型商业企业的上下文中,运一数据分析或情报的缺少进一步由于存在于运类组织 中的数据流的数量和因此生成的大量的日志数据而令人恼怒。拥有能够分析关于数据流的 信息(例如描述数据事务的日志文件)并且提供(针对运类数据流的)易于阅读/理解的智能 分析的工具将是有益的。

【发明内容】

[0005] 本公开的各实施例可包括用于捕捉数据源和数据客户端之间的第一数据流的系 统、方法、W及非瞬态计算机可读介质。确定与所述第一数据流有关的一个或多个元素。用 第一标记来标记所述第一数据流的至少一个元素。基于与所述数据有关的元素生成所述第 一数据流的可视表示。响应于对于所述第一标记的选择根据所述第一标记来调整所述第一 数据流的可视表示。
[0006] 在一个实施例中,所述第一标记是由用户选择的。
[0007] 在一个实施例中,用第二标记来标记所述第一数据流的另一元素。所述调整可视 表示包括响应于对所述第一标记的选择和对所述第二标记的选择根据所述第一标记和所 述第二标记来调整所述第一数据流的可视表示。
[000引在一个实施例中,用注释对所述第一数据流的至少一个元素进行注释,所述可视 表示包括所述注释。
[0009] 在一个实施例中,分析所述第一数据流。基于对所述第一数据流的分析优化第二 数据流的处理,所述第二数据流发生在所述第一数据流之后。
[0010] 在一个实施例中,捕捉第二数据流。至少使用经优化的处理来分析所述第二数据 流。
[0011] 在一个实施例中,捕捉第二数据流。确定所述第一数据流的第一语义身份;确定所 述第二数据流的第二语义身份。确定所述第一语义身份和所述第二语义身份是否类似或相 同。当例如所述第一和第二数据流设及重复的电子邮件或丢失的网络分组的失败的重传 (运导致第二、再次丢失的分组)时,所述第一语义身份和所述第二语义身份可被认为具有 类似或相同的语义身份(W及因此是彼此的别名)。
[0012] 在一个实施例中,所述第一数据流与对数据源的第一数据库查询有关,所述第二 数据流与对数据源的第二数据库查询有关,所述第一语义身份是第一查询别名,并且所述 第二语义身份是第二查询别名。
[0013] 在一个实施例中,基于确定所述第一语义身份和所述第二语义身份是否类似或相 同来分析所述第一数据流。
[0014] 在一个实施例中,基于确定所述第一语义身份和所述第二语义身份是否类似或相 同来分析所述第二数据流。
[0015] 在一个实施例中,捕捉所述第一数据流、标记所述第一数据流的至少一个元素 、W 及选择所述第一标记中的至少一者是基于用户定义的脚本来执行的。
[0016] 在一个实施例中,执行所述用户定义的脚本。
[0017] 在一个实施例中,从用户接收所述用户定义的脚本。
[0018] 在一个实施例中,所述用户定义的脚本是基于对条件的满足而执行(例如实行) 的。
[0019] 在一个实施例中,所述条件包括事件、日期、W及时间中的至少一者的发生。
[0020] 在一个实施例中,在标记分层结构中组织所述第一标记。
[0021 ]在一个实施例中,所述标记分层结构包括标记的非循环图。
[0022] 在一个实施例中,执行基于所述第一标记的捜索。
[0023] 在一个实施例中,为两个或更多个用户提供对于所述可视表示和所述第一标记的 协作式访问。
[0024] 本发明的许多其它特征和实施例将通过伴随的附图和W下的详细描述而变得清 楚。
[00巧]附图简述
[0026] 图1示出了根据本公开的一个实施例的数据流探索系统的示例环境。
[0027] 图2示出了根据本公开的一个实施例的示例数据流探索系统。
[0028] 图3示出了根据本公开的一个实施例的示例数据流探索客户端。
[0029] 图4示出了根据本公开的一个实施例的示例数据流捕捉模块。
[0030] 图5示出了根据本公开的一个实施例的示例数据流分析模块。
[0031] 图6示出了根据本公开的一个实施例的用于分析数据流的示例过程。
[0032] 图7示出了根据本公开的一个实施例的为了可视化用作数据源的数据库表和用作 数据客户端的数据库用户之间的多个数据库数据流而生成的Sankey示图的屏幕截图。
[0033] 图8示出了根据本公开的一个实施例的Sankey示图的当与标记分层结构相关联的 特定标记被选择用于数据库表时的屏幕截图。
[0034] 图9示出了根据本公开的一个实施例的包括与关于数据库数据流的正则查询有关 的详细测量的表的屏幕截图。
[0035] 图10示出了根据本公开的一个实施例的为了可视化多个数据库数据流而生成的 Sankey示图的屏幕截图。
[0036] 图11示出了根据本公开的一个实施例的为了可视化多个数据库数据流而生成的 Sankey示图的屏幕截图。
[0037] 图12示出了根据本公开的一个实施例的可被用于各个场景的计算机系统的示例。 附图仅出于说明的目的描绘了所公开的技术的各个实施例,其中附图使用相同的附图标记 来标识相同的元件。本领域的技术人员将容易地从W下讨论中认识到,可W在不背离此处 所述的本发明的原则的情况下采用此处所示的结构和方法的替换实施例。
[0038] 详细描述
[0039] 在各实施例中,提供了用于分析数据源和数据客户端之间的一个或多个数据流的 系统和方法。运类系统和方法对于分析组织内或跨不同组织的数据源和数据客户端之间的 数据流和提供对于数据流的理解可能是有益的。
[0040] 在一些情况下,如本文中描述的对数据流的分析可促进与数据供应链有关的各种 操作。例如,对数据流的分析可通过使用数据流分析来监视或审核数据供应链来维持数据 供应链的安全性或恰当的性能。数据供应链的示例可包括在其协作的环境下彼此共享专用 数据的两个协作公司之间的数据供应链。另一数据供应链可设及针对单个项目进行协作的 多个方,诸如一个总承包商和多个子承包商。供应链的其它示例可包括(1)由广告客户提交 给广告代理或电子商务系统的广告或用户数据、(2)公司提交的他们的物理供应链的数字 视图形式的定价和库存数据、或者(3)公司提交给其记账或其它处理供应商并W经处理形 式返回的记账、收益和其它财务数据。
[0041] 数据供应链的又一示例可设及托管数据,其中不可信的各方想要将他们的数据相 关W生成总体统计,但是不想要让参与者中的任何单一方来执行对他们数据的分析。数据 受托方可接收原始数据、执行分析、并且将聚合结果分享给所有公司。例如,多家公司可将 其雇员补偿信息分享给计算平均补偿的商行,并且将该平均值分享给参与该平均值的计算 的公司;每家公司可随后针对该平均值制定其自己的补偿。当托管数据时,数据供应链可包 括数据受托方和托管方之间的那些数据供应链。数据流分析可确保数据受托方的安全性并 且向每一方保证他们的数据不会对其他方可用,其中分析可不间断地进行或者静态的、一 次性地进行。
[0042] 本文中所使用的"数据流"可包括数据源和数据客户端之间的数据传输。数据流的 示例可包括由电子邮件服务器(例如,Microsoft⑥Exchange)递送给电子邮件客户端(例 如,Microsoft? Outlook'?')的电子邮件、由电子邮件客户端发送给电子邮件服务器的电 子邮件、由数据库服务器(例如,响应于结构化查询语言(59山查询而提供给数 据库客户端(例如,MySQL货Wor化ench、或PHP进程)的数据库查询结果(例如表)、W及从 数据库客户端递送给数据库服务器的供执行的S化查询。数据流还可W更普遍,诸如从投资 者通过投资事件传入接收该投资的实体的金钱流。数据流的运些广义组件中的每一个可W 标准计算形式(例如通过数据库记录、文件、或其它形式)表示在系统中。
[0043] 本文中所使用的"数据源"可包括发起数据流或通过数据流提供数据的任何实体。 数据源的示例可包括电子邮件的发件人(例如,在电子邮件是数据的情况下)、存储在文件 系统上的文件(例如,在被发送的数据是文件的内容的情况下)、数据库(例如,在数据是数 据库中的表中的一些或全部的情况下)、或者数据库中的表(例如,其中被发送的数据是表 中的内容的全部或部分)。在一些实施例中,单个数据流可具有多个协作的数据源,诸如两 个连结的数据库表。此处,数据客户端来源还可被称为"数据生产者"。在一个更普遍的投资 数据流中,实体可W是执行投资的实际的现实世界实体,如系统中所表示的。
[0044] 本文中所使用的"数据客户端"可包括用作为数据流的端点并且接收通过数据流 传输的数据的任何实体。数据客户端的示例可包括电子邮件的收件人、或者查看数据库表 的内容的人。在一些实施例中,单个数据流可具有多个数据客户端,诸如一封电子邮件被发 送给多个收件人。此处,数据客户端还可被称为"数据消费者"或"数据宿"。
[0045] 如本文中所使用的,用作数据源或数据客户端的实体可被理解为由一个或多个计 算模块所实现或使用一个或多个计算模块,本文中将更详细地描述运些计算模块。另外,还 将理解,在一个上下文中(例如,相对于第一数据流)用作为数据客户端的实体也可在另一 上下文中(例如,相对于第二数据流)用作为数据源。
[0046] 例如,在第一数据流包括由数据库客户端发送给数据库服务器的数据库查询的情 况下,数据库客户端可被视为相对于第一数据流的数据源,而数据库服务器可被视为相对 于第一数据流的数据客户端。在第二数据流包括由同一数据库服务器(例如,响应于第一数 据流的数据库查询)发送给同一数据库客户端的数据库查询结果的情况下,数据库服务器 可被视为相对于第二数据流的数据源,而数据库客户端可被视为相对于第二数据流的数据 客户端。
[0047] "数据流事务"(在本文中也被称为"事务")可W是数据流的一个唯一实例。数据流 事务可例如包括从一个或多个数据源流向一个或多个数据客户端的单个电子邮件。出于分 析的目的,数据流事务可被视为已经发生,无论数据流事务的最终成功还是失败。因此,在 一些情况下,给定数据流事务可不必包括预期的数据,而是相反包括错误或空的数据结果 (例如,空查询结果)。例如,数据流事务可包括发送给不存在的电子邮件帐户的电子邮件, 或者由于发送给不存在的电子邮件帐户所导致的错误。当被分析时,数据流事务可与合适 的数据流事务度量(本文中也被称为"度量")相关联,诸如电子邮件的字节数或传输错误 码。
[0048] 本文中所使用的"数据主题"可W是与数据流相关联的语义含义。如本文中使用 的,语义上相关的两个或更多个数据流事务可W说是与同一数据主题相关的。数据流事务 可基于上下文而语义上相关。例如,诸如"S化ECT tl.cl,tl.c2FR0M tr之类的S化查询(其 想要检索表tl中的所有行中列Cl和c2的数据)可基于W下因素而与数据主题相关:在特定 时间点从数据库表tl中获得的具体的表数据流;无论查询何时被执行,从数据库表tl中获 得的任何表数据流(其内容可随事件变化);或者从数据库表tl中获得的任何表数据流。包 括多个数据流事务的数据主题可促进计算关于该数据主题的统计量(本文中也被称为"统 计"),诸如平均值和标准差。本文中所使用的"标记"可W是与同数据流相关联的元素或数 据流整体相关联的基于文本的标签或关键词。可被标记的数据流的元素可包括例如与数据 流相关联的一个或多个实体(例如,数据源、数据主题、或数据客户端)、或者与数据流相关 联的一个或多个注释。一旦一个或多个元素与标记相关联,那些元素可被分组、定位、排序、 过滤、或W其它方式基于和/或根据该标记来处理。一个给定元素可W与一个或多个标记相 关联。如本文中使用的,用标记来"标记"一个元素将被理解为将该元素与该标记相关联。
[0049] 取决于实施例,一个或多个标记可被自动与元素相关联,或者可通过用户动作来 与元素相关联。对于一些实施例,将标记与数据流或其元素的自动关联可基于其相应的属 性。例如,用作数据流的数据源的数据库的两个或更多个表可被自动用表方案的名字或包 含那些表的数据库的名字来标记。在另一实施例中,在数据流设及作为数据源的电子邮件 发件人W及作为数据客户端的电子邮件收件人的情况下,该数据流的电子邮件发件人或电 子邮件收件人可被自动并且分别W他们隶属为其成员的组织或部口的名字来标记。在一个 进一步示例中,在数据流与特定数据主题相关联的情况下,运一数据流可被自动W与该数 据主题相关联的标记来标记。
[0050] 对于一些实施例,对元素的自动标记可通过由脚本(例如,预安装的或者用户定义 的)来促进,该脚本由用户执行并且被配置成使得数据流或其元素被基于由脚本定义的一 组准则来自动标记。在一些实施例中,准则可基于或根据数据流分析的结果来评估。
[0051] 用户或自动过程可从中选择并与元素相关联的一组标记可包括用户定义的标记 W及与其它元素自动相关联的标记。另外,标记可根据结构分层来组织,使得第一标记与一 个元素的关联可导致该元素通过结构分层与同第一标记有关的第二标记相关联。例如,标 记分层可包括其中标记根据有向非循环图(例如,树状结构,但是可能更常见)来组织的分 层。本文中还详细讨论了关于标记的更多内容。
[0052] 在各实施例中,分析数据流可包括捕捉数据流、对数据流中捕捉的数据进行预处 理、存储在数据的预处理期间提取的信息、分析存储的信息、导出存储的信息和/或分析结 果、W及优化数据流处理(例如,将来的数据流分析)。取决于实施例,数据流可从实况数据 流中捕捉或者从之前关于数据流记录(或W某种形式表示)的数据中捕捉。
[0053] 在一些实施例中,系统和方法可被配置成分析电子邮件系统的数据流W便理解电 子邮件在组织内如何流动。该系统和方法可提供关于W下的信息:第一用户(作为数据源) 今天发送了多少电子邮件(作为事务);第一用户(作为数据客户端)今天接收了多少电子邮 件(作为事务);哪一个电子邮件对话线程(与数据主题有关的数据流事务)使用了最多的流 量(例如,跨一个数据主题下的所有电子邮件的字节总数);或者哪些电子邮件(作为数据流 事务)被定址到不存在的收件人(作为数据客户端)。
[0054] 在各实施例中,系统和方法可被配置成分析设及数据库查询和数据库查询结果的 数据流(本文中被称为"数据库数据流")。在运类数据流中,数据源可W是数据库表,事务可 W是各个数据库查询(例如,S化查询)或者数据库查询结果,数据主题可W是语义上相关的 数据库查询的各个分组,而数据客户端可W是计算设备处向数据库服务器提交了该数据库 查询供执行的用户。
[0055] 基于数据库查询具有单一规范语义形式的理解,从基数上来看,每个事务可与单 个数据主题、单个用户、W及一个或多个表相关联。每个事务可由单个用户执行并从一个或 多个表中检索数据。在一些实施例中,可在对数据库数据流事务的分析期间使用详细的数 据库查询,而在根据数据主题来分析数据库事务时使用规范的数据库查询。此处,规范数据 库查询还可被称为"正则数据库查询"或简称为"正则查询"。
[0056] 在各实施例中,数据库表可被视为从被视为数据源的其它数据库表接收数据的数 据客户端。数据从第一组数据库表流向第二组数据库表的概念可类似于血统或起源,其中 数据从原始表经过一系列中间表流到终端用户。分析运类数据流可能在W下情况下是有用 的,例如系统管理员希望知道一些数据库用户是否(通过无论哪些中间步骤)接收到存储在 一些原始表中的数据。运类似于电子邮件转发的概念,并且系统管理员希望知道第一电子 邮件用户是否曾经看到由第二电子邮件用户所撰写的任何电子邮件,第二电子邮件用户是 否将其发送给第一电子邮件用户,或者是否是某个其他的电子邮件用户将第二电子邮件用 户撰写的电子邮件转发给第一电子邮件用户。
[0057] 对于一些实施例,列或表可被视为特定数据流的数据源,即使来自该列或表中的 数据不是通过数据库查询的方式来递送的。在特定实施例中,系统和方法可将提供完整数 据或聚合数据的表或列视为数据流。例如,示例数据库查询"沈LECT SUM(tl.cl)FR0M tr 递送表tl的列Cl中的
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1