CN104778196A - 用于数据分析的输入模式的动态数据驱动生成与修改 - Google Patents
用于数据分析的输入模式的动态数据驱动生成与修改 Download PDFInfo
- Publication number
- CN104778196A CN104778196A CN201410841736.1A CN201410841736A CN104778196A CN 104778196 A CN104778196 A CN 104778196A CN 201410841736 A CN201410841736 A CN 201410841736A CN 104778196 A CN104778196 A CN 104778196A
- Authority
- CN
- China
- Prior art keywords
- data
- event data
- event
- database
- input pattern
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
- G06F16/213—Schema design and management with details for schema evolution support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Abstract
本公开描述用于输入模式的动态生成和修改的方法、系统和计算机程序产品。一种计算机实现的方法包括:利用事件收集器从数据源接收事件数据,该数据源与收集器注册以发送事件数据给事件收集器;发送接收到的事件数据以用于分析;保存发送的事件数据;确定是否创建或更新业务智能视图;基于保存的事件数据确定是否创建或更新输入模式;以及由计算机向查询生成引擎提供描述如何在数据库中表示数据的输入模式。
Description
技术领域
本公开涉及用于输入模式的动态生成和修改的计算机实现的方法、计算机可读介质和计算机系统。
背景技术
在当前业务智能(BI)市场中,对于动态、实时数据分析的需要正在增加,该分析使用仪表板以统一和简洁的方式聚集、集中和/或呈现静态或动态内容给最终用户,用于(尤其是)提高任务效率、识别积极和消极业务和/或过程趋势、产生数据相关性、增强数据分析以及改善内容对他人的呈现。仪表板还允许方便的访问用于呈现高层内容的位置然后允许最终用户向下挖掘更低层的相关内容。最终用户一般不被允许利用当前数据创建和/或增强现有的仪表板;该职责一般被分配给创造(例如,准备和更新)仪表板数据/内容以及管理用于提供仪表板数据/内容的基本数据结构(例如,数据库视图、模式等等)的信息技术(IT)专家。IT专家不能及时更新仪表板和关联数据,这可能导致过时数据,从而可能致使错过商业机会以及对于组织的其他负面影响。
发明内容
本公开涉及用于输入模式的动态生成和修改的计算机实现的方法、计算机可读介质和计算机系统。一种计算机实现的方法包括:利用事件收集器从数据源接收事件数据,该数据源与收集器注册以发送事件数据给事件收集器;发送接收到的事件数据以用于分析;保存发送的事件数据;确定是否创建或更新业务智能视图;基于保存的事件数据确定是否创建或更新输入模式;以及由计算机向查询生成引擎提供描述如何在数据库中表示数据的输入模式。
此方面的其他实现包括相应的计算机系统、装置和记录在一个或多个计算机存储设备上的计算机程序,每个被配置为执行该方法的动作。一个或多个计算机的系统可以被配置为依靠安装在系统上的软件、固件、硬件或软件、固件或硬件的组合执行特定操作或动作,在操作中致使该系统执行动作。一个或多个计算机程序可以被配置为依靠包括指令来执行特定操作或动作,当由数据处理设备运行该指令时致使装置执行动作。
上述及其他实现每个可以可选地单独或组合地包括以下特征中的一个或多个:
可与通用实现组合的第一方面还包括在发送用于分析的事件数据之前预处理接收到的事件数据。
可与先前的方面中的任何一个组合的第二方面还包括分析被发送的事件数据以确定是否创建数据库表格来保存事件数据。
可与先前的方面中的任何一个组合的第三方面还包括创建或更新业务智能视图。
可与先前的方面中的任何一个组合的第四方面还包括创建或更新输入模式。
可与先前的方面中的任何一个组合的第五方面还包括向数据库发送查询,由查询生成引擎基于与接收到的事件数据相关联的输入模式生成该查询。
可与先前的方面中的任何一个组合的第六方面还包括将接收到的查询翻译成为通用查询格式以发送到查询生成引擎。
本说明书中描述的主题可以实现在特定实现中以便实现一个或多个以下优点。首先,可以直接根据接收到的数据动态创建和修改业务智能元数据(例如,业务对象“域(universe)”、数据库供应商专用业务智能视图)。其次,当接收到数据并且通过应用和/或网站生成事实时,可以动态地生成或修改全部必要的数据结构。其他优点对本领域技术人员将是明显的。
本说明书的主题的一个或多个实现的细节在附图和下面的描述中阐明。主题的其他特征、方面和优点将从描述、附图和权利要求中变得清楚。
附图说明
图1是根据实现的示例输入模式的例图。
图2是根据实现的、数据与应用分析(application analytics,AppA)交互的高级例图。
图3是示出根据实现的、用于输入模式的动态生成和修改的示例分布式计算系统(EDCS)的框图。
图4是示出根据实现的、图2和图3的AppA的细节的框图。
图5是示出根据实现的、用于输入模式的动态生成和修改的方法的流程图。
多个附图中的类似参考数字和指示类似元件。
具体实施方式
本公开一般描述用于输入模式的动态生成和修改的计算机实现的方法、计算机程序产品和系统。给出以下描述以使任意本领域技术人员能做出并使用本发明,并且在一个或多个特定实现的上下文中提供以下描述。对本领域技术人员来说,对公开的实现的各种修改将是非常明显的,并且本文定义的一般原理可以应用于其他实现和应用而不脱离本公开的范围。因此,本公开不打算限制描述和/或示出的实施例,而是符合与本文公开的原理和特征一致的最宽的范围。
在当前业务智能(BI)市场中,对于动态、实时数据分析的需要正在增加,该分析使用仪表板以统一和简洁的方式聚集、集中和/或呈现静态或动态内容给最终用户,用于(尤其是)提高任务效率、识别积极和消极业务和/或过程趋势、产生数据相关性、增强数据分析以及改善内容对他人的呈现。仪表板还允许方便的访问用于呈现高层内容的位置然后允许最终用户向下挖掘更低层的相关内容。最终用户一般不被允许利用当前数据创建和/或增强现有的仪表板;该职责一般被分配给创造(例如,准备和更新)仪表板数据/内容以及管理用于提供仪表板数据/内容的基本数据结构(例如,数据库视图、模式等等)的信息技术(IT)专家。IT专家不能及时更新仪表板和关联数据,这可能导致过时数据,从而可能致使错过商业机会以及对于组织的其他负面影响。
使与仪表板相关联的数据立即可用于最终用户以分析和作出决定是有益的。本公开可减少在数据的生成/收集与以下能力之间的步骤的数量:用于分析数据和动态机制以推断与从多个源(诸如应用和网站)生成的仪表板数据相关联的所需的数据结构和元数据的能力。
为了本公开的目的,“雪花模式(snowflake schema)”是用于存储接收到的数据的数据库模式,其本质上多维的并且可以通过关系数据库中的多个独立因子中的任意或全部进行分析。在一些实现中,雪花模式(有时称作雪花联结模式)包括连接到许多维度表格的一个事实表格,所述许多维度表格可以连接到其他维度表格。维度表格包含与事实表格中的不同属性相关的信息,所述属性是相关联的维度表格的主关键字。事实是通过事实表格以及关联的维度表格描述的对象。由于单个中心点(事实表格)利用维度表格把范围扩展到许多方向,所以模式的图类似雪花。雪花模式标准化维度以消除冗余。即,维度数据已经被分组成多个表格而不是一个大表格。例如,在不同模式中的单个产品维度表格可以被标准化为在雪花模式中的用于时间、产品、客户以及渠道表格的维度表格。在一些实现中,以雪花模式描述维度的表格处于第三标准形式。
图1是根据实现的示例数据库模式100的例图。在该示例中,数据库模式被配置为雪花模式。事实表格102存在于雪花模式100的中间。若干维度表格104a-d附接到事实表格102。注意的是,维度表格104a-d提供与单元历史(例如,时间,产品,客户,和渠道)事实表格相关的附加的数据。事件填充事实表格,而维度表格可以通过与应用和/或网站相关联的应用编程接口(API)填充,或者数据可以来自外部源(例如,内部部署(on-premise)信息,CSV文件等等)。雪花模式100通过应用分析(AppA)202来查询以返回数据,用于利用从数据库检索的数据填充数据仪表板/可视化。在一个可能的实现中,AppA将直接使用SQL查询以从数据库检索数据;在其他实现中,它可以利用业务智能子系统(诸如业务对象,或者数据库专用业务智能视图)。虽然本公开集中于雪花模式结构的使用,但是本领域普通技术人员将了解,可以使用与本公开一致的任意适当的数据结构,特别是“星形”模式。其他适当的数据结构被认为在本公开范围内。此外,虽然本公开依据仪表板论述主题,但是任意适当的数据可视化被认为在本公开范围内。
图2是根据实现的、数据与应用分析(AppA)交互的高级例图。如图所示,AppA 202与数据库204相关联,并且通过事件向仪表板208(或者其他类型数据可视化)供应数据,所述事件一般由使用客户端应用程序(如下所述)访问的外部应用和/或网站206a供应。给定应用需要与给出数据库相关,例如通过API、静态配置机制、外部注册处理等等。在一些实现中,还可以通过内部/内部部署数据源206b(例如,客户关系管理(CRM)、企业资源计划(ERP)、BI等等)向AppA 202供应数据。如图所示,开发者可以将API合并到外部/内部数据源204a/204b中以生成关于“使用”的数据,例如,在外部网站上创建客户帐户可以触发“事件”的创建(下面更充分地描述)。接收到的数据/元数据可以动态地合并到数据库204中并且立即用于仪表板208,以允许对数据进行分析等等而无需专业人员(例如,信息技术,等等)的中间参与步骤。
以下可以示出利用AppA 202的示例客户端注册以及接收到的事件的结构。客户端注册使用API执行并且与AppA 202“注册”客户端(例如,应用,网站等等),以从客户端接收事件。样本客户端注册可以是如下结构:
//注册你的客户端。
APPA.configure("projectId","api key");
从客户端发出的、使用API利用数据填充的JSON中的示例事件结构定义(参照图1)可以是类似如下的结构:
//构建你的事实属性作为JSON对象。
var fact={
month:{id:1},
item:{id:"tablet“},
ship_to:{id:"sap"},
channel:{id:"x"},
units:256};
注意的是,提供的示例具有非常简单的形式。在其他实现中,事件将被提供有更多维度的信息。特别注意的是,事件结构应该匹配模式结构(例如,雪花,星形,等等)。当事件结构不匹配模式结构时,差异可以被解释为数据结构中的变化,并且动态地引发对于数据库模式和有关的元数据的修改。
为了向AppA 202发出填充的事件数据结构(参照图1),客户端可以(使用API)调用:
//向事实表格添加你的事件。
APPA.sendFact(“projectId”,fact);
SDK和API可以以任意合适的语言实现,例如JAVASCRIPT、ObjectiveC、JAVA等等。
被接收作为事件对象的一部分的数据被动态地存储在数据库表格中。在一些实现中,数据可以存储在若干数据库表格中(例如,图1)。注意的是,上面的示例JSON对象很接近地映射到图1中详述的数据库模式。AppA 202可以基于接收到的事件数据和元数据的结构导出和形成数据库模式的结构。在一些实现中,接收到的事件数据对象可以提供由AppA 202使用的元素(元数据,方法等等)以定义数据库模式的结构。
当接收到事件时,“输入模式”然后被种入(seed)到存储数据库模式和关联的元数据(表名、列名、类型,键、联结、表格的角色等等)的业务智能查询编译器(例如,DaSL),以用于在当被请求时运行用于检索存储在数据库中的数据的查询。例如,使用图1的示例,最终用户可以请求每月出售了多少单元,并且DaSL可以适当地检索存储在数据库中的数据。
在一些实现中,可以创建附加的视图(例如,数据库分析、计算和/或属性视图);在其他实现中,需要创建诸如业务对象域(universe)的特定元数据。DaSL输入模式可以基于这些视图或附加的元数据。这些视图/域将稍后用于执行对数据库的实际查询(例如,DaSL可以生成适当格式的查询)。这个步骤不是严格地强制的,因为DaSL还可以直接在数据库模式之上工作-在这种情况下,DaSL直接生成SQL查询。换句话说,当存在可用的BI子系统时,它将在此时建立,以便DaSL可以利用它并且产生专用查询。
AppA 202向DaSL提供适当的元数据数据(输入模式),以便DaSL理解可以在数据库上执行什么类型的查询(以及通过哪种语言/形式)。虽然未完全地示出,但是需要的元数据源自于事件本身并且由AppA 202使用以预先向DaSL通知如何在数据库中表示信息。例如,在一些实现中,AppA 202可以使用在事件对象中接收到的字段的名称来创建用于存储那些信息的数据库表格,并向DaSL通知与事件相关联的数据库模式结构,并且DaSL可以基于数据库模式的已知结构以及提供的字段名来生成适当的数据库(或BI子系统)查询。在一些实现中,直接重用字段名(例如,如果它们包含有特定数据库中不可被接受为列名的字符)是不可能的,但是无论如何,AppA 202将定义并保持字段名和列名之间的映射。举例来说,对于用ID标识(ship)的单元的查询(参照图1),DaSL将使用事实表格102的主关键字Item_ID生成访问Product_Dim表格104b的适当查询,以用于完成查询的任何必要的信息。
在一些实现中,只要存在两个结构之间的映射,数据储存器和事件结构就可以去耦(decouple)。事实情况是,输入模式更接近地映射到接收到的事件并且不同对象之间的逻辑依赖的结构还可以使得管理更清楚/可管理。DaSL查询按照需要被映射到数据结构的属性来表示,并且可以向最终用户隐藏细节。最终用户一般使用工具(参照图4)来生成对DaSL适当的查询以用于数据检索。工具引入最终用户和DaSL之间的抽象层。
图3是示出根据实现的、用于输入模式的动态生成和修改的示例分布式计算系统(EDCS)300的框图。示出的EDCS 300包括或可通信地耦接在网络330上通信的数据库服务器(DBS)302和客户端340。在一些实现中,EDCS 300的一个或多个组件可以被配置为在基于云计算的环境之内操作(如下面的图4中示出的)。
在高级别,DBS 302是可操作以使用数据库204接收、发送、处理、存储或管理与EDCS 300相关联的数据和信息的电子计算设备。在示例性实现中,数据库204是内存数据库。内存数据库204是主要依靠易失性电子存储器的高性能数据库管理系统(DBMS)以用于存储、检索和处理数据,所述易失性电子存储器是诸如随机存取存储器(RAM),而不是磁的、光学的、可移动的或其他合适的非电子存储器。在一些实现中,对电子存储器的依赖允许近实时的聚集、复制、同步和处理数据。在一些实现中,持久层确保如果发生电力或其他系统故障则内存数据库的副本保持在非易失性的磁的、光学的、可移动的或其他合适的非电子存储器中,以便允许恢复内存数据库。在其他实现中,数据库204可以是主要依赖非易失性的磁的、光学的、可移动的、或其他合适的非电子存储器以用于存储、检索和处理数据的传统的数据库。在一些实现中,数据库服务器402可以包含可以共享存储、处理、及其他适当的数据库功能的传统的数据库和内存数据库两者。
通常,DBS 302是提供应用分析能力/功能的服务器。具体地,DBS 302提供用于输入模式的动态生成和修改的功能。除此以外,DBS 302至少负责从EDCS 300的(例如,由与客户端340相关联的客户端应用346访问的)一个或多个数据源206a/b接收请求、事件和/或数据,分析并将接收到的数据存储到输入模式中,以及向最终用户工具提供数据以更新数据可视化(例如,仪表板)。除了从客户端340接收到的请求之外,请求还可以从内部用户、外部或第三方、其他自动应用、以及任意其他适当的实体、个人、系统或计算机发送给DBS 302。在一些实现中,多个请求可以从直接访问(例如,从服务器命令控制台或通过其他适当的访问方法)DBS 302的用户直接发送到DBS 302。根据一些实现,DBS 302还可以包括或可通信地耦接电子邮件服务器、网络服务器、高速缓存服务器、流数据服务器、业务智能(BI)服务器和/或其他服务器。
DBS 302的组件中的每一个可以使用系统总线303通信。在一些实现中,DBS 302的任意和/或全部组件,硬件和/或软件两者,可以使用应用编程接口(API)312和/或服务层313通过系统总线303彼此连接、和/或与接口304连接。API 312可以包括用于例程、数据结构和对象分类的规范。API 312可以或者独立于计算机语言或者依赖于计算机语言,并且涉及完整接口、单个功能、乃至API的集合。服务层313向EDCS 300提供软件服务。DBS 302的功能可以易于全部服务消费者使用此服务层。软件服务,诸如由服务层313提供的那些软件服务,通过定义的接口提供可重用的、已定义的业务功能。例如,接口可以是以可扩展标记语言(XML)格式或其他合适的格式以JAVA、C++或其他合适的语言编写的软件。
虽然示出为EDCS 300中的DBS 302的集成组件,但是替换实现可以示出API 312和/或服务层313为相对于EDCS 300的其他组件独立的组件。此外,API 312和/或服务层313的任意或全部部分可以实现为另一软件模块、企业应用或硬件模块的子模块或次模块而不脱离此公开的范围。例如,API312可以合并到AppA 202中。
DBS 302包括接口304。虽然在图3中示出为单个接口304,但是可以根据EDCS 300的特定需要、期望、或特定实现使用两个或更多接口304。接口304由DBS 302用于与包括在EDCS 300之内的、连接到网络330的分布式环境中的其他系统通信;例如,客户端340以及其他系统可通信地耦接到网络330(无论示出与否)。通常,接口304包括以合适的组合编码在软件和/或硬件中的逻辑,并且可操作与网络330通信。更具体地,接口304可以包含支持与通信相关联的一个或多个通信协议的软件,从而网络330或接口的硬件可操作以在示出的EDCS 300之内和外部传递物理信号。
DBS 302包括处理器305。虽然在图3中示出为单个处理器305,但是可以根据EDCS 300的特定需要、期望、或特定实现使用两个或更多处理器。通常,处理器305运行指令并且操作数据以执行DBS 302的操作。具体地,处理器305运行输入模式的动态生成和修改所需的功能。
DBS 302还包括存储器306,其保持用于EDCS 300的DBS 302、客户端340、和/或其他组件的数据。虽然在图3中示出为单个存储器306,但是可以根据EDCS 300的特定需要、期望、或特定实现使用两个或更多存储器。虽然存储器306示出为DBS 302的集成组件,但是在替换实现中,存储器306可以在DBS 302和/或EDCS 300外部。
在高级别中,AppA 202是提供如上所述的功能的任何种类的软件和/或硬件组件中的一个或多个,以用于基于从外部/内部数据源206a/b接收到的事件/数据动态生成和修改输入模式。AppA 202还可以被查询以提供可视化数据。AppA 202的结构更详细地描述在下面的图4中。
虽然示出为单个AppA 202,但是AppA 202可以实现为多个AppA 202。此外,虽然示出为集成到DBS 302中,但是在替换实现中,AppA 202可以在DBS 302和/或EDCS 300外部(例如,全部或部分地运行在客户端340、其他DBS 302(未示出)等等上)。
一旦特定AppA 202被启动,可以由例如EDCS 300的一个或多个工具(例如,客户端应用346)或其他组件来使用特定AppA 202,以交互地处理任务、事件、数据、请求、响应等等。在一些实现中,AppA 202可以是基于网络的、基于网络的、和/或与此公开一致的其他合适的应用。
在一些实现中,特定AppA 202可以响应于并且与从另一DBS302的组件和/或EDCS 300的任意组件(无论示出与否)接收到的至少一个请求结合而操作。在一些实现中,AppA 202可以使用网络330,在基于云的计算环境中被访问和运行。在一些实现中,特定AppA 202的一部分可以是与被远程调用的AppA 202相关联的网络服务,而特定AppA 202的另一部分可以是被封装用于通过EDCS 300的任意合适的组件处理的接口对象或代理。此外,特定AppA 202的任意或全部可以是另一软件模块或应用(未示出)的子模块或次模块而不脱离此公开的范围。更进一步,特定AppA 202的一部分可以由在DBS 302上直接地工作的用户以及在相应的客户端340上远程地工作的用户运行或访问。在一些实现中,DBS 302、或者DBS 302或EDCS 300的任意合适的组件可以运行AppA 202。
根据实现,客户端340可以是可操作以连接到或与至少DBS 302通信,并且提供用于输入模式的动态生成和修改的任意计算设备。通常,客户端340包括可操作以接收、发送、处理和存储与EDCS 300(例如,AppA 202)相关联的任意适当的数据的电子计算设备。更具体地,除此以外,客户端340可以向DBS 302上载与客户端应用146相关联的事件以用于合并到AppA202和/或数据库204中。客户端一般包括通过系统总线343接口连接的处理器344、客户端应用346、存储器348和/或接口349。
客户端应用346是允许客户端340导航到/导航自、请求、观看、创建、编辑、删除、管理、和/或操作与DBS 302相关联的内容(包括可视化数据)的任意类型的应用。例如,客户端应用346可以响应于通过客户端应用346做出的查询向最终用户呈现由AppA 202生成的可视化数据。客户端应用还可以向DBS 302发送应用/网站事件数据(外部数据206a)以用于传播到DBS302的适当的组件,特别是AppA 202和数据库204。在一些实现中,客户端应用346可以使用在启动中接收到的参数、元数据、及其他信息,以访问来自DBS 302和/或EDCS 300的其他组件的特定数据集。一旦特定客户端应用346被启动,用户可以交互地使数据可视化,并且处理与DBS 302和/或EDCS300的其他组件相关联的任务、事件、或其他信息。在一些实现中,客户端应用346还可以用于执行与AppA 202相关的管理功能(参考图4)。在一些实现中,客户端应用346可以用作以下中的一个或多个:应用/网站、管理浏览器、仪表板工具、办公生产率套件、其他数据可视化工具、和/或其他工具/应用。
在一些实现中,客户端应用346可以是本地应用。在一些实现中,客户端应用346可以是通用访问应用,例如浏览器(或包括)网页浏览器。在一些实现中,客户端应用346可以是提供通常不在非本地客户端应用346上提供的附加特征和/或功能的本地应用。本地应用一般由于更严密的安全性而在本质上是封闭的,因此允许提供非本地客户端应用346禁止提供的附加特征和/或功能。此外,虽然示出为单个客户端应用346,但是客户端应用346可以实现为客户端340中的多个客户端应用。例如,可以取决于客户端340的特定需要而存在本地客户端应用和基于网络的(例如,HTML)客户端应用,等等。例如,用户可以使用本地客户端应用346访问AppA 202,而对外部网站的访问将允许利用本地客户端应用346或者非本地客户端应用346(例如,浏览器)。
接口349由客户端340使用以用于使用网络330与包括在EDCS 300之内的分布式计算系统环境中的其他计算系统通信。例如,客户端340使用接口以与DBS 302以及可以可通信地耦接到网络330的其他系统(例如,数据源206a/b)通信。接口349可以一致于上面描述的DBS 302的接口304。处理器344可以一致于上面描述的DBS 302的处理器305。具体地,处理器344运行指令和操作数据以执行客户端340的操作,包括向DBS 302发送事件和请求、从DBS 302接收和处理响应以及可视化数据所需的功能。
存储器348一般存储与客户端340的用途相关联的对象和/或数据,但是还可以一致于上面描述的DBS 302的存储器306或EDCS 300之内的其他存储器,并且被用于存储类似存储在EDCS 300的其他的存储器中的数据以用于诸如备份、高速缓存等等之类的用途。
此外,示出的客户端340包括与EDCS 300的至少一部分连接的GUI 342以用于任意合适的目的。例如,GUI 342(示出为与客户端340a相关联)可以用于观看与客户端340、DBS 302、或EDCS 300的任意其他组件相关联的数据。特别是,在一些实现中,客户端应用346可以用作用于AppA 202和/或DBS 302的其他组件的GUI接口。
可以存在与EDCS 300相关联的,或在EDCS 300外部的许多客户端340。例如,虽然示出的EDCS 300包括使用网络330可通信地耦接到DBS 302的一个客户端340,但是EDCS 300的替换实现可以包括适于EDCS 300的目的的许多客户端340。此外,还可以存在在EDCS 300的示出的部分外部的一个或多个附加的客户端340,其能够使用网络330与EDCS 300交互。此外,术语“客户端”和“用户”可以视情况而定可互换地使用,而不脱离此公开的范围。此外,虽然按照由单个用户使用来描述客户端340,但是此公开预期许多用户可以使用一个计算机,或一个用户可以使用多个计算机。
示出的客户端340(示例配置示出为340a-340d)意图是包含任意计算设备,诸如台式计算机、膝上型/笔记本计算机、无线数据端口、智能电话、个人数字助理(PDA)、平板计算设备、执行设备之内的一个或多个处理器、或任意其他合适的处理设备。例如,客户端340可以包含包括输入设备和输出设备的计算机,输入设备诸如键区、触摸屏、或可以接受用户信息的其他设备,输出设备传送与DBS 302或客户端340本身的操作相关联的信息,包括数字数据、视觉和/或音频信息、或GUI 342,如相对于客户端340a特别示出的。
图4是示出根据实现的、图2和图3的AppA的细节的框图400。AppA202由事件收集器402、事件管理器404、管理服务406、管理组件408、查询服务410、和DaSL引擎412组成。
事件收集器402从数据源(例如,应用和/或网站346)接收事件信息并且向事件管理器404发送接收到的数据。在一些实现中,数据源与事件收集器402注册以使用上述的API向事件收集器发送事件数据。
事件管理器404和管理组件408用于分析从事件收集器402接收到的事件/数据,可选地确定与接收到的数据相关联的BI视图/域是否需要被更新,和/或检查数据库模式(例如,事实和/或维度表格)中的改变,或者如果不存在数据库模式则检查创建新的数据库模式的需要,以保存在消息中接收到的数据/元数据。如果没有检测到对于下层数据库模式的改变或者不需要新的数据库模式,则事件管理器404使用现有数据库模式将在事件/数据中接收到的数据/元数据存储到数据库204。然而,如果检测到对于下层数据库模式的改变或者需要新的数据库模式,则事件管理器404向管理组件408委派任务。管理组件408可以创建新的数据库模式,管理对现有数据库模式的改变,并且管理陈旧(obsolescence)数据、数据安全性以及事件数据/元数据的存储。例如,如果管理组件408接收需要数据库模式的修改的数据,在该数据库模式中数据的源不具有更新现有数据库模式的安全性,则该任务将被阻止。管理组件408还可以基于陈旧的数据/结构来更新数据库模式。管理组件408还可以创建/更新视图或域。管理组件408还向DaSL组件412提供包括数据的结构的输入数据库模式信息以用于存储。DaSL组件412存储这个信息以用于响应从查询服务410接收到的查询。
管理服务406被用于处理从客户端(例如,使用客户端应用346的浏览器)接收到的管理请求。管理服务406管理用于管理任务的安全性并且适当地允许/禁止任务请求。最终用户可以使用管理服务406以查看什么数据结构已经被创建,修改和/或创建新输入模式,及与此公开一致的其他适当的任务。
DaSL组件412(用作查询生成引擎)从通过查询服务410接收自一个或多个工具346的高级DaSL查询向数据库204提供服务以生成低级别的本地查询(例如,SQL或其他本地查询)。在一些实现中,DaSL组件412可以适合于不同的查询引擎类型。例如,DaSL组件412可以生成SQL以访问数据库视图、用于访问域的业务对象查询、用于直接访问数据库表格的SQL等等。在一些实现中,单个独立的DaSL查询可用于表现用于全部仪表板的数据、分析或文档。在一些实现中,查询服务410将以多个格式/协议(REST、SOAP、OData等等)接收到的查询翻译成为通用查询格式。DaSL组件412响应于接收到的DaSL查询使用来自管理组件408的存储的信息以适当结构化低级的本地查询。数据库402通过查询服务410向DaSL组件412返回之后被发送到请求者(例如,仪表板、可视化工具、办公生产率套件、应用、网站等等)的数据集。
在一些实现中,经过计算或分析的任意数据可以被建模为独立的、可重用的DaSL表达,其保留有充分的语义从而可在不同的工具346中使用。个人业务对象利用动态生成的可储存且可重用的DaSL等同(输入模式)来替换强制的预设计的模型元件(例如,分级维度、定制维度、受限制的度量、计算等等)。这种动态使得它们的定义能够即时重用。模型设计还简化到最小,并且模型中的改变可以动态地调节。使用嵌入在工具自己的表示中或从工具自己的表示中推断的DaSL构造使能跨越工具的互操作性并且鼓励白盒类型的行为。
图5是示出根据实现的、用于输入模式的动态生成和修改的方法的流程图500。为了清楚地陈述,随后的描述一般在图1、图2、图3和图4的背景下描述方法500。然而,将会理解,例如,方法500可以视情况而定通过任意其他合适的系统、环境、软件、和硬件,或者系统、环境、软件和硬件的组合执行。在一些实现中,方法500的多个步骤可以以并行、以组合、以循环、或以任意次序运行。
在502中,通过应用分析(AppA)事件收集器从内部和/或外部数据源(例如,已经与AppA注册的应用或网站)接收事件数据以向事件收集器发送事件/数据。在一些实现中,可以在向事件管理器转发该数据之前处理接收到的事件/事件数据。例如,事件收集器可以在接收到的事件数据上执行数据变换。方法500从502前进到504。
在504中,接收到的事件数据被发送到事件管理器/管理组件以用于分析。方法500从504前进到506。
在506中,确定数据库表格是否需要被创建以保存接收到的数据。在一些实现中,事件管理器可以做出该确定。在其他实现中,管理组件或事件管理器和管理组件两者的组合可以做出该确定。如果确定需要附加的数据库表格来存储接收到的数据,则方法500前进到508。如果不需要附加的数据库表格来存储接收到的数据,则方法500前进到510。
在508中,管理组件创建对于生成输入模式的必要表格以存储接收到的数据的请求。在一些实现中,管理组件可以然后启动将接收到的数据存储到创建的数据库表格中。在其他实现中,管理组件委派将数据全部或部分地存储到事件管理器。方法500从508前进到510。
在510中,在一些实现中,事件管理器可以启动将接收到的数据存储到创建的数据库表格中。在其他实现中,管理组件委派将数据全部或部分地存储到管理组件。方法500从508前进到512。
在512中,确定业务智能(BI)视图是否需要基于接收和保存的事件数据被创建/更新。在一些实现中,事件管理器可以做出该确定。在其他实现中,管理组件或事件管理器和管理组件两者的组合可以做出该确定。如果确定BI视图需要基于接收和保存的事件数据被创建/更新,则方法500前进到514。如果BI视图不需要基于接收和保存的事件数据被创建/更新,则方法500前进到516。
在业务对象域情况下,在512中,域的创建或修改被执行。创建/修改将影响输入模式的创建。查询被生成以作为业务对象查询并且由业务对象运行时(未示出)处理,而不是被生成以作为SQL语句或计算情景。
在514中,管理组件在与接收和保存的事件数据相关联的数据库中启动BI视图的更新。方法500从514前进到516。
在516中,确定输入模式是否需要基于接收和保存的事件数据被创建/更新。在一些实现中,事件管理器可以做出该确定。在其他实现中,管理组件或事件管理器和管理组件两者的组合可以做出该确定。如果确定输入模式需要基于接收和保存的事件数据被创建/更新,则方法500前进到518。如果确定输入模式不需要基于接收和保存的事件数据被创建/更新,则方法500前进到520。
在518中,管理组件基于接收和保存的事件数据启动输入模式的创建/更新,并且将存储的事件数据与创建/更新的输入模式相关联。方法500从514前进到520。
在520中,管理组件向查询响应引擎(例如,数据规范语言(DaSL)引擎)提供输入模式,以便在稍后使用以基于接收到的查询恢复所请求的数据。在520之后,方法500停止。
在此说明书中描述的主题的功能性操作的实现可以实现在数字电子线路中、在有形的具体实现的计算机软件或固件中,在计算机硬件中(包括公开在此说明书中的结构和它们的结构上的等同物),或以一个或多个它们的组合中。在此说明书中描述的主题的实现可以实现为一个或多个计算机程序,即,编码在有形的、非暂时的计算机存储介质上的计算机程序指令的一个或多个模块,以用于由数据处理设备运行或控制数据处理设备的操作。可替换地或此外,程序指令可以编码在人工生成的传播信号上,例如,机器生成的电、光、或电磁信号,其被生成以编码信息以向合适的接收器装置的发送用于由数据处理设备运行。计算机存储介质可以是机器可读的存储设备、机器可读的储存器衬底、随机或串行存取存储器设备或一个或多个它们的组合。
术语“数据处理装置”是指数据处理硬件并且包含用于处理数据的大量的装置、设备以及机器,举例来说,包括可编程处理器、计算机或多处理机或计算机。该装置还可以进一步包括专用逻辑电路图,例如,中央处理单元(CPU)、FPGA(现场可编程门阵列)、或ASIC(专用集成电路)。在一些实现中,数据处理设备和/或专用逻辑电路图可以是基于硬件和/或基于软件的。该装置可以可选地包括创建用于计算机程序的执行环境的代码,例如,构成处理器固件、协议组、数据库管理系统、操作系统、或一个或多个它们的组合的代码。本公开预期使用有或者没有传统的操作系统的数据处理设备,例如LINUX、UNIX、WINDOWS、MAC OS、ANDROID、IOS或任何其他合适的传统的操作系统。
还可以被称作或描述为程序、软件、软件应用、模块、软件模块、脚本或代码的计算机程序可以以编程语言的任何形式写入,包括汇编或解释语言,或说明或程序性语言,并且它可以以任意形成被部署,包括作为单机程序或作为适合使用在计算环境中的模块、组件、子例程或其他单元。计算机程序可以,但是不需要,相应于文件系统中的文件。程序可以存储在保持其他程序或数据的文件的部分中,例如,以标记语言文档存储的一个或多个脚本,存储在专用于所讨论的程序的单个文件中,或存储在多个坐标文件中,例如,存储一个或多个模块、子程序或代码的部分的文件。计算机程序能够部署为运行在一个计算机或一个站点处的多个计算机上或者跨越多个站点分配并且通过通信网络互联。虽然示出在多个图中的程序的部分等显示为通过多个对象、方法或其他处理实现多个特征和功能的单个模块,但是视情况而定,程序可以代之以包括多个子模块、第三方的服务、组件、程序库、等等。反之,视情况而定,多个组件的特征和功能可以组合成单个部件。
在此说明书中描述的处理和逻辑流可以由运行一个或多个计算机程序的一个或多个可编程计算机执行,以通过在输入数据上操作并且生成输出来执行功能。处理和逻辑流还可以通过专用逻辑电路图执行,并且装置还可以实现为专用逻辑电路图,例如,CPU、FPGA或ASIC。
适合于运行计算机程序的计算机可以基于通用或专用微处理器,两者,或任意其他种类的CPU。通常,CPU将从只读存储器(ROM)或随机存取存储器(RAM)或两者接收指令和数据。计算机的基本元件可以包括用于执行或运行指令的CPU以及用于存储指令和数据的一个或多个储存器件。通常,计算机还将包括,或可操作地耦接到,从一个或多个大量储存装置接收数据或传送数据到一个或多个大量储存装置以用于存储数据,或两者,例如,磁的、磁光盘或光盘。然而,计算机不需要具有这种设备。此外,计算机可以嵌入另一设备中,例如,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏机、全球定位系统(GPS)接收器,或便携式存储设备,例如,通用串行总线(USB)闪驱,仅举数例。
适合于计算机程序指令和数据的计算机可读介质(临时的或非临时的,视情况而定)包括全部形式的非易失性存储器、介质和存储器设备,举例来说,包括半导体存储器件,例如,可擦可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、以及快闪存储器件;磁盘,例如,内部硬盘或活动磁盘;磁光盘;以及CD-ROM、DVD+/-R、DVD-RAM、和DVD-ROM盘。存储器可以存储多种对象或数据,包括高速缓存、类、框架、应用、备份数据、作业、网页、网页模板、数据库表格、存储业务和/或动态信息的储存库、以及包括任意参数,变量、算法、指令、规则、约束或对其的引用的任意其他适当的信息。此外,存储器可以包括任意其他适当的数据,诸如记录、策略、安全性或访问数据、报表文件、以及其它。处理器和存储器可以通过专用逻辑电路图补充、或合并在专用逻辑电路图中。
为了提供与用户的相互,在此说明书中描述了主题的实现可以实现在具有显示设备的计算机上,例如,CRT(阴极射线管)、LCD(液晶显示器)、LED(发光二极管)、或等离子体监视器,以用于向用户显示信息,以及键盘和指示设备,例如,鼠标、跟踪球、或用户可以向计算机提供输入的触控板。也可以使用像压力敏感的平板计算机表面、使用电容或电子感测的多点触摸屏、或其他类型的触摸屏那样的触摸屏将输入提供给计算机。其他类型的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;以及来自用户的输入可以以任何形式接收,包括声音、语音或触觉输入。另外,计算机可以通过将文档发送给用户使用的设备或从用户使用的设备接收文档,例如,通过响应从万维网浏览器接收的请求,将网页发送给用户客户设备上的万维网浏览器与用户交互。
术语“图形用户界面”或GUI可以单数或复数地用于描述一个或多个图形用户界面和特定图形用户界面的每个显示器。因此,GUI可以代表处理信息和高效地向用户展示信息结果的任何图形用户界面,包括,但不限于,万维网浏览器、触摸屏、或命令行界面(CLI)。一般说来,GUI可以包括诸如交互域、下拉列表、和业务套餐用户可操作的按钮那样,一些或全部与万维网浏览器相关联的多个用户界面(UI)元件。这些和其他UI元件可以涉及或代表万维网浏览器的功能。
描述在本说明书中的主题的实现方式可以在包括后端部件,例如,作为数据服务器,包括中间部件,例如,应用服务器,或者包括前端部件,例如,具有用户可以与描述在本说明书中的主题的实现交互的图形用户界面或万维网浏览器的客户计算机,或包括一个或更多个这样的后端、中间、或前端部件的任何组合体的计算系统中实现。系统的部件可以通过有线和/或无线数字数据通信的任何形式或媒体,例如,通信网络互连。通信网络的例子包括局域网(LAN)、无线接入网络(RAN)、城域网(MAN)、广域网(WAN)、微波接入全球互通网络(WIMAX)、使用,例如,802.11a/b/g/n和/或802.20的无线局域网(WLAN)、整个或部分互联网、和/或在一个或多个地点上的任何其他一个或几个通信系统。网络可以利用,例如,网际协议(IP)分组、帧中继帧、异步传输模式(ATM)信元、语音、视频、数据、和/或网络地址之间的其他合适信息通信。
计算系统可以包括客户端和服务器。客户端和服务器一般相互远离,并且通常通过通信网络交互。客户端和服务器的关系通过运行在各自计算机上的和相互具有客户端-服务器关系的计算机程序建立起来。
在一些实现方式中,计算系统硬件和/或软件两者的任何或所有部件可以相互和/或与使用应用编程接口(API)和/或服务层的接口交接。API可以包括例程、数据结构、和对象类的规范。API可以是计算机语言无关或相关的,可以指完整接口、单一功能、或甚至一组API。服务层向计算系统提供软件服务。所有服务消费者都可以使用这个服务层访问计算系统的各种部件的功能。软件服务通过限定的接口提供可再用的、限定的商业功能。例如,该接口可以是用JAVA、C++、或以可扩展标记语言(XML)格式或其他合适格式提供数据的其他适当语言编写的软件。API和/或服务层与计算系统的其他部件的关系可以是一体的和/或独立的部件。此外,服务层的任何或所有部分可以不偏离本公开的范围地实现成另一个软件模块、企业应用或硬件模块的子或分模块。
虽然本说明书包含许多具体实现细节,但这些不应该被理解为限制任何发明的范围或可能要求保护的范围,而是作为可能是特定发明的特定实现特有的特征的描述。在独立实现的背景下描述在本说明书中的某些特征也可以在单一实现中以组合形式实现。相反,在单一实现的背景下描述的各种特征也可以在多种实现中独立地或以任何适当分组合的形式实现。此外,尽管上面可能将一些特征描述成以某种组合形式起作用和甚至最初要求这样,但所要求组合当中的一种或多种特征在一些情况下可以从该组合中分割出来,以及所要求组合可以针对分组合或分组合的变种。
类似地,虽然在附图中按特定次序描述操作,但这不应该理解为要求按所示的特定次序或顺序地执行这样的操作,或执行所有例示的操作来获得所希望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,在上述的实现中各种系统模块和部件的分离和/或合并不应该理解为在所有实现中都要求这样的分离和/或合并,而应该理解为所述程序部件和系统一般可以一起合并在单个软件产品中或打包成多个软件产品。
上面已经描述了主题的特定实现方式。对于本领域的普通技术人员来说,显而易见,所述实现方式的其他实现、变更、和置换都在所附权利要求书的范围之内。例如,列举在权利要求书中的动作可以按不同次序执行,并仍然获得所希望的结果。
因此,上面对示例性实现方式的描述不限定或约束本公开。也可以不偏离本公开的精神和范围地做出其他改变、替代、和变更。
Claims (21)
1.一种计算机实现的方法,包括:
利用事件收集器从数据源接收事件数据,该数据源与事件收集器注册以向事件收集器发送事件数据;
发送接收到的事件数据以用于分析;
保存发送的事件数据;
确定是否创建或更新业务智能视图;
基于保存的事件数据确定是否创建或更新输入模式;以及
由计算机向查询生成引擎提供描述如何在数据库中表示数据的输入模式。
2.如权利要求1所述的方法,还包括在发送事件数据以用于分析之前预处理接收到的事件数据。
3.如权利要求1所述的方法,还包括分析发送的事件数据以确定是否创建数据库表格以保存事件数据。
4.如权利要求1所述的方法,还包括创建或更新业务智能视图。
5.如权利要求1所述的方法,还包括创建或更新输入模式。
6.如权利要求1所述的方法,还包括向数据库发送查询,该查询由查询生成引擎基于与接收到的事件数据相关联的输入模式来生成。
7.如权利要求1所述的方法,还包括将接收到的查询翻译成为通用查询格式以发送到查询生成引擎。
8.一种存储计算机可读指令的非临时的、计算机可读介质,该指令可由计算机运行并且可操作以执行如下操作:
利用事件收集器从数据源接收事件数据,该数据源与事件收集器注册以向事件收集器发送事件数据;
发送接收到的事件数据以用于分析;
保存发送的事件数据;
确定是否创建或更新业务智能视图;
基于保存的事件数据确定是否创建或更新输入模式;以及
向查询生成引擎提供描述如何在数据库中表示数据的输入模式。
9.如权利要求8所述的介质,还包括可操作以在发送事件数据以用于分析之前预处理接收到的事件数据的指令。
10.如权利要求8所述的介质,还包括可操作以分析发送的事件数据来确定是否创建数据库表格以保存事件数据的指令。
11.如权利要求8所述的介质,还包括可操作以创建或更新业务智能视图的指令。
12.如权利要求8所述的介质,还包括可操作以创建或更新输入模式的指令。
13.如权利要求8所述的介质,还包括可操作以向数据库发送查询的指令,该查询由查询生成引擎基于与接收到的事件数据相关联的输入模式来生成。
14.如权利要求8所述的介质,还包括可操作以将接收到的查询翻译成为通用查询格式以发送到查询生成引擎的指令。
15.一种系统,包括:
可互操作地与存储装置耦接的至少一个计算机,该至少一个计算机被配置为:
利用事件收集器从数据源接收事件数据,该数据源与事件收集器注册以向事件收集器发送事件数据;
发送接收到的事件数据以用于分析;
保存发送的事件数据;
确定是否创建或更新业务智能视图;
基于保存的事件数据确定是否创建或更新输入模式;以及
向查询生成引擎提供描述如何在数据库中表示数据的输入模式。
16.如权利要求15所述的系统,还被配置为在发送事件数据以用于分析之前预处理接收到的事件数据。
17.如权利要求15所述的系统,还被配置为分析发送的事件数据以确定是否创建数据库表格以保存事件数据。
18.如权利要求15所述的系统,还被配置为创建或更新业务智能视图。
19.如权利要求15所述的系统,还被配置为创建或更新输入模式。
20.如权利要求15所述的系统,还被配置为向数据库发送查询,该查询由查询生成引擎基于与接收到的事件数据相关联的输入模式来生成。
21.如权利要求15所述的系统,还被配置为将接收到的查询翻译成为通用查询格式以发送到查询生成引擎。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/151,175 US9817851B2 (en) | 2014-01-09 | 2014-01-09 | Dyanmic data-driven generation and modification of input schemas for data analysis |
US14/151,175 | 2014-01-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104778196A true CN104778196A (zh) | 2015-07-15 |
CN104778196B CN104778196B (zh) | 2019-09-06 |
Family
ID=52102352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410841736.1A Active CN104778196B (zh) | 2014-01-09 | 2014-12-30 | 用于数据分析的输入模式的动态数据驱动生成与修改 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9817851B2 (zh) |
EP (1) | EP2894575A1 (zh) |
CN (1) | CN104778196B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107168982A (zh) * | 2016-03-07 | 2017-09-15 | Ls 产电株式会社 | 用于控制数据显示装置的方法 |
CN108021606A (zh) * | 2016-10-31 | 2018-05-11 | 甲骨文国际公司 | 基于对象突变事件确定系统信息 |
CN109074344A (zh) * | 2016-03-25 | 2018-12-21 | 摄取技术有限公司 | 用于基于预测模型来创建资产相关任务的计算机系统和方法 |
CN109690517A (zh) * | 2016-09-15 | 2019-04-26 | 甲骨文国际公司 | 利用微批处理管理快照和状态 |
CN110633158A (zh) * | 2018-06-21 | 2019-12-31 | Sap欧洲公司 | 在过程建模中实现同步可编辑信号的方法、系统和介质 |
CN111221869A (zh) * | 2018-11-27 | 2020-06-02 | 北京京东振世信息技术有限公司 | 一种追踪数据库事务时间和分析数据库锁的方法和装置 |
CN113287100A (zh) * | 2019-01-10 | 2021-08-20 | 微软技术许可有限责任公司 | 用于生成内存表格模型数据库的系统和方法 |
US11573965B2 (en) | 2016-09-15 | 2023-02-07 | Oracle International Corporation | Data partitioning and parallelism in a distributed event processing system |
US11726979B2 (en) | 2016-09-13 | 2023-08-15 | Oracle International Corporation | Determining a chronological order of transactions executed in relation to an object stored in a storage system |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9928562B2 (en) | 2012-01-20 | 2018-03-27 | Microsoft Technology Licensing, Llc | Touch mode and input type recognition |
US9817851B2 (en) | 2014-01-09 | 2017-11-14 | Business Objects Software Ltd. | Dyanmic data-driven generation and modification of input schemas for data analysis |
US10635645B1 (en) * | 2014-05-04 | 2020-04-28 | Veritas Technologies Llc | Systems and methods for maintaining aggregate tables in databases |
US11176106B2 (en) * | 2014-11-19 | 2021-11-16 | Unisys Corporation | Dynamic modification of database schema |
US10579601B2 (en) * | 2014-12-12 | 2020-03-03 | Aveva Software, Llc | Data dictionary system in an event historian |
US10769104B2 (en) | 2014-12-12 | 2020-09-08 | Aveva Software, Llc | Block data storage system in an event historian |
US10048856B2 (en) | 2014-12-30 | 2018-08-14 | Microsoft Technology Licensing, Llc | Configuring a user interface based on an experience mode transition |
US9612810B2 (en) * | 2015-08-25 | 2017-04-04 | International Business Machines Corporation | Profile-based per-device code optimization |
US20170075944A1 (en) * | 2015-09-11 | 2017-03-16 | Stephen E. Overman | Systems and Methods For Socializing Machines Using Autonomous Software Agents |
US11386061B2 (en) | 2015-10-16 | 2022-07-12 | Microsoft Technology Licensing, Llc | Telemetry request system |
US10929272B2 (en) * | 2015-10-16 | 2021-02-23 | Microsoft Technology Licensing, Llc | Telemetry system extension |
US11288245B2 (en) * | 2015-10-16 | 2022-03-29 | Microsoft Technology Licensing, Llc | Telemetry definition system |
WO2017078704A1 (en) * | 2015-11-04 | 2017-05-11 | Hewlett Packard Enterprise Development Lp | Dynamic schema typing |
US10783144B2 (en) | 2016-04-01 | 2020-09-22 | Arista Networks, Inc. | Use of null rows to indicate the end of a one-shot query in network switch |
US10284673B2 (en) | 2016-04-01 | 2019-05-07 | Arista Networks, Inc. | Interface for a client of a network device |
US10642844B2 (en) | 2016-04-01 | 2020-05-05 | Arista Networks, Inc. | Non-materialized tables with standing queries |
US10817512B2 (en) | 2016-04-01 | 2020-10-27 | Arista Networks, Inc. | Standing queries in memory |
US10860568B2 (en) | 2016-04-01 | 2020-12-08 | Arista Networks, Inc. | External data source linking to queries in memory |
US10783147B2 (en) | 2016-04-01 | 2020-09-22 | Arista Networks, Inc. | Query result flow control in a network switch |
US10447779B2 (en) * | 2016-06-21 | 2019-10-15 | Sap Se | Synchronizing document replication in distributed systems |
US10901833B2 (en) | 2017-12-28 | 2021-01-26 | Aveva Software, Llc | Automated recovery of execution roles in a distributed online system |
US11308088B2 (en) | 2017-12-28 | 2022-04-19 | Aveva Software, Llc | Associating comments with tags in a managed historian system |
US10109088B1 (en) * | 2017-12-28 | 2018-10-23 | Schneider Electric Software, Llc | Automated event correlation in a managed historian system |
US11016972B2 (en) | 2018-01-26 | 2021-05-25 | Vmware, Inc. | Splitting a time-range query into multiple sub-queries for serial execution |
US10860576B2 (en) | 2018-01-26 | 2020-12-08 | Vmware, Inc. | Splitting a query into native query operations and post-processing operations |
US11016971B2 (en) | 2018-01-26 | 2021-05-25 | Vmware, Inc. | Splitting a time-range query into multiple sub-queries for parallel execution |
US11144570B2 (en) | 2018-01-26 | 2021-10-12 | Vmware, Inc. | Data ingestion by distributed-computing systems |
US11178213B2 (en) | 2018-02-28 | 2021-11-16 | Vmware, Inc. | Automated configuration based deployment of stream processing pipeline |
US10812332B2 (en) | 2018-02-28 | 2020-10-20 | Vmware Inc. | Impartial buffering in stream processing |
US10824623B2 (en) | 2018-02-28 | 2020-11-03 | Vmware, Inc. | Efficient time-range queries on databases in distributed computing systems |
US10936557B2 (en) | 2018-07-26 | 2021-03-02 | International Business Machines Corporation | Relational database schema generation |
CN112988692B (zh) * | 2019-12-13 | 2024-05-07 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置 |
US20230004546A1 (en) * | 2021-07-01 | 2023-01-05 | Cogniflare Limited | Data management |
US11880365B2 (en) | 2022-03-23 | 2024-01-23 | Bank Of America Corporation | Multimodal and distributed database system structured for dynamic latency reduction |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100030783A1 (en) * | 2008-08-01 | 2010-02-04 | Sybase, Inc. | Metadata Driven Mobile Business Objects |
CN102637185A (zh) * | 2011-02-11 | 2012-08-15 | 宏碁股份有限公司 | 智能型数据管理方法及系统 |
CN102955876A (zh) * | 2011-08-11 | 2013-03-06 | 通用电气公司 | 动态备件管理的系统和方法 |
CN103026345A (zh) * | 2010-06-02 | 2013-04-03 | 惠普发展公司,有限责任合伙企业 | 用于事件监测优先级的动态多维模式 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7610300B2 (en) | 2004-11-30 | 2009-10-27 | International Business Machines Corporation | Automated relational schema generation within a multidimensional enterprise software system |
EP1684192A1 (en) * | 2005-01-25 | 2006-07-26 | Ontoprise GmbH | Integration platform for heterogeneous information sources |
US20080228695A1 (en) * | 2005-08-01 | 2008-09-18 | Technorati, Inc. | Techniques for analyzing and presenting information in an event-based data aggregation system |
US7418453B2 (en) | 2006-06-15 | 2008-08-26 | International Business Machines Corporation | Updating a data warehouse schema based on changes in an observation model |
US7970728B2 (en) | 2008-10-23 | 2011-06-28 | International Business Machines Corporation | Dynamically building and populating data marts with data stored in repositories |
US8239423B2 (en) | 2009-06-30 | 2012-08-07 | Sap Ag | System and method for semantic exposure of data stored in a dynamic schema |
TW201113731A (en) | 2009-10-15 | 2011-04-16 | Inst Information Industry | Data query method, data query system and computer readable and writable recording medium |
US8572122B2 (en) | 2011-12-29 | 2013-10-29 | Sap Ag | Data schema and language |
US9262479B2 (en) * | 2012-09-28 | 2016-02-16 | Oracle International Corporation | Join operations for continuous queries over archived views |
US9817851B2 (en) | 2014-01-09 | 2017-11-14 | Business Objects Software Ltd. | Dyanmic data-driven generation and modification of input schemas for data analysis |
-
2014
- 2014-01-09 US US14/151,175 patent/US9817851B2/en active Active
- 2014-12-08 EP EP14004140.1A patent/EP2894575A1/en not_active Ceased
- 2014-12-30 CN CN201410841736.1A patent/CN104778196B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100030783A1 (en) * | 2008-08-01 | 2010-02-04 | Sybase, Inc. | Metadata Driven Mobile Business Objects |
CN103026345A (zh) * | 2010-06-02 | 2013-04-03 | 惠普发展公司,有限责任合伙企业 | 用于事件监测优先级的动态多维模式 |
CN102637185A (zh) * | 2011-02-11 | 2012-08-15 | 宏碁股份有限公司 | 智能型数据管理方法及系统 |
CN102955876A (zh) * | 2011-08-11 | 2013-03-06 | 通用电气公司 | 动态备件管理的系统和方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107168982A (zh) * | 2016-03-07 | 2017-09-15 | Ls 产电株式会社 | 用于控制数据显示装置的方法 |
CN107168982B (zh) * | 2016-03-07 | 2023-12-12 | Ls 产电株式会社 | 用于控制数据显示装置的方法 |
CN109074344A (zh) * | 2016-03-25 | 2018-12-21 | 摄取技术有限公司 | 用于基于预测模型来创建资产相关任务的计算机系统和方法 |
US11726979B2 (en) | 2016-09-13 | 2023-08-15 | Oracle International Corporation | Determining a chronological order of transactions executed in relation to an object stored in a storage system |
CN109690517B (zh) * | 2016-09-15 | 2023-04-04 | 甲骨文国际公司 | 利用微批处理管理快照和状态 |
US11573965B2 (en) | 2016-09-15 | 2023-02-07 | Oracle International Corporation | Data partitioning and parallelism in a distributed event processing system |
US11615088B2 (en) | 2016-09-15 | 2023-03-28 | Oracle International Corporation | Complex event processing for micro-batch streaming |
CN109690517A (zh) * | 2016-09-15 | 2019-04-26 | 甲骨文国际公司 | 利用微批处理管理快照和状态 |
CN108021606B (zh) * | 2016-10-31 | 2023-09-01 | 甲骨文国际公司 | 基于对象突变事件确定系统信息 |
CN108021606A (zh) * | 2016-10-31 | 2018-05-11 | 甲骨文国际公司 | 基于对象突变事件确定系统信息 |
CN110633158A (zh) * | 2018-06-21 | 2019-12-31 | Sap欧洲公司 | 在过程建模中实现同步可编辑信号的方法、系统和介质 |
CN110633158B (zh) * | 2018-06-21 | 2024-03-29 | Sap欧洲公司 | 在过程建模中实现同步可编辑信号的方法、系统和介质 |
CN111221869A (zh) * | 2018-11-27 | 2020-06-02 | 北京京东振世信息技术有限公司 | 一种追踪数据库事务时间和分析数据库锁的方法和装置 |
CN113287100A (zh) * | 2019-01-10 | 2021-08-20 | 微软技术许可有限责任公司 | 用于生成内存表格模型数据库的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20150193477A1 (en) | 2015-07-09 |
US9817851B2 (en) | 2017-11-14 |
CN104778196B (zh) | 2019-09-06 |
EP2894575A1 (en) | 2015-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104778196A (zh) | 用于数据分析的输入模式的动态数据驱动生成与修改 | |
US10878361B2 (en) | System and method to generate interactive user interface for visualizing and navigating data or information | |
US8949789B2 (en) | Adaptable business objects | |
US9378200B1 (en) | Automated content inference system for unstructured text data | |
US20130332472A1 (en) | Deploying information reporting applications | |
CN105389251A (zh) | 结构化查询语言调试器 | |
US20130014080A1 (en) | Bulk access to metadata in a service-oriented business framework | |
US11650816B2 (en) | Workflow templates for configuration packages | |
US20160179897A1 (en) | Data extraction using object relationship templates | |
CN104885083A (zh) | 信息存储和检索的基于图形的系统和方法 | |
US11171835B2 (en) | Automated generation of an information technology asset ontology | |
CN104699742A (zh) | 使能扩展大型数据集的极端可视化 | |
US11282021B2 (en) | System and method for implementing a federated forecasting framework | |
Pinkel et al. | DataOps: seamless end-to-end anything-to-RDF data integration | |
US9262556B2 (en) | Embedded search results within the context of a process | |
Naab et al. | Why data needs more attention in architecture design-experiences from prototyping a large-scale mobile app ecosystem | |
US9875278B2 (en) | Modified data query function instantiations | |
US20140358604A1 (en) | Three-dimensional representation of software usage | |
US11204925B2 (en) | Enabling data source extensions | |
US9946804B2 (en) | Displaying historical data associated with data values within business intelligence reports | |
US9159052B2 (en) | Generalizing formats of business data queries and results | |
CN104598216B (zh) | 用于实现业务智能报告的虚拟数据写回的方法和系统 | |
US20170161359A1 (en) | Pattern-driven data generator | |
US20140047459A1 (en) | Integrating software solution units | |
US11474870B2 (en) | Transfer of embedded software data into PLM instance |
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 |