CN105408883B - 数据库表列注解 - Google Patents

数据库表列注解 Download PDF

Info

Publication number
CN105408883B
CN105408883B CN201380076133.0A CN201380076133A CN105408883B CN 105408883 B CN105408883 B CN 105408883B CN 201380076133 A CN201380076133 A CN 201380076133A CN 105408883 B CN105408883 B CN 105408883B
Authority
CN
China
Prior art keywords
row
data
value
database
different value
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
CN201380076133.0A
Other languages
English (en)
Other versions
CN105408883A (zh
Inventor
H.B.N.特兰
L.斯里尼瓦斯
K.M.曼恩
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.)
Weifosi Co., Ltd
Original Assignee
Antite Software 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 Antite Software Co Ltd filed Critical Antite Software Co Ltd
Publication of CN105408883A publication Critical patent/CN105408883A/zh
Application granted granted Critical
Publication of CN105408883B publication Critical patent/CN105408883B/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/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; 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/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/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/23Updating
    • G06F16/2379Updates performed during online database operations; commit 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/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24542Plan optimisation
    • G06F16/24545Selectivity estimation or determination
    • 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/24564Applying rules; Deductive queries
    • G06F16/24565Triggers; Constraints

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Operations Research (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

根据一个示例,数据库约束生成可以包括:接收与数据库中表有关的数据,分析该数据以确定针对该表的列的行计数,以及分析该数据以确定针对该表的列的不同值数目。可以通过将行计数与不同值数目进行比较来确定该比较值。该数据库约束生成还可以包括确定该比较值是否在阈值内。如果该比较值在阈值内,注释可以被添加到该表的列,使得在涉及该表的基数估计过程期间,该列被看作是唯一的。

Description

数据库表列注解
背景技术
数据库(诸如关系数据库)通常包括用于响应于查询而被分析的表。例如,对于关系数据库,通常使用关系模型形式上描述和组织数据项的表的集合。表可以包括列约束,诸如唯一键(unique key)、主键(primary key)或外键(foreign key)。例如,唯一键可以包括表中数据实体的一个或多个数据属性。主键可以唯一指定表内的元组(tuple),因为,主键唯一地定义表的每一行的特性。外键是与另一个表的主键列相匹配的关系表中的字段。
附图说明
本公开的特征在以下的(多个)图中通过示例的方式来图示,并且不局限于该(多个)图中,其中相同的数字指示相同的要素,其中:
图1图示了根据本公开的示例的数据库约束生成设备的架构;
图2图示了根据本公开的示例的商店表;
图3图示了根据本公开的示例的销售额表;
图4图示了根据本公开的示例的供应项表;
图5图示了根据本公开的示例的在图2的商店表和图3的销售额表之间的联结(join)后的中间结果;
图6图示了根据本公开的示例的在图2的商店表和图4的供应表之间的联结后的中间结果;
图7图示了根据本公开的示例的用于数据库约束生成的方法;以及
图8图示了根据本公开的示例的计算机系统。
具体实施方式
为了简单和说明性的目的,通过主要参照示例来描述本公开。在以下描述中,阐述了众多具体细节以便提供对本公开的透彻理解。然而,将显而易见的是,可以在不限于这些具体细节的情况下实践本公开。在其他实例中,尚未详细描述的一些方法和结构以免不必要地使本公开晦涩。
遍及本公开,术语“一”和“一个”意在表示特定要素中的至少一个。如本文所使用的,术语“包括”意指包括但不限于,术语“包括了”意指包括了但不限于。术语“基于”意指至少部分地基于。
对于通常包括用于响应于查询而被分析的表的数据库(诸如关系数据库),关于表列约束的信息(例如唯一键、主键和外键)通常对于优化查询性能而言是需要的。当这样的表被填充时,添加表列约束可能是繁重的。因此,表生成者(例如,用户)可能避免在数据库设计期间使用这种表列约束,或者无法将现有约束作为部分输入数据导出到数据库。如果有意或者无意地省略这样的表列约束,则确定对于查询性能方面降低的确切原因以及通过添加表列约束来对该情况进一步补救可能是具有挑战性且耗时的。
根据一个示例,在本文中公开了一种数据库约束生成设备以及一种用于数据库约束生成的方法。本文所公开的装置和方法可以推断出表注释,其在下文称为“软唯一(soft-unique)约束”。本文所公开的设备和方法还可以使用该推断结果来指导数据库中的查询规划,从而显著提高查询性能。
根据一个示例,该数据库约束生成设备可包括存储器,其存储用以进行下述操作的机器可读指令:接收与数据库中的表有关的数据,分析所述数据以确定针对所述表的列的行计数,以及分析所述数据以确定针对所述表的列的不同值数目。所述存储器还可以存储用以进行下述操作的机器可读指令:通过将所述行计数和所述不同值数目进行比较来确定比较值,以及确定所述比较值是否在阈值内。如果比较值在阈值内,则可以将注释添加到所述表的列,以在对所述列的数据插入或更新时限制所述列的唯一属性的实施。所述数据库约束生成设备可以包括用以实现所述机器可读指令的处理器。
根据另一示例,用于数据库约束生成的方法可以包括:接收与数据库中表有关的数据,分析所述数据以确定针对所述表的列的行计数,以及分析所述数据以确定针对所述表的列的不同值数目。可以通过将所述行计数与所述不同值数目进行比较来确定比较值。所述方法还包括确定所述比较值是否在阈值内。如果所述比较值在阈值内,则可以将注释添加到所述表的列,使得在涉及所述表的基数估计过程期间将所述列看作是唯一的。
图1图示了根据一个示例的数据库约束生成设备100的架构。参照图1,设备100被描绘为包括数据库分析模块101,其用以从例如与表103(即表1-N)有关的数据库102接收数据。行计数确定模块104可以分析表103,以确定针对每个表103的行计数。不同值数目确定模块105可以分析表103,以确定针对每个表103的每一列的不同值数目。替换地,行计数确定模块104和不同值数目确定模块105可以对数据库102的表103和/或所选的列执行相应的分析。行计数和不同值数目比较模块106可以通过将针对来自表103的一个表的特定列的行计数和不同值数目进行比较来确定针对该特定列的数据是否是唯一的。注释添加模块107可以从行计数和不同值数目比较模块106接收比较数据,并且确定接收到的比较数据是否在阈值108内。这样,注释添加模块107可以确定从行计数确定模块104接收到的行计数是否在从不同值数目确定模块105接收到的不同值数目的预定阈值百分比内(即阈值108内)。此外,可以基于与行计数和不同值数目之间的百分比差(例如,5%的差)有关的用户输入来配置阈值108。如果接收到的比较数据在阈值108内,则注释添加模块107可以添加表注释109,其在下文被称为对适当列(即,下述列:在该列处行计数与所估计的不同值数目近似匹配(即在阈值108之内))的软唯一约束。
模块101和104-107以及设备100的执行设备100中各种其他功能的其他组件,可以包括存储在非临时性计算机可读介质上的机器可读指令。此外,或替代地,模块101和104-107,以及设备100的其他组件可以包括硬件或机器可读指令与硬件的组合。
参照图1-3,图2和3分别图示了根据本公开的示例的商店表120和销售额表140。在数据库(诸如数据库102)中,联结可被用于过滤数据。例如,参照商店表120和销售额表140,按季度得出针对马塞诸塞州(MA)中所有商店的平均销售额可能涉及到在针对马塞诸塞州商店的过滤的情况下的商店表120和销售额表140之间的联结。对于这样的查询,外键-主键(FK-PK)约束可能是查询优化器用来估计基数(即,联结结果的基数)的属性。针对商店表120和销售额表140的基数基于针对这些表的行数分别为5和7。对于存储表120,主键为ID列,其包括唯一的ID 1-5。此外,对于销售额表140,外键是商店ID(store_ID)列,其引用商店表120的ID列。
FK-PK联结可以被指定为多对一(m-1)联结,不管所涉及的PK-表的大小如何,其基数不高于所涉及的FK-定义的表的基数。例如,对于存储表120和销售额表140,马萨诸塞州的销售记录数量不能高于销售记录的总数。在没有对联结列的约束的情况下,该联结可以变为多对多(m-m)联结,其基数可以高达两个所涉及的表的笛卡尔乘积(即,行的乘积)。 m-1联结的基数估计一般被看作比m-m联结的基数估计更准确。对于将成为m-1联结的联结,该表需要在联结列上是唯一的(例如,商店表120)。然而,表的列不需要被定义为主键,或者其他表的列不需要被定义为外键。
再次参照图1-3和5, 图5图示了根据本公开的示例的在完成由列“名称(Name)”和“州(State)”所分组的“合计(价格)”之前,在商店表120和销售额表140之间的联结后的中间结果。为了使用商店表120和销售额表140来确定针对每个商店的总销售额(即表160)的值,商店表120和销售额表140可以通过以下SQL查询来被处理:
Select state, name, sum (price)
From store, sales
Where store.id = sales.store_id
Group by name, state。
得到的每个商店的总销售额可以包括7行(即基于多对一(m-1)联结)。换句话说,对于每个商店的总销售额表160,对于多对一联结,无论所涉及的PK-表(例如,商店表120)的大小如何,基数(例如7)不高于所涉及的FK-定义的表(例如,销售额表140 )的基数。参照每个商店的总销售额表160,结果(即州、名称、总计(价格))如下:
1) MA, S1, ((52 + 11 + 100) = 163)
2) MA, S2, 10
3) NH, S1, 20
4) NH, S2, 50
5) NH, S4, 25。
再次参照图1-3、4 和6,图4和6分别图示了根据本公开的示例的供应项表180以及在完成由列“名称”分组的合计(# 供应项(#supply_items))之前,在商店表120和供应表180之间的联结后的中间结果。供应项表180包括7行。此外,对于供应项表180,表180中的值基于下述假设:相同名称商店将在同一天收到相同数目的供应项(supply_items)。为了确定针对相同名称商店处的总供应项表200的值,商店表120和供应项表180可以通过以下SQL查询来被处理:
Select sum (# supply_items)
From store, supply_item
Where store.name = supply_item.name
Group by name。
得到的相同名称商店处的总供应项表200可以包括13行(即基于多对多(m-m)联结)。然而,由于这是多对多联结,该多对多联结的基数可以高达35(即用于商店表120的5行乘以用于供应项表180的7行)。用于这个示例的多对多联结的基数13与最高可能基数35是显著不同的。参照相同名称商店处的总供应项表200,结果如下:
1) S1, ((300 + 300 + 200 + 200 + 500 + 500 + 400 + 400) = 2800)
2) S2, ((1000 + 1000 + 100 + 100 ) = 2200)
3) S4, 50。
基于参照图2-6的上述示例,在没有针对商店表120、销售额表140和/或供应项表180的FK-PK约束的情况下(即在适当的时候),使用这些表的联结可以变为m-m联结。例如,如上文所讨论的,在没有对联结列的约束的情况下,该联结可以变为多对多(m-m)联结,其基数可以高达两个所涉及的表的笛卡尔乘积,并且因此例如通过不正确地估计该联结的基数而延迟查询处理。
为了标识FK-PK约束,包括唯一数据的表103的列可以由数据库分析模块101来标识。例如,数据库分析模块101可以分析数据库102的表103上的统计信息。更特别地,数据库分析模块101可以从所有列采样数据并构建直方图来捕获数据分布。这一过程可以用于收集每一列的不同值数目和行计数。基于统计信息的分析,如果特定列的不同值数目和行计数是相等的,则该列的数据可以被确定为是唯一的。因此,可以在这样的列上创建主键或唯一键约束。例如,对于商店表120、销售额表140和供应项表180的前述示例,数据库分析模块101可以分析这些表上的统计信息。这一过程可以用来收集商店表120、销售额表140和供应项表180的每一列的不同值数目和行计数。在分析统计信息后,如果特定列的不同值数目和行计数是相等的,则该列的数据(例如,商店表120的ID列)可以被确定为是唯一的。
然而,如果从数据的样本计算针对列的不同值数目,则这样的计算可能包括不准确性。例如,采样过程可能省略了几个重复值。此外,即使在分析统计信息时列中的所有数据是唯一的,该数据在附加数据插入到表中之后也可能不会保持唯一。例如,对于商店表120的前述示例,假设商店表120的ID列包括100行,并且针对ID列的不同值数目是从数据的样本(例如50行)所计算的,则这样的计算可能包括不准确性(例如,如果其他50行中的某些行包括重复ID)。
为了解决例如与几个重复值的省略和附加数据的插入有关的前述方面,通过考虑在基数估计过程期间唯一的列,并且在对表的特定列的插入或更新时进一步限制唯一属性(例如唯一键或主键)的实施,注释添加模块107可以在表(例如,表103中的一个)的列上添加注释。例如,在联结结果的基数估计过程期间,列可以被看作是唯一的。例如,对于商店表120的前述示例,假设商店表120的ID列包括100行,对于这100行,某些行包括重复的ID,在针对联结结果的基数估计过程期间,ID列可以被看作是唯一的。此外,对于商店表120的前述示例,再次假设商店表120的ID列包括100行,在对ID列的插入或更新时唯一属性(例如唯一键或主键)不被实施。而是,注释添加模块107可以在表的列(例如,可能包括重复的用于商店表120的ID列)上添加注释。
注释添加模块107还可以在行计数与所估计的不同值数目近似匹配(即在阈值108之内)的列上添加注释。阈值108可以是用户可配置的或基于表103中数据的类型所预先确定的。例如,用户可以将阈值108配置在近似5%,使得注释添加模块107可以在行计数在所估计的不同值数目的近似5%之内的列上添加注释。
图7图示了用于数据库约束生成的方法300的流程图,该方法300对应于其构造在上文中被详细描述的数据库约束生成设备100的示例。方法300可以以示例而非限制的方式被实现在关于图1的数据库约束生成设备100上。方法300可以实践于其他设备中。
参照图7,对于方法300,在块301处,可以接收与数据库中的表有关的数据。例如,参照图1,数据库分析模块101可以从例如与表103(即表1-N)有关的数据库102接收数据。
在块302处,可以分析该数据以确定针对该表的列的行计数。例如,参照图1,行计数确定模块104可以分析表103以确定针对每个表103的行计数。
在块303处,可以分析该数据以确定针对该表的列的不同值数目。例如,参照图1,不同值数目确定模块105可以分析表103以确定针对每个表103的每一列的不同值数目。
在块304处,可以通过将行计数与不同值数目进行比较来确定比较值。例如,参照图1,行计数和不同值数目比较模块106可以通过将针对来自表103的一个表的特定列的行计数和不同值数目进行比较来确定针对该特定列的数据是否是唯一的。通过将行计数与不同值数目进行比较来确定比较值还可以包括基于行计数和不同值数目之间的差来将比较值确定为百分数值。
在块305处,做出比较值是否在阈值内的确定。例如,参照图1,注释添加模块107可以从行计数和不同值数目比较模块106接收比较数据,并且确定接收到的比较数据是否在阈值108内。阈值可以近似大于0%,或者可以基于与行计数和不同值数目之间的百分比差有关的用户输入来配置。
在块306处, 如果比较值在阈值内,则注释可以被添加到该表的列,使得在涉及该表的基数估计过程期间,该列被看作是唯一的。例如,参照图1, 如果接收到的比较数据在阈值108内,则注释添加模块107可以在行计数与所估计的不同值数目近似匹配(即在阈值108之内)的适当列上添加注释109(即软唯一约束)。将注释添加到该表的列还可以包括在对该列的数据插入或更新时,限制该列的唯一属性的实施。在对该列的数据插入或更新时限制该列的唯一属性的实施还可以包括在对该列的数据插入或更新时,限制该列的唯一键或主键的实施。
图8示出了可以与本文所描述的示例一起使用的计算机系统400。计算机系统表示一个通用平台,其包括可以处于服务器或其他计算机系统中的组件。计算机系统400可以用作用于设备100的平台。计算机系统400可以由本文所描述的处理器或其他硬件处理电路、方法、功能和其他过程来执行。这些方法、功能和其他过程可以被体现为存储在计算机可读介质上的机器可读指令,该计算机可读介质可以是非临时性的,诸如硬件存储装置(例如,RAM(随机存取存储器)、ROM(只读存储器)、EPROM(可擦除可编程ROM)、EEPROM(电可擦除可编程ROM)、硬盘驱动器、和闪存)。
计算机系统400包括处理器402,其可以实现或者执行机器可读指令,该机器可读指令实行本文所描述的方法、功能和其他过程中的一些或全部。来自处理器402的命令和数据通过通信总线404来传送。计算机系统还包括主存储器406和副数据存储装置408,该主存储器406诸如是随机存取存储器(RAM),在那里,用于处理器402的机器可读指令和数据可以在运行时间期间驻留,该副数据存储装置408可以是非易失性的并且存储机器可读指令和数据。存储器和数据存储装置是计算机可读介质的示例。存储器406可以包括数据库约束生成模块420,该数据库约束生成模块420包括运行时间期间驻留在存储器406中且由处理器402执行的机器可读指令。数据库约束生成模块420可以包括图1中所示的设备的模块101和104-107。
计算机系统400可以包括I / O装置410,诸如键盘、鼠标、显示器等。计算机系统可以包括用于连接到网络的网络接口412。在计算机系统中其他已知的电子组件可以被添加或被取代。
本文所已经描述和说明的是示例以及其一些变化。本文所使用的术语、描述和附图仅通过说明的方式来阐述,并且不意味着限制。在本主题的精神和范围内许多变化是可能,本主题的精神和范围意图由所附权利要求(以及其等同方式)来限定,权利要求中的所有术语以其最宽泛的合理意义来表示含义,除非另有指示。

Claims (15)

1.一种用于数据库约束生成的方法,所述方法包括:
接收与数据库中的表有关的数据;
分析所述数据以确定针对所述表的列的行计数;
分析所述数据以确定针对所述表的列的不同值数目;
通过将所述行计数与所述不同值数目进行比较来确定比较值;
确定所述比较值是否在阈值内;以及
如果所述比较值在阈值内,由处理器将注释添加到所述表的列,使得在涉及所述表的基数估计过程期间,所述列被看作是唯一的。
2.如权利要求1所述的方法,其中,将所述注释添加到所述表的列还包括:
在对所述列的数据插入或更新时限制所述列的唯一属性的实施。
3.如权利要求2所述的方法,其中在对所述列的数据插入或更新时限制所述列的唯一属性的实施还包括:
在对所述列的数据插入或更新时,限制所述列的唯一键或主键的实施。
4.如权利要求1所述的方法,其中分析所述数据以确定针对所述表的列的不同值数目还包括:
分析所述数据以确定针对所述表的每一列的不同值数目。
5.如权利要求1所述的方法,其中通过将所述行计数与不同值数目进行比较来确定比较值还包括:
基于所述行计数和不同值数目之间的差来将所述比较值确定为百分数值。
6.根据权利要求1所述的方法,其中,所述阈值近似大于0%。
7.如权利要求1所述的方法,还包括:
基于与所述行计数和不同值数目之间的百分比差有关的用户输入来配置所述阈值。
8.一种数据库约束生成设备,包括:
存储器,其存储用以进行以下操作的机器可读指令:
接收与数据库中的表有关的数据;
分析所述数据以确定针对所述表的列的行计数;
分析所述数据以确定针对所述表的列的不同值数目;
通过将所述行计数与所述不同值数目进行比较来确定比较值;
确定所述比较值是否在阈值内;以及
如果比较值在阈值内,则将注释添加到所述表的列,以便在对所述列的数据插入或更新时限制所述列的唯一属性的实施;以及
处理器,用以实现所述机器可读指令。
9.如权利要求8所述的数据库约束生成设备,其中为了将注释添加到所述表的列,所述机器可读指令还用以:
在涉及所述表的基数估计过程期间将所述列看作是唯一的。
10.如权利要求8所述的数据库约束生成设备,其中为了在对所述列的数据插入或更新时限制所述列的唯一属性的实施, 所述机器可读指令还用以:
在对所述列的数据插入或更新时,限制所述列的唯一键或主键的实施。
11.如权利要求8所述的数据库约束生成设备,其中为了分析所述数据以确定针对所述表的列的不同值数目, 所述机器可读指令还用以:
分析所述数据以确定针对所述表的每一列的不同值数目。
12.如权利要求8所述的数据库约束生成设备,其中为了通过将所述行计数与所述不同值数目进行比较来确定比较值, 所述机器可读指令还用以:
基于所述行计数与所述不同值数目之间的差来将所述比较值确定为百分数值。
13.如权利要求8所述的数据库约束生成设备,其中,所述阈值近似大于0%。
14.如权利要求8所述的数据库约束生成设备,所述机器可读指令还用以:
基于与所述行计数和不同值数目之间的百分比差有关的用户输入来配置所述阈值。
15.一种非临时性计算机可读介质,具有存储于其上的机器可读指令以提供数据库约束生成,所述机器可读指令在被执行时使计算机进行以下操作:
接收与数据库中的表有关的数据;
分析所述数据以确定针对所述表的列的行计数;
分析所述数据以确定针对所述表的列的不同值数目;
通过将所述行计数与所述不同值数目进行比较来确定比较值;
确定所述比较值是否在阈值内;以及
如果所述比较值在阈值内,由处理器将注释添加到所述表的列,以便:
在对所述列的数据插入或更新时限制所述列的唯一属性的实施,以及
在涉及所述表的基数估计过程期间将所述列看作是唯一的。
CN201380076133.0A 2013-04-30 2013-04-30 数据库表列注解 Active CN105408883B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/038842 WO2014178843A1 (en) 2013-04-30 2013-04-30 Database table column annotation

Publications (2)

Publication Number Publication Date
CN105408883A CN105408883A (zh) 2016-03-16
CN105408883B true CN105408883B (zh) 2018-09-11

Family

ID=51843813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380076133.0A Active CN105408883B (zh) 2013-04-30 2013-04-30 数据库表列注解

Country Status (4)

Country Link
US (1) US10248620B2 (zh)
EP (1) EP2992447A4 (zh)
CN (1) CN105408883B (zh)
WO (1) WO2014178843A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9645986B2 (en) * 2011-02-24 2017-05-09 Google Inc. Method, medium, and system for creating an electronic book with an umbrella policy
US10169418B2 (en) * 2014-09-24 2019-01-01 International Business Machines Corporation Deriving a multi-pass matching algorithm for data de-duplication
US10817504B2 (en) * 2018-03-29 2020-10-27 Sap Se Constraint satisfaction software tool for database tables
JP7077181B2 (ja) * 2018-08-24 2022-05-30 株式会社日立製作所 設備分析支援装置、設備分析支援方法、及び設備分析システム
US10942908B2 (en) * 2019-01-14 2021-03-09 Business Objects Software Ltd. Primary key determination
US11556529B2 (en) * 2019-08-13 2023-01-17 Sigma Computing, Inc. Top frequency worksheet filtering

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6212514B1 (en) * 1998-07-31 2001-04-03 International Business Machines Corporation Data base optimization method for estimating query and trigger procedure costs
CN102567434A (zh) * 2010-12-31 2012-07-11 百度在线网络技术(北京)有限公司 一种数据块处理方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546576A (en) 1995-02-17 1996-08-13 International Business Machines Corporation Query optimizer system that detects and prevents mutating table violations of database integrity in a query before execution plan generation
CA2146171C (en) * 1995-04-03 2000-01-11 Bernhard Schiefer Method for estimating cardinalities for query processing in a relational database management system
US5995957A (en) 1997-02-28 1999-11-30 International Business Machines Corporation Query optimization through the use of multi-column statistics to avoid the problems of column correlation
KR100494856B1 (ko) 1999-12-30 2005-06-14 주식회사 케이티 데이터베이스 상에서의 유일성 보장 방법
US6662175B1 (en) 2001-05-08 2003-12-09 Ncr Corporation Semantic query optimization using value correlation
US7328212B2 (en) * 2001-05-31 2008-02-05 Oracle International Corporation Generalized method for modeling complex ordered check constraints in a relational database system
CA2353015A1 (en) 2001-07-12 2003-01-12 Ibm Canada Limited-Ibm Canada Limitee Unordered relational database retrieval returning distinct values
AU2002334721B2 (en) 2001-09-28 2008-10-23 Oracle International Corporation An index structure to access hierarchical data in a relational database system
CA2390350A1 (en) * 2002-06-10 2003-12-10 Ibm Canada Limited-Ibm Canada Limitee Incremental cardinality estimation for a set of data values
US20040243555A1 (en) * 2003-05-30 2004-12-02 Oracle International Corp. Methods and systems for optimizing queries through dynamic and autonomous database schema analysis
US7720824B2 (en) 2003-12-11 2010-05-18 International Business Machines Corporation Database range constraint that is dynamically limited by data in the database
US7873671B2 (en) 2004-03-04 2011-01-18 International Business Machines Corporation Database relationship constraint
US8027969B2 (en) 2005-12-29 2011-09-27 Sap Ag Efficient calculation of sets of distinct results in an information retrieval service
US20080077552A1 (en) 2006-09-27 2008-03-27 Ronald Sanborn Systems and methods for analyzing multiple states in one or more groups of data
US20080140696A1 (en) * 2006-12-07 2008-06-12 Pantheon Systems, Inc. System and method for analyzing data sources to generate metadata
US8027972B2 (en) * 2007-09-26 2011-09-27 International Business Machines Corporation Nodal data normalization
US8443189B2 (en) * 2008-10-24 2013-05-14 International Business Machines Corporation Trust event notification and actions based on thresholds and associated trust metadata scores
US9576027B2 (en) 2008-10-27 2017-02-21 Hewlett Packard Enterprise Development Lp Generating a query plan for estimating a number of unique attributes in a database
US8229917B1 (en) 2011-02-24 2012-07-24 International Business Machines Corporation Database query optimization using clustering data mining
US8856085B2 (en) * 2011-07-19 2014-10-07 International Business Machines Corporation Automatic consistent sampling for data analysis
US9613074B2 (en) * 2013-12-23 2017-04-04 Sap Se Data generation for performance evaluation
US9760593B2 (en) * 2014-09-30 2017-09-12 International Business Machines Corporation Data dictionary with a reduced need for rebuilding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6212514B1 (en) * 1998-07-31 2001-04-03 International Business Machines Corporation Data base optimization method for estimating query and trigger procedure costs
CN102567434A (zh) * 2010-12-31 2012-07-11 百度在线网络技术(北京)有限公司 一种数据块处理方法

Also Published As

Publication number Publication date
CN105408883A (zh) 2016-03-16
US20160078070A1 (en) 2016-03-17
WO2014178843A1 (en) 2014-11-06
US10248620B2 (en) 2019-04-02
EP2992447A1 (en) 2016-03-09
EP2992447A4 (en) 2016-09-21

Similar Documents

Publication Publication Date Title
CN105408883B (zh) 数据库表列注解
CN108632097B (zh) 异常行为对象的识别方法、终端设备及介质
US9336184B2 (en) Representation of an interactive document as a graph of entities
US9304672B2 (en) Representation of an interactive document as a graph of entities
CN110019486A (zh) 数据采集方法、装置、设备及存储介质
US9652497B2 (en) Processing queries using hybrid access paths
CN107016025A (zh) 一种非关系型数据库索引的建立方法及装置
CN107203462B (zh) 一种数据生成方法及装置
CN108334515A (zh) 一种处理崩溃文件中堆栈地址的方法、装置及系统
US20160328445A1 (en) Data Query Method and Apparatus
WO2017000828A1 (zh) 基于规则的数据对象验证方法、装置、系统及电子设备
JP6570156B2 (ja) データベースシステム最適化の方法、システム、電子装置及び記憶媒体
JP2012069098A5 (ja) ネットワーク化されたビジネスプロセスのネットワーク参加者に関するサービス品質を管理するための方法、および管理するための動作をコンピュータに実行させることができる命令を格納するコンピュータ読み取り可能な記録媒体
CN106548035B (zh) 一种数据异常的诊断方法及装置
US20070233532A1 (en) Business process analysis apparatus
CN114626833B (zh) 一种施工标准工艺监管方法、装置、设备及介质
Molka et al. Conformance checking for BPMN-based process models
US20170300461A1 (en) Representation of an Interactive Document as a Graph of Entities
CN111414410A (zh) 数据处理方法、装置、设备和存储介质
US20130117275A1 (en) Index monitoring system, index monitoring method and program
CN114600095A (zh) 数据可视化应用中多个查询的单个视图呈现
JP6267398B2 (ja) サービス設計支援システムおよびサービス設計支援方法
CN109213513A (zh) 软件份额占比的确定方法、装置及计算机可读存储介质
CN114860759A (zh) 一种数据处理方法、装置、设备及可读存储介质
US20160188818A1 (en) Identifying claim anomalies for analysis using dimensional analysis

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20170123

Address after: American Texas

Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: American Texas

Applicant before: Hewlett-Packard Development Company, L.P.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180619

Address after: American California

Applicant after: Antite Software Co., Ltd.

Address before: American Texas

Applicant before: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Utah, USA

Patentee after: Weifosi Co., Ltd

Address before: California, USA

Patentee before: Antiy Software Co.,Ltd.