数据缓存、动态代码生成和数据可视化技术制造技术

技术编号:33625195 阅读:18 留言:0更新日期:2022-06-02 00:54
用于数据可视化的技术,其中,定义包括用于数据可视化的一个或多个钻取路径的模板,并且执行动态代码生成以针对一个或多个钻取路径构建至少一个存储过程。动态代码生成包括生成用于计算在所定义的模板中所包括的一个或多个钻取路径的数据度量字段的动态代码。数据可视化包括基于用户输入、定义的模板和至少一个存储过程,导入使用所生成的动态代码计算数据度量字段所需的源数据,以及基于生成的动态代码在缓存中缓存所导入的源数据和使用所生成的动态代码计算的数据度量字段。基于所缓存的数据生成至少一个数据结构作为用于一个或多个用户设备的数据可视化输出。多个用户设备的数据可视化输出。多个用户设备的数据可视化输出。

【技术实现步骤摘要】
【国外来华专利技术】数据缓存、动态代码生成和数据可视化技术
[0001]对相关申请的交叉引用
[0002]本申请要求2019年4月23日提交的题为“Data Caching,Dynamic Code Generation,and Data Visualization Technology”第62/837,642号美国临时申请的权益,该美国临时申请通过引用并入。


[0003]描述了用于相对大的数据集的数据缓存、动态代码生成和/或数据可视化的技术。

技术介绍

[0004]数据可视化是以图像或图形格式展示数据,并且涉及数据的可视化表示的创建和研究。数据可视化使最终用户能够看到在视觉上展示的数据分析,因此用户可以掌握有难度的概念或识别新的模式。

技术实现思路

[0005]在一些方面,本公开的主题涵盖一种用于数据可视化的方法,包括:定义包括用于数据可视化的一个或多个钻取路径(drill path)的模板(template);执行动态代码生成(dynamic code generation)以针对该一个或多个钻取路径构建至少一个存储过程,动态代码生成包括生成用于计算在所定义的模板中所包括的该一个或多个钻取路径的数据度量字段(data metric field)的动态代码;基于用户输入、所定义的模板和该至少一个存储过程,导入使用所生成的动态代码计算数据度量字段所需的源数据;在缓存(cache)中且基于所生成的动态代码来缓存所导入的源数据和使用所生成的动态代码而计算的数据度量字段;以及基于缓存数据生成至少一个数据结构作为用于一个或多个用户设备的数据可视化输出,该至少一个数据结构启用在所定义的模板中所包括的一个或多个钻取路径的数据可视化。
[0006]数据可视化的实现方案可以包括以下特征中的一个或多个。例如,在一些实现方案中,该方法还包括:通过用户接口应用程序编程接口(API)获得源数据访问;以及使用用户接口API将源数据直接摄取到工作空间中以供查看,其中用户接口API涉及用于数据处理的库(library)并且启用到一个或多个用户设备的数据可视化输出。在一些实现方案中,源数据的导入包括:将源数据存储到数据库;将存储的源数据修改为由其他用户或应用程序用于数据处理的形式;以及为存储的源数据的数据安全来注册(register)和监控一个或多个用户设备。
[0007]在一些实现方案中,一个或多个钻取路径是指穿过源数据的数据通路(data pathway),源数据被分成组、构成每个组的行和显示在每个行内的字段,并且该至少一个数据结构指定标签、格式以及源数据是出现在一个或多个钻取路径的任何级别还是仅出现在该一个或多个钻取路径的最深向下钻取级别(a most drilled down level)。在一些实现方案中,该方法还包括:在数据库中定义参考数据(reference data);以及通过用户接口
API向数据库发送指令,其中基于通过用户接口API向数据库发送的指令,从源数据中选择一个数据度量字段用于具体的数据处理目标。在一些实现方案中,数据缓存包括:将导入的源数据缩减(narrow down)到存储在缓存中的缓存数据,导入的源数据具有比存储在缓存中的缓存数据更大的大小;选择模板来定义数据过滤和数据格式重排信息;通过使用该一个或多个钻取路径定义不同的数据层次结构(data hierarchy),其中该一个或多个钻取路径中的每一个定义一数据层次结构;接收源数据信息以确定源数据布局(layout)和所生成的用于缓存的动态代码;以及基于至少一个存储过程并通过使用数据管理功能来构建缓存。在一些实现方案中,数据层次结构是数据树的格式并且包括与该一个或多个钻取路径对应的源数据组节点。在一些实现方案中,一个或多个缓存被存储在缓存中,缓存以度量字段的形式存储数据,并且该缓存是远程数据库。
[0008]在一些实现方案中,动态代码生成包括:识别用于数据可视化的源数据;基于所识别的源数据和至少一个存储过程来计算数据度量字段;确定数据分组策略;以及基于所计算的数据度量字段和所确定的数据分组策略创建动态代码来构建缓存数据。在一些实现方案中,源数据信息包括数据源、度量字段、层次结构的钻取路径和groupby语句。在一些实现方案中,基于缩减的源数据,从汇总计算、平均值计算、中值计算、最小值计算或最大值计算中的至少一个计算度量字段。
[0009]在一些实现方案中,该方法还包括:分别为该一个或多个钻取路径处理多个缓存;在一个或多个用户设备之间共享数据可视化输出;以及通过图形数据工具展示从汇总级别向下钻取的多个级别的可视化数据。在一些实现方案中,该方法还包括:将多个数据可视化输出组合成利用可视化导航的一个自定义可视化视图;以及通过使用底层缓存数据集来呈现示出了跨预选数据集的趋势(trend)的控制板(dashboard)。在一些实现方案中,该方法还包括:基于模板调整(template adjustment),重建模板以用于在数据可视化输出中预览;以及模板重建验证,包括:初始化模板的重建模型;接收模板的启用结构(enabled structure)的列表;接收多个字段的列表,这些字段包括源和度量字段、重建模型的结构字段、对重建模型的直接引用(direct reference)字段和对重建模型的父引用(parent reference)字段;以及将重建模型序列化为JSON对象以为模板计算新的散列(hash)。
[0010]在一些实现方案中,基于从模板调整生成的散列值与随时间存储的散列值的比较来确定模板重建。在一些实现方案中,基于从模板调整生成的散列值与存储在模板中的散列值相匹配,提供数据可视化输出以显示预览而不重建模板或生成缓存,以及基于从模板调整生成的散列值不同于存储在模板中的散列值,通过重新生成至少一个存储过程和缓存来在预览之前重建模板。在一些实现方案中,模板调整包括:数据源的更改,包括更改用在别处的字段的名称,当字段用在别处时更改数据类型,更改模板中使用的所计算的列值的表达式(expression),以及更改模板中使用的所计算的列值的汇总值;以及更改数据可视化输出中源数据的外观,包括颜色、大小、排序、网格(grid)、记分卡(scorecard)或控制板。在一些实现方案中,该方法还包括:通过验证API来验证用户输入以避免设计模板、生成动态代码和构建缓存中涉及的问题;以及通过用户接口工具使用至少一个数据结构来执行源数据和所计算的度量字段的可视化。
[0011]在附图和以下描述中阐述了一种或多种实现的细节。从描述、附图和权利要求中,其他方面、特征和优点将是清楚的。
附图说明
[0012]图1是示出了示例数据可视化系统的框图。
[0013]图2是示出了示例数据可视化系统中的示例数据缓存操作的框图。
[0014]图3是示出了数据可视化操作的示例处理的流程图。
[0015]图4是示出了数据缓存的示例处理的流程图。
[0016]图5是示出了动态代码生成的示例处理的流程图。
[0017]图6是示出了模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于数据可视化的方法,包括:定义模板,所述模板包括用于数据可视化的一个或多个钻取路径;执行动态代码生成以针对所述一个或多个钻取路径构建至少一个存储过程,所述动态代码生成包括生成动态代码,所述动态代码用于计算包括在所定义的模板中的所述一个或多个钻取路径的数据度量字段;基于用户输入、所定义的模板和所述至少一个存储过程,导入使用所生成的动态代码计算所述数据度量字段所需的源数据;在缓存中且基于所生成的动态代码来缓存所导入的源数据以及使用所生成的动态代码计算的所述数据度量字段;以及基于缓存数据,生成至少一个数据结构作为用于一个或多个用户设备的数据可视化输出,所述至少一个数据结构启用包括在所定义的模板中的所述一个或多个钻取路径的数据可视化。2.如权利要求1所述的方法,还包括:通过用户接口应用程序编程接口API获得源数据访问;以及使用所述用户接口API将所述源数据直接摄取到工作空间中以供查看,其中,所述用户接口API涉及用于数据处理的库,并且启用到所述一个或多个用户设备的数据可视化输出。3.如权利要求2所述的方法,其中,导入所述源数据包括:将所述源数据存储到数据库中;将所存储的源数据修改为其他用户或应用程序用于数据处理的形式;和为所存储的源数据的数据安全,注册和监控所述一个或多个用户设备。4.如权利要求1所述的方法,其中,所述一个或多个钻取路径是指穿过所述源数据的数据通路,其中,所述源数据被分成组、构成每个组的行和显示在每个行内的字段,以及其中,所述至少一个数据结构指定标签、格式以及所述源数据是出现在所述一个或多个钻取路径的任何级别还是仅出现在所述一个或多个钻取路径的最深向下钻取级别。5.如权利要求2所述的方法,还包括:在所述数据库中定义参考数据;以及通过所述用户接口API向所述数据库发送指令,其中,基于通过所述用户接口API向所述数据库发送的指令,从所述源数据中选择一个数据度量字段用于具体的数据处理目标。6.如权利要求1所述的方法,其中,数据缓存包括:将所导入的源数据缩减到存储在所述缓存中的缓存数据,所导入的源数据具有比存储在所述缓存中的所述缓存数据大的大小;选择所述模板来定义数据过滤和数据格式重排信息;通过使用所述一个或多个钻取路径来定义不同的数据层次结构,其中所述一个或多个钻取路径中的每一个钻取路径定义数据的层次结构;接收所述源数据信息以确定源数据布局和用于进行缓存的所生成的动态代码;以及基于所述至少一个存储过程并通过使用数据管理功能来构建所述缓存。
7.如权利要求6所述的方法,其中,数据的层次结构是数据树的格式,并且包括与所述一个或多个钻取路径对应的源数据组节点。8.如权利要求6所述的方法,其中,一个或多个缓存被存储在所述缓存中,所述缓存以度量字段的形式存储数据,并且其中,所...

【专利技术属性】
技术研发人员:N
申请(专利权)人:多芬风险投资有限责任公司
类型:发明
国别省市:

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1