CN114080599A - 动态归一化表中的区间 - Google Patents

动态归一化表中的区间 Download PDF

Info

Publication number
CN114080599A
CN114080599A CN202080048825.4A CN202080048825A CN114080599A CN 114080599 A CN114080599 A CN 114080599A CN 202080048825 A CN202080048825 A CN 202080048825A CN 114080599 A CN114080599 A CN 114080599A
Authority
CN
China
Prior art keywords
cloud
data
interval
based data
data warehouse
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.)
Pending
Application number
CN202080048825.4A
Other languages
English (en)
Inventor
詹森·D·弗朗茨
马克斯·H·塞登
詹姆斯·L·盖尔
约瑟夫·贝茨
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.)
Sigma Computer Co ltd
Original Assignee
Sigma Computer Co ltd
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 Sigma Computer Co ltd filed Critical Sigma Computer Co ltd
Publication of CN114080599A publication Critical patent/CN114080599A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • 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/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • 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/242Query formulation
    • G06F16/2428Query predicate definition using graphical user interfaces, including menus and forms
    • 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/242Query formulation
    • G06F16/2433Query languages
    • G06F16/2445Data retrieval commands; View definitions
    • 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/245Query processing
    • 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/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24558Binary matching operations
    • G06F16/2456Join operations
    • 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
    • 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/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP

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)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

动态归一化表中的区间包括:从客户端计算系统接收将基于云的数据仓库上的数据集的区间归一化的请求,其中所述请求包括对所述数据集的引用和数据范围;使用所述数据范围在所述基于云的数据仓库上生成区间表;将所述区间表和所述数据集连接到所述基于云的数据仓库上的连接表中;从所述基于云的数据仓库接收所述连接表;以及通过所述客户端计算系统上的图形用户界面,将所述连接表作为工作表呈现。

Description

动态归一化表中的区间
技术领域
本发明的领域是数据处理,或者更具体地说,是用于动态归一化表中的区间的方法、装置和产品。
背景技术
现代企业可以在基于云的数据仓库内的远程数据库中存储大量数据。可以使用数据库查询语言,例如结构化查询语言(SQL)来访问该数据。然而,很少有用户能够充分利用存储在数据库中的所有信息。此外,操作存储在数据库中的数据可能需要构建超出大多数用户能力的复杂查询。
发明内容
用于动态归一化表中的区间的方法、系统和装置。动态归一化表中的区间包括:从客户端计算系统接收将基于云的数据仓库上的数据集的区间归一化的请求,其中所述请求包括对所述数据集的引用和数据范围;使用所述数据范围在所述基于云的数据仓库上生成区间表;将所述区间表和所述数据集连接到所述基于云的数据仓库上的连接表中;从所述基于云的数据仓库接收所述连接表;以及通过所述客户端计算系统上的图形用户界面,将所述连接表作为工作表呈现。
本发明的上述和其它目的、特征和优点将从下面对本发明的示例性的实施方案的更具体的描述中变得显而易见,如附图中所示,其中相同的附图标记通常表示本发明的示例性的实施方案的相同部分。
附图说明
图1示出了根据本发明的实施方案的示例性系统的框图,该示例性系统被配置用于动态归一化表中的区间。
图2示出了根据本发明的实施方案的示例性系统的框图,该示例性系统被配置用于动态归一化表中的区间。
图3示出了根据本发明的实施方案的示例性图形用户界面的框图,该示例性图形用户界面系统被配置用于动态归一化表中的区间。
图4示出了流程图,其说明了根据本发明的实施方案的用于动态归一化表中的区间的示例性方法。
图5示出了流程图,其说明了根据本发明的实施方案的用于动态归一化表中的区间的示例性方法。
图6示出了流程图,其说明了根据本发明的实施方案的用于动态归一化表中的区间的示例性方法。
具体实施方式
参考附图,从图1开始,描述了用于在根据本发明的用于动态归一化表中的区间的示例性方法、装置和产品。图1示出了根据本发明的实施方案的自动计算机器的框图,该自动计算机器包括被配置为用于动态归一化表中的区间的示例性查询管理器计算系统(152)。图1的查询管理器计算系统(152)包括至少一个计算机处理器(156)或“CPU”,以及通过高速存储器总线(166)和总线适配器(158)连接到处理器(156)和查询管理器计算系统(152)的其它部件的随机存取存储器(168)(“RAM”)。
存储在RAM(168)中的是操作系统(154)。根据本发明的实施方案的被配置成用于动态归一化表中的区间的计算机中有用的操作系统包括UNIXTM、LinuxTM、MicrosoftWindowsTM、AIXTM、IBM的i OSTM;以及本领域技术人员会想到的其它操作系统。图1的示例中的操作系统(154)在RAM(168)中示出,但是这种软件的许多组件通常也存储在非易失性存储器中,例如,存储在数据存储器(170)上,例如磁盘驱动器上。查询管理器(126)也被存储在RAM中,根据本发明的实施方案,该查询管理器(126)是用于动态归一化表中的区间的模块。
图1的查询管理器计算系统(152)包括通过扩展总线(160)和总线适配器(158)耦合到处理器(156)和查询管理器计算系统(152)的其它部件的盘驱动器适配器(172)。盘驱动器适配器(172)以数据存储器(170)的形式将非易失性数据存储器连接到查询管理器计算系统(152)。根据本发明的实施方案,可用于配置成用于动态归一化表中的区间的计算机中的盘驱动器适配器包括集成驱动器电子设备(“IDE”)适配器,小型计算机系统接口(‘SCSI’)适配器,以及本领域技术人员将想到的其它适配器。如本领域技术人员可想到的,非易失性计算机存储器也可以实现为光盘驱动器,电可擦除可编程只读存储器(所谓的“EEPROM”;或“闪存”存储器),RAM驱动器等。
图1的示例性查询管理器计算系统(152)包括一个或多个输入/输出(‘I/O’)适配器(178)。I/O适配器通过例如软件驱动器和计算机硬件实现面向用户的输入/输出,用于控制对诸如计算机显示屏之类的显示设备的输出,以及来自诸如键盘和鼠标之类的用户输入设备(181)的用户输入。图1的示例性查询管理器计算系统(152)包括视频适配器(209),该视频适配器是专门设计用于图形输出到诸如显示屏或计算机监视器之类的显示设备(180)的I/O适配器的示例。视频适配器(209)通过高速视频总线(164)、总线适配器(158)和也是高速总线的前侧总线(162)连接到处理器(156)。
图1的示例性查询管理器计算系统(152)包括用于与其它计算机进行数据通信以及用于与数据通信网络进行数据通信的通信适配器(167)。这样的数据通信可以通过RS-232连接,通过诸如通用串行总线(‘USB’)之类的外部总线,通过诸如IP数据通信网络之类的数据通信网络,以及以本领域技术人员可想到的其它方式串行地执行。通信适配器实现数据通信的硬件级别,一台计算机通过该数据通信直接或通过数据通信网络发送数据通信至另一台计算机。根据本发明的实施方案的被配置成用于动态归一化表中的区间的计算机中有用的通信适配器的示例包括:用于有线拨号通信的调制解调器、用于有线数据通信的以太网(IEEE 802.3)适配器、以及用于无线数据通信的802.11适配器。
通信适配器(167)通信地耦合到广域网(190),广域网(190)还包括基于云的数据仓库(192)和客户端系统(194)。基于云的数据仓库(192)是托管用于通过广域网(190)访问的数据库的计算系统或计算系统组。客户端系统(194)是使用查询管理器计算系统(152)上的查询管理器(126)访问数据库的计算系统。
图2示出了根据本发明的实施方案的用于动态归一化表中的区间的系统的示例性框图。如图2所示,该系统包括客户端计算系统(194)、查询管理器计算系统(152)和客户端管理的基于云的数据仓库(192)。客户端计算系统(194)包括可以是查询管理器客户端的一部分的图形用户界面(GUI)(202)。查询管理器计算系统(152)包括查询管理器(126)。基于云的数据仓库(192)包括数据库(204)和模式存储位置(206)。
查询管理器(126)是硬件、软件或硬件和软件的集合,其被配置为经由GUI(GUI)接收来自客户端计算系统(194)的请求。查询管理器(126)还被配置为响应于对数据集的请求和对这些数据集的操作(例如归一化数据集的区间)来生成数据库查询。
数据库(206)是数据的集合和数据的管理系统。数据库表是来自数据库(206)的数据的集合。数据库表可以是响应于数据库查询而生成并提供给查询管理器(126)的数据的组织。数据库表可以包括组织成列和行的数据。
数据库(206)可以主要由数据库管理员访问。对数据库(206)的更改可以被密切管理,并且包括客户端计算系统(194)和查询管理器(126)的用户在内的大多数用户和实体可能仅限于对数据库(206)的只读访问。在一些基于云的数据仓库上,数据库管理员可以授予查询管理器(126)对与数据库(204)的其余部分隔离的模式存储位置(206)的读写访问权。模式存储位置(206)是基于云的数据仓库(192)上的存储位置,查询管理器(126)对其具有读取和写入访问权限。查询管理器(126)可能仅对基于云的数据仓库(192)的其余部分(包括数据库(204)中的数据集)具有只读访问权限。
查询管理器(126)可以将单个数据库查询发送到以数据库(204)和模式存储位置(206)为目标的基于云的数据仓库(192)。该查询还可以包括指令,所述指令用于在模式存储位置(206)中创建和存储元素(例如表)以及使用来自或者数据库(204)、或者在模式存储位置(206)中的表、或者两者的数据在基于云的数据仓库(192)上执行计算。
GUI(202)是被配置为从查询管理器(126)请求基于数据范围对表进行归一化的视觉呈现。GUI(202)还可以将工作表和图形元素形式的数据集呈现给客户端并且从客户端接收客户端输入。GUI可以部分地由查询管理器(126)呈现并显示在客户端计算系统(194)上(例如,在系统显示器或移动触摸屏上)。查询管理器客户端(202)可以是托管在查询管理器计算系统(152)上的互联网应用程序,并在客户端计算系统(194)上启动GUI的呈现。
图3示出了根据本发明的实施方案的用于动态归一化表中的区间的示例性图形用户界面(GUI)。如图3所示,示例性GUI(202)包括电子表格结构(302)和列表结构(304)。电子表格结构(302)包括具有六列(列A(306A)、列B(306B)、列C(306C)、列D(306D)、列E(306E)、列F(306F))的数据集(显示为空行)。
电子表格结构(302)是呈现数据集的工作表的图形元素和组织机制。工作表是来自数据库(204)的数据集的呈现。电子表格结构(302)将工作表显示为按列(列A(306A)、列B(306B)、列C(306C)、列D(306D)、列E(306E)、列F(306F))组织的数据行。这些列描述了工作表的每一行中的数据的不同类别。这些列也可以是使用工作表中的其他列的计算。
列表结构(304)是用于定义和组织数据集的列(列A(306A)、列B(306B)、列C(306C)、列D(306D)、列E(306E)、列F(306F))之间的层级关系的图形元素。术语“层级关系”是指列的下级和上级分组。例如,数据库可能包括地址簿的行,以及州、县、城市和街道的列。来自数据库的数据集可以首先按州分组,然后按县分组,然后按城市分组。因此,州列将在层级关系中处于最高级别,县列将在层级关系中处于第二级别,而城市列将在层级关系中处于最低级别。
列表结构(304)向用户呈现维度层级。具体地,列表结构(304)呈现跨至少一个维度分层排列的级别。列表结构(304)内的每一级别是列(列A(306A)、列B(306B)、列C(306C)、列D(306D)、列E(306E)、列F(306F))之间的层级关系内的位置。列表结构(304)内的关键字标识作为层级关系中的参与者的一列或多列。每个级别可能有多个关键字。
列表结构(304)中的级别之一可以是基本级别。为基本级别选择的列以最精细的粒度提供数据。列表结构(304)中的级别之一可以是总级别或根级别。为总级别选择的列提供最高粒度级别的数据。例如,总级别可以包括字段,该字段计算整个数据集的单个列内的每一行的总和(即,未被任何其他列划分)。
GUI(202)可以使用户能够将列(列A(306A)、列B(306B)、列C(306C)、列D(306D)、列E(306E)、列F(306F))拖放到列表结构(304)中。列表结构(304)的顺序可以指定列相对于彼此的层级结构。用户可以随时拖放列表结构(304)中的列以重新定义列之间的层级关系。使用选择作为列表结构(304)中的关键字的列定义的层级关系可以在图表中使用,以便向下钻取(例如,双击条)使得新的图表能够基于层级结构中较低的级别来生成。
为了进一步说明,图4阐述了说明根据本发明的实施方案的用于动态归一化表中的区间的示例性方法的流程图,该方法包括从客户端计算系统(194)接收(402)将基于云的数据仓库(192)上的数据集的区间归一化的请求(420),其中请求(420)包括对数据集的引用和数据范围。从客户端计算系统(194)接收(402)将基于云的数据仓库(192)上的数据集的区间归一化的请求(420),其中请求(420)包括对数据集的引用并且数据范围可以由查询管理器(126)通过客户端计算系统(194)的GUI(202)检测选择和输入来执行。
对数据集的引用是基于云的数据仓库(192)上的成组的数据元素的标识符。对数据集的引用可以是数据库中的表的标识符。查询管理器(126)可以经由GUI(202)呈现数据库上的表的列表并且经由GUI(202)接收多个表中的一个表的选择作为对数据集的引用。
数据范围定义了区间表的结构。数据范围可以包括最小值、最大值和区间。最小值描述了区间表的起始值。最大值描述了间隔表的最后一个值。区间描述了区间表中的行的数量和划分。例如,数据范围可以包括5月1日凌晨12点的最小值、5月2日凌晨12点的最大值以及1小时的区间。此数据范围将区间表定义为具有24行,从5月1日凌晨12点到5月2日凌晨12点之间的每小时为1行。
图4的方法还包括使用数据范围在基于云的数据仓库(192)上生成(404)区间表。使用数据范围在基于云的数据仓库(192)上生成(404)区间表可以由查询管理器(126)在基于云的数据仓库(192)上的模式存储位置存储区间表来执行。替代地,使用数据范围在基于云的数据仓库(192)上生成(404)区间表可以由查询管理器(126)使用查询语句在基于云的数据仓库(192)的动态生成(602)区间表。
使用数据范围在基于云的数据仓库(192)上生成(404)区间表可以包括生成整数行并基于数据范围转换整数。具体而言,可以使用整数形式的占位符值来生成区间表。一旦创建了满足数据范围要求的区间表,就可以根据区间转换每个整数。继续上面的示例,区间表最初可以用包含值1到24的24行生成。然后可以将第一个整数(1)转换为表示5月1日凌晨12点的值(例如,2019:05:01:00:00)。然后可以将第二个整数(2)转换为表示5月1日凌晨1点的值(例如;2019:05:01:01:00),依此类推。
图4的方法还包括将区间表和数据集连接(406)到基于云的数据仓库(192)上的连接表中。将区间表和数据集连接(406)到基于云的数据仓库(192)上的连接表中可以由查询管理器(126)使用数据集和生成的区间表执行连接操作(例如,右连接操作)来执行。对于没有来自数据集中的对应数据的区间表的行,连接操作可以存储空值。因此,连接表可以包括未包括在数据集中的至少一行。连接表可以包括用于间隔表中的每一行中的至少一行和用于数据集中的每条记录的至少一行。
使用数据范围在基于云的数据仓库(192)上生成(404)区间表并且将区间表和数据集连接(406)到基于云的数据仓库(192)上的连接表中可以包括:查询管理器(126)组成数据库查询以使用数据范围在基于云的数据仓库上生成区间表并且将区间表和数据集连接到基于云的数据仓库上的连接表中。查询管理器(126)然后可以将数据库查询发送到基于云的数据仓库。
图4的方法还包括从基于云的数据仓库(192)接收(408)连接表。从基于云的数据仓库(192)接收(408)连接表可以通过查询管理器(126)从包括连接表的基于云的数据仓库(192)接收查询响应来执行。
图4的方法还包括经由客户端计算系统(194)上的图形用户界面(202)将连接表作为工作表呈现(410)。经由客户端计算系统(194)上的图形用户界面(202)将连接表作为工作表呈现(410)可以由查询管理器(126)将连接表转换为适合通过GUI(202)呈现在工作表客户端计算系统(194)上来执行。工作表可能包括交互式元素和功能,例如对工作表进行分类和添加计算列的能力。
作为上述示例,考虑表1中的以下数据集,其中数据指示社交网络服务的新用户的注册时间。
表1
时间 用户识别码 用户位置
2019:05:01:00:00:45 IEK245698701 美国
2019:05:01:01:22:01 IEK245698702 墨西哥
2019:05:01:02:48:56 IEK245698703 加拿大
2019:05:01:03:02:42 IEK245698704 加拿大
2019:05:01:04:50:15 IEK245698705 乌克兰
2019:05:01:04:16:00 IEK245698706 美国
2019:05:01:06:00:18 IEK245698707 美国
2019:05:01:06:26:26 IEK245698708 澳大利亚
2019:05:01:06:33:12 IEK245698709 澳大利亚
2019:05:01:09:41:44 IEK245698710 墨西哥
2019:05:01:10:02:58 IEK245698711 墨西哥
2019:05:01:10:49:37 IEK245698712 瑞典
假设用户请求在从5月1日凌晨12点到5月1日中午12点的12小时时间段内对表1中的数据集进行归一化。用户参考表1中的数据集和数据范围生成请求,数据范围包括最小值2019:05:01:00:00:00和最大值2019:05:01:12:00:00和1小时的区间。使用最小值、最大值和区间,查询管理器(126)生成表2中所示的区间表。
表2
Figure BDA0003452338870000081
Figure BDA0003452338870000091
查询管理器(126)然后可以将表2的区间表与表1的数据集连接到表3所示的连接表中。
表3
Figure BDA0003452338870000092
然后表3的连接表可以由查询管理器(126)从基于云的数据仓库(192)接收并且呈现为客户端计算系统(194)的GUI(202)上的工作表。将连接表呈现为工作表可包括例如将空值转换为零或空单元格。
上述限制通过对可能缺少每个所需区间的数据的数据集的区间进行归一化来改进计算机系统的操作。具体而言,将区间表连接到数据集使得能使用数据进行更可靠的计算。例如,即使前一区间没有数据,也可以将一个区间的数据与前一区间进行准确比较。作为另一示例,即使这些区间不包括数据,也可以使用先前的区间来计算每个区间的滚动平均值。
为了进一步说明,图5阐述了说明根据本发明的实施方案的用于动态归一化表中的区间的进一步的示例性方法的流程图,该方法包括从客户端计算系统(194)接收(402)将基于云的数据仓库(192)上的数据集的区间归一化的请求(420),其中请求(420)包括对数据集的引用和数据范围;使用数据范围在基于云的数据仓库(192)上生成(404)区间表;将区间表和数据集连接(406)到基于云的数据仓库(192)上的连接表中;从基于云的数据仓库(192)接收(408)连接表;以及经由客户端计算系统(194)上的图形用户界面(202)将连接表作为工作表呈现(410)。
然而,图5的方法与图4的方法的不同之处在于,使用数据范围在基于云的数据仓库(192)上生成(404)区间表包括:将区间表存储(502)在基于云的数据仓库(192)上的模式存储位置(206)中,其中数据集在模式存储位置(206)的外部。将区间表存储(502)在基于云的数据仓库(192)上的模式存储位置(206)中,其中数据集在模式存储位置(206)的外部可以由查询管理器(126)向基于云的数据仓库(192)发送指令以在模式存储位置(206)中生成整数表来执行。然后可以根据需要将整数表转换为适当的区间。
将区间表存储(502)在基于云的数据仓库(192)上的模式存储位置(206)中,其中数据集在模式存储位置(206)的外部也可以由查询管理器(126)在查询管理器计算系统上生成区间表并将区间表传送到模式存储位置(206)来执行。查询管理器(126)可以在模式存储位置(206)中保持整数表,并在必要时将整数表重新用于新的区间表。每次使用该表时,可以将整数表转换为必要的区间。
为了进一步说明,图6阐述了说明根据本发明的实施方案的用于动态归一化表中的区间的进一步的示例性方法的流程图,该方法包括从客户端计算系统(194)接收(402)将基于云的数据仓库(192)上的数据集的区间归一化的请求(420),其中请求(420)包括对数据集的引用和数据范围;使用数据范围在基于云的数据仓库(192)上生成(404)区间表;将区间表和数据集连接(406)到基于云的数据仓库(192)上的连接表中;从基于云的数据仓库(192)接收(408)连接表;以及经由客户端计算系统(194)上的图形用户界面(202)将连接表作为工作表呈现(410)。
然而,图6的方法与图4的方法的不同之处在于,使用数据范围在基于云的数据仓库(192)上生成(404)区间表包括:使用查询语句动态生成(602)区间表。使用查询语句动态生成(602)区间表可以通过查询管理器(126)向基于云的数据仓库(192)发送查询语句以指示基于云的数据仓库(192)使用数据范围生成区间表来执行。区间表是动态生成的,因为直到在请求中接收到数据范围以对数据集的区间进行归一化时才创建区间表。
鉴于以上阐述的解释,读者将认识到根据本发明的实施方案的动态归一化表中的区间的好处包括:
·通过对可能缺少每个所需区间的数据的数据集的区间进行归一化来改进计算系统的操作,从而提高计算系统的准确性和效率。
·通过为数据集中的缺失数据动态添加行来改进计算系统的操作,使得能够使用数据集中的数据进行稳健的计算,从而提高计算系统的准确性和效率。
本发明的示例性的实施方案主要在用于动态归一化表中的区间的全功能计算机系统的上下文中描述。然而,本领域的技术人员将认识到,本发明也可以体现在设置在计算机可读存储介质上的计算机程序产品中,以与任何合适的数据处理系统一起使用。这样的计算机可读存储介质可以是用于机器可读信息的任何存储介质,包括磁性介质、光学介质或其它合适的介质。这样的介质的示例包括硬盘驱动器中的磁盘或软盘,用于光驱的光盘,磁带,以及本领域技术人员所想到的其它介质。本领域技术人员将立即认识到,具有适当编程方式的任何计算机系统将能够执行体现在计算机程序产品中的本发明的方法的步骤。本领域的技术人员还将认识到,尽管本说明书中描述的一些示例性的实施方案是针对在计算机硬件上安装和执行的软件,然而,实现为固件或硬件的替代的实施方案也完全在本发明的范围之内。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或媒介)。
计算机可读存储介质可以是有形设备,其可以保留和存储由指令执行设备使用的指令。所述计算机可读存储介质可以是,例如,但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或前述设备的任何适当组合。计算机可读存储介质的更具体示例的非穷举列表包括以下项:便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD-ROM)、数字通用盘(DVD),存储棒、软盘、例如在其上记录有指令的打孔卡或凹槽中的凸起结构之类的机械编码设备、以及上述的任何适当组合。如本文所使用的,计算机可读存储介质,不应被解释为本身是瞬时信号,例如无线电波或其它自由传播的电磁波,通过波导或其它传输介质传播的电磁波(例如,通过光纤电缆的光脉冲),或通过导线传输的电信号。
这里描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络(例如因特网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。该网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明操作的计算机可读程序指令可以是汇编器指令,指令集体系结构(ISA)指令,机器指令,机器相关指令,微码,固件指令,状态设置数据,或者用一种或多种编程语言(包括面向对象的编程语言,例如Smalltalk,C++等)和常规过程编程语言(例如,“C”编程语言或类似编程语言)的任意组合来编写的源代码或目标代码。计算机可读程序指令可以完全在用户的计算机上执行,作为独立的软件包,部分在用户的计算机上执行,部分在用户的计算机上且部分在远程计算机上执行,或全部在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以进行到外部计算机的连接(例如,通过使用互联网服务提供商的互联网)。在一些实施方案中,包括(例如)可编程逻辑电路,现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)在内的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令,以使电子电路个性化,从而执行本发明的各个方面。
参考根据本发明的实施方案的方法、装置(系统)和计算机程序产品的流程图和/或框图来描述本发明的各方面。应当理解,流程图图示和/或框图的每个框,以及流程图图示和/或框图中的框的组合,可以通过计算机可读程序指令来实现。
这些计算机可读程序指令可以被提供给通用计算机的处理器,专用计算机或其它可编程数据处理装置,以产生机器,使得经由计算机的处理器或其它可编程数据处理装置执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令也可以被存储在能够引导计算机、可编程数据处理设备和/或以特定方式工作的其它设备的计算机可读存储介质中,使得其中存储有指令的计算机可读存储介质包括制造的产品,该制造的产品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的方面的指令。
计算机可读程序指令也可以加载到计算机,其它可编程数据处理装置,或使一系列操作步骤在计算机上执行的其它设备,用于产生计算机实现的过程的其它可编程设备或其它装置上,使得在计算机、其它可编程装置或其它设备上执行的指令实现流程图和/或框图的一或多个框中指定的功能/动作。
图中的流程图和框图示出了根据本发明的各种的实施方案的系统、方法和计算机程序产品的可能实现方式的体系结构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。在一些替代的实现方式中,框中指出的功能可以不按照图中指出的顺序发生。例如,实际上根据所涉及的功能,连续示出的两个框可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还将注意到,框图和/或流程图图示的每个框,以及框图和/或流程图图示中的框的组合,可以由执行指定功能或动作或者执行专用硬件和计算机指令的组合的基于专用硬件的系统来实现。
从前面的描述中应当理解,在不偏离本发明的真实精神的情况下,可以在本发明的各种实施方案中进行修改和改变。本说明书中的描述仅是为了说明的目的,而不应被解释为限制性的。本发明的范围仅由所附权利要求的语言限定。

Claims (20)

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所述的计算机程序产品,其中,所述数据范围包括最小值、最大值和区间。
CN202080048825.4A 2019-05-01 2020-04-30 动态归一化表中的区间 Pending CN114080599A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962841495P 2019-05-01 2019-05-01
US62/841,495 2019-05-01
PCT/US2020/030888 WO2020223580A1 (en) 2019-05-01 2020-04-30 Dynamically normalizing intervals in a table

Publications (1)

Publication Number Publication Date
CN114080599A true CN114080599A (zh) 2022-02-22

Family

ID=70918974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080048825.4A Pending CN114080599A (zh) 2019-05-01 2020-04-30 动态归一化表中的区间

Country Status (4)

Country Link
US (1) US11567955B2 (zh)
EP (1) EP3953854A1 (zh)
CN (1) CN114080599A (zh)
WO (1) WO2020223580A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022221585A1 (en) * 2021-04-15 2022-10-20 Sigma Computing, Inc. Data visualization with derived dimensional hierarchy
US20230153295A1 (en) * 2021-11-18 2023-05-18 Sigma Computing, Inc. Prefetching query results using expanded queries
US20230401205A1 (en) * 2022-06-10 2023-12-14 Capital One Services, Llc Methods of data sharing across cloud regions and cloud platforms of cloud-based data warehousing systems s

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013312B2 (en) * 2001-06-21 2006-03-14 International Business Machines Corporation Web-based strategic client planning system for end-user creation of queries, reports and database updates
US7707490B2 (en) * 2004-06-23 2010-04-27 Microsoft Corporation Systems and methods for flexible report designs including table, matrix and hybrid designs
US7720652B2 (en) * 2004-10-19 2010-05-18 Microsoft Corporation Modeling location histories
US20060112123A1 (en) * 2004-11-24 2006-05-25 Macnica, Inc. Spreadsheet user-interfaced business data visualization and publishing system
US20130041874A1 (en) * 2011-08-10 2013-02-14 Susan M. Dohm Interactive documentation system for database parameters
US20140244573A1 (en) * 2013-02-27 2014-08-28 Allan Michael Gonsalves Data warehouse with cloud fact table
US20150242531A1 (en) * 2014-02-25 2015-08-27 International Business Machines Corporation Database access control for multi-tier processing
US9483545B2 (en) * 2014-05-30 2016-11-01 International Business Machines Corporation Grouping data in a database
US20170262507A1 (en) * 2016-03-10 2017-09-14 International Business Machines Corporation Feedback mechanism for query execution
US10303401B2 (en) * 2017-01-26 2019-05-28 International Business Machines Corporation Data caching for block storage systems
US10698873B2 (en) * 2017-03-30 2020-06-30 Microsoft Technology Licensing, Llc Performance data storage

Also Published As

Publication number Publication date
US11567955B2 (en) 2023-01-31
WO2020223580A1 (en) 2020-11-05
US20200349156A1 (en) 2020-11-05
EP3953854A1 (en) 2022-02-16

Similar Documents

Publication Publication Date Title
CN114080599A (zh) 动态归一化表中的区间
US11762847B2 (en) Generating a database query using a dimensional hierarchy within a graphical user interface
US20200301938A1 (en) Cross-organization worksheet sharing
US11455079B2 (en) Nested pagination for presenting a data set in a graphical user interface
US20200334243A1 (en) Generating a database query to dynamically aggregate rows of a data set
US11886432B2 (en) Managing database queries using a deconstructed cloud database
US11989183B2 (en) Linking data sets
CN114051613A (zh) 在连接来自数据库的工作表时保持行的基数
US11934404B2 (en) Servicing database requests using canonicalized tables
US11954087B2 (en) Servicing database requests using derivations of canonicalized tables
US11494400B2 (en) Servicing database requests using subsets of canonicalized tables
US11886456B2 (en) Creating a model data set using a spreadsheet interface
US20230334237A1 (en) Workbook template sharing
US20210248132A1 (en) Tracking errors in data set lineage
US11556529B2 (en) Top frequency worksheet filtering
US20230145697A1 (en) Remote storage of sensitive data for editable tables

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination