CN1959676A - 用于在计算机数据库系统中物化查询表日志的装置和方法 - Google Patents
用于在计算机数据库系统中物化查询表日志的装置和方法 Download PDFInfo
- Publication number
- CN1959676A CN1959676A CNA2006101431965A CN200610143196A CN1959676A CN 1959676 A CN1959676 A CN 1959676A CN A2006101431965 A CNA2006101431965 A CN A2006101431965A CN 200610143196 A CN200610143196 A CN 200610143196A CN 1959676 A CN1959676 A CN 1959676A
- Authority
- CN
- China
- Prior art keywords
- mqt
- tolerance
- database
- propagate
- subclauses
- 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
Images
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/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- 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/217—Database tuning
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种装置和方法在高可用性计算机数据库中以更高效的方式利用MQT,以改进数据库性能和效用。在优选实施例中,MQT控制文件指示用于特定表的日志条目是否传播到驻留在其他计算机服务器上的复制数据库。在其他实施列中,MQT控制文件包括用来控制何时传播接通和断开的度量。
Description
技术领域
本发明一般涉及计算机数据库系统,并且更明确地说,涉及用于在计算机数据库中物化查询表(MQT)日志的装置和方法。
背景技术
数据库系统以允许用户搜索和取回在数据库中的特定信息的方式,允许计算机存储大量信息。信息典型地存储在数据库表中。表包含数据的列和行。在表中的数据与在对应列和行中的其他数据相关或有关。数据的关系存储在索引中。
从数据库取回信息典型地是使用查询进行的。数据库查询典型地包括用逻辑操作符互相联系的一个或多个谓语表达式。针对满足查询的记录搜索数据库,并且作为查询结果返回那些记录。在数据库系统中,通常是频繁地发出相同或密切相关的查询。当数据库包含非常大量的数据时,对于数据库的某些查询可能占用不可接受的长的时间来执行。
已经成为通常做法的是,把常常重复的查询的结果保持在数据库表中。通过保持查询的结果,产生结果所要求的高成本连接(join)操作不必每当发出查询时进行。而是,数据库服务器通过简单地取回预存储的数据而响应查询。这些存储的结果有时称作物化视图或物化查询表(MQT)。MQT的目的是提供数据的集合,上述数据可满足很多随后查询,而不用重复对于数据库的完全访问。
计算机数据库系统也可以使用高可用性(HA)或数据库复制技术。高可用性是指不顾用于升级的计划不可用或由硬件或软件故障引起的非计划不可用的可用性。这种技术通过跨过多个服务器的数据分段和复制实现高数据可用性。这种技术典型地依赖于发送和接收日志条目,以保持跨过服务器的复制数据的数据一致性。
通过把日志条目从源系统发送到目标系统,HA系统允许在目标系统上复制MQT以及基本表,MQT是建立在该基本表上的。HA系统也允许系统管理者在目标系统处不复制MQT。在这种情况下,目标系统以正常方式使用基本表数据产生MQT。使用日志条目在目标系统处复制MQT是有利的,但时常这样做可能使系统资源紧张。
没有一种在HA系统中更好利用MQT的方式,计算机产业将继续遭受低效率和差的数据库性能。
发明内容
按照优选实施例,一种装置和方法,在HA计算机数据库中以更高效方式利用MQT,以改进数据库性能和效用。在优选实施例中,MQT控制文件指示用于特定表的日志条目是否将传播到驻留在其他计算机服务器上的复制数据库。在其他实施列中,MQT控制文件包括用来控制何时传播接通和断开的度量。这允许系统管理者建立确定何时使用传播和何时断开传播的参数。这通过在特定时刻,如当系统忙于由系统管理者建立的度量所确定的关键任务时,节省系统资源而允许性能的最大化。
通过如在附图中所表明的本发明优选实施例的如下更具体描述,本发明的以上和其他特征和优点将变得明显。
附图说明
下文将结合附图,描述本发明的优选实施例,其中相同的标号指示相同的部件,并且:
图1是按照优选实施例的计算机系统装置;
图2是根据优选实施例的HA计算机数据库系统;
图3是用于现有技术HA计算机数据库系统的示例屏幕显示;
图4是用于根据现有技术的HA计算机数据库系统的屏幕显示;
图5是用于根据现有技术的HA计算机数据库系统的屏幕显示;
图6是用于根据优选实施例的HA计算机数据库系统的屏幕显示;
图7是表,表明了用于根据优选实施例的HA计算机数据库系统的MQT控制文件的内容;
图8是根据优选实施例的方法的示例流程图;
图9是根据优选实施例的方法的示例流程图;及
图10是根据优选实施例的方法的示例流程图。
具体实施方式
概述
本发明涉及在HA计算机数据库中更高效地利用MQT以改进数据库性能和效用的装置和方法。对于不熟悉数据库或查询的那些人,这个概述章节提供帮助理解本发明的背景信息。
已知数据库和数据库查询
在现有技术中已知有多种不同类型的数据库。最普通的称作关系数据库(RDB),关系数据库以表组织数据,该表具有代表在数据库中的各个条目或记录的行、和定义什么存储在每个条目或记录中的列。
更广义地看,在数据库系统中的数据存储在一个或多个数据容器中,其中每个容器包含记录,并且在每个记录内的数据组织成一个或多个字段。在关系数据库系统中,如上述那样,数据容器称作表,记录称作行,及字段称作列。在面向对象的数据库中,数据容器称作对象类,记录称作对象,及字段称作属性。其他数据库体系结构可能使用其他术语。尽管不旨在限于关系数据库,但为了解释目的,这里使用的例子和术语将是典型地与关系数据库相关的。因而,术语“表”、“行”及“列”这里用来分别指数据容器、记录、及字段,并且类似地应用于其他类型的数据库容器。
从数据库取回信息典型地使用查询进行。数据库查询是由数据库管理器评估的表达式。表达式可以包含用来从数据库取回数据的一个或多个谓语表达式。例如,假定有用于公司的数据库,该数据库包括雇员的表,在表中的列代表雇员的姓名、地址、电话号码、性别、及薪水。对于以这样的格式存储的数据,可用公式表示取回具有高于$40,000薪水的所有女雇员的记录的查询。类似地,可用公式表示取回具有特定区号或电话号码前缀的所有雇员的记录的查询。定义查询的一种流行方式使用结构化查询语言(SQL)。SQL定义用来产生和处理查询的句法,该句法独立于数据库的实际结构和格式。
在数据库系统中,通常是频繁地发出相同或密切相关的查询。为了响应这样的查询,数据库服务器典型地必须进行多个join操作,因为数据库记录包含响应查询所需要的信息。当数据库包含非常大量的数据时,对于数据库的某些查询可能占用不可接受的长的时间来执行。当查询(它采取SQL数据库语言的“SELECT”语句的形式)要求在大量数据库表中的join操作时,执行查询的成本可能特别显著。
物化查询表
已经成为通常做法的是,把常常重复的查询的结果保持在数据库表或一些其他永久数据库对象中。通过保持查询的结果,产生结果所要求的高成本join操作不必每当发出查询时进行。而是,数据库服务器通过简单地取回预存储的数据而响应查询。这些存储的结果有时称作物化视图或物化查询表(MQT)。MQT初始可以是给定查询的计算结果。MQT的目的是提供数据集合,上述数据可满足多个随后的查询,而不用重复对于数据库的完全访问。
典型地,查询表定义是数据库查询的形式,其在这里称作物化查询。物化查询被处理,并且结果作为MQT而存储。结果可以是行的形式,这些行可以是来自单个基本表的行或通过连接在基本表中的行而创建的行。物化查询表消除了每当执行查询时与收集和导出数据相关的开销。通过称作查询重写的过程,查询可被优化以识别和使用可回答查询的现存物化查询表。典型地,查询重写优化对于提交查询的应用是透明的。就是说,重写操作自动地发生,并且不要求应用知道物化查询表的存在,以及在原始查询中特定物化查询表已经被替代。
HA系统使用日志管理系统从源系统到目标系统复制数据库表,上述日志管理系统发送日志条目,以保持复制数据库对于源数据库最新。日志管理用来记录在计算机系统上对象的活动。日志管理系统创建叫做日志的对象。日志记录以日志条目的形式规定的对象的活动。日志把日志条目写在叫做日志接收器的另一个对象中。日志接收器使用日志条目在目标系统上复制对象。
MQT有时与它们的基本表一起复制到在HA计算机数据库系统中的另一个数据库服务器上。HA系统也允许系统管理者在目标系统处不复制MQT。在这种情况下,目标系统以正常方式使用基本表数据产生MQT。使用日志条目在目标系统处复制MQT是有利的,但时常这样做可能使系统资源紧张。
详细描述
优选实施例在这里提供一种在HA计算机数据库中高效地利用MQT的装置和方法。本发明允许数据库管理器建立用于在目标计算机系统或计算机服务器中MQT的复制的自动控制参数。现在参照图1,计算机系统100是按照本发明优选实施例的装置的一种适当实现。计算机系统100是IBM eServer iSeries计算机系统。然而,本领域的技术人员将认识到,本发明的机制和装置同样地适用于任何计算机系统,而不管计算机系统是否是复杂的多用户计算装置、单用户工作站、或嵌入式控制系统。如图1中所示,计算机系统100包括处理器110、主存储器120、海量存储接口135、显示器接口140、及网络接口150。这些系统部件通过系统总线160的使用而互连。海量存储接口135用来把海量存储装置(如直接访问存储装置155)连接到计算机系统100上。直接访问存储装置155的一种特定类型是可读和可写CD RW驱动器,该驱动器可以把数据存储到CD RW 195并且从其读取数据。
按照优选实施例的主存储器120包含数据121、操作系统122、及数据库123。数据121代表用作到在计算机系统100中的任何程序的输入或来自其的输出的任何数据。操作系统122是在产业中已知的多任务操作系统,如i5/OS;然而,本领域的技术人员将认识到,本发明的精神和范围不限于任何一种操作系统。数据库123是任何适当的数据库,而不管是当前已知的还是将来开发的。数据库123包括一个或多个基本表(未表示)。存储器120包括下面进一步描述的数据库传播器124。在优选实施例中,数据库传播器是数据库123的部分。存储器120还包括一个或多个数据库查询125、和数据库查询优化器126。数据库查询125是与数据库123相兼容的格式的查询。该格式允许取回在数据库123中存储的、满足数据库查询125的信息。数据库查询优化器126优化查询125,并且产生由在数据库123中的数据库管理器(未表示)用来访问数据库的访问计划。数据库查询优化器126包括由查询优化器126按照优选实施例更新的物化查询表(MQT)127。查询优化器126还包括具有一个或多个传播度量129的MQT控制文件128,如下面进一步描述的。计算机系统100也包括日志接收器130,该日志接收器存储由数据库和数据库传播器使用的日志条目131。数据库使用日志条目更新或回滚在数据库中的数据。传播器将使用日志条目把数据传播到其他目标计算机或服务器,如下面进一步描述的。
计算机系统100利用熟知的虚拟寻址机制,所述虚拟寻址机制允许计算机系统100的程序表现得就像它们仅访问巨大、单一存储实体的,而不是访问诸如主存储器120和DASD装置155之类的多个、较小存储实体。因此,尽管数据121、操作系统122、数据库123、数据库查询125、数据库查询优化器126、及日志接收器130表示成驻留在主存储器120中,但本领域的技术人员将认识到,这些项不必都同时完全包含在主存储器120中。也应该注意,术语存储器这里用来一般指计算机系统100的整个虚拟存储器,并且可以包括连接到计算机系统100上的其他计算机系统的虚拟存储器。
处理器110可以由一个或多个微处理器和/或集成电路构造。处理器110执行在主存储器120中存储的程序指令。主存储器120存储处理器110可以访问的程序和数据。当计算机系统100启动时,处理器110初始执行组成操作系统122的程序指令。操作系统122是管理计算机系统100的资源的复杂程序。这些资源的一些是处理器110、主存储器120、海量存储接口135、显示器接口140、网络接口150及系统总线160。
尽管计算机系统100表示成仅包含单个处理器和单根系统总线,但本领域的技术人员将认识到,使用具有多个处理器和/或多根总线的计算机系统可以实施本发明。另外,在优选实施例中使用的接口每个包括分离的、完全编程的微处理器,这些微处理器用来从处理器110卸载(offload)计算密集处理。然而,本领域的技术人员将认识到,本发明同样适用于简单使用I/O适配器完成类似功能的计算机系统。
显示器接口140用来直接把一个或多个显示器165连接到计算机系统100上。可以是非智能(即,哑)终端或完全可编程工作站的这些显示器165用来允许系统管理者和用户与计算机系统100通信。然而注意,尽管显示器接口140被提供成支持与一个或多个显示器165通信,但计算机系统100不必要求显示器165,因为经网络接口150可以发生所有需要的与用户的交互和其他过程。
网络接口150用来跨过网络170把其他计算机系统和/或工作站(例如,在图1中的175)连接到计算机系统100上。不管计算机系统100如何连接到其他计算机系统和/或工作站上,不管网络170是否使用当今模拟和/或数字技术或经将来的某种联网机制构成,本发明都同样适用。另外,多种不同的网络协议可用来实现网络。这些协议是允许计算机跨过网络170通信的专用计算机程序。TCP/IP(传输控制协议/互联网协议)是适当网络协议的例子。
这里,重要的是注意,尽管在全功能计算机系统的上下文中已经描述并且将继续描述本发明,但本领域的技术人员将认识到,本发明能够作为以各种形式的程序产品而分布,并且本发明同样适用而与用来实际实现分布的具体类型的信号承载介质无关。适当信号承载介质的例子包括:可记录型介质,如软盘和CDRW(例如图1的195);和传输类型介质,如数字和模拟通信链路。注意,优选信号承载介质是有形的。
图2表明根据优选实施例的HA数据库系统200。HA数据库系统200具有称作客户服务器100(A)的第一计算机服务器。客户服务器100(A)与表明为目标服务器100(B)和目标服务器100(C)的一个或多个目标系统通信。客户服务器100(A)和目标服务器100(B)、100(C)通过计算机网络210互连。计算机服务器的每一个,客户和目标计算机都可包括在图1中所表示的计算机系统100。当然,对于本领域的技术人员很显然,可以有另外客户服务器和目标服务器连接到计算机网络210。
再参照图2,在表明的HA数据库系统200中,客户和目标服务器100(A)、100(B)、100(C)的每一个包括数据库传播器124。数据库传播器124与数据库协作以把日志条目传播到目标服务器而在目标位置处复制数据库。数据库传播在现有技术中是已知的,并且描述的数据库传播器124以类似方式工作但具有这里描述的另外特征。在HA数据库系统200中的客户和目标服务器100(A)、100(B)、100(C)的每一个还包括日志接收器130。日志接收器在现有技术中也是已知的,并且用来存储和处理在客户服务器100(A)和目标服务器100(B)、100(C)中的日志条目。数据库使用日志条目更新或回滚在数据库中的数据。日志接收器130的特征除下面进一步描述的附加特征之外类似于现有技术。
图3代表操作根据现有技术的HA数据库系统的计算机的显示300。显示300表示用于说明的和与下面描述的优选实施例相对比的示例数据。显示300代表对于系统管理者显示用于与日志QSQJRN相关的日志接收器QSQJRN0001的日志接收器属性的HA计算机系统100(A)。接收器属性包括各种信息,这里仅简要地解释其中一些,因为其在本领域是已知的并且对于本发明不重要。接收器属性的上部块310包括对于日志何时接收器附加和脱开的时间信息。接收器属性显示的上部块310也表示何时接收器最后保存、大小和相关库、及文本行。接收器属性的下部块320包括辅助存储池、状态、条目数量、最小化固定长度、接收器最大选项、最大条目特定数据长度、最大化零值指示符、第一序列号、及最后序列号。
图4表明操作根据现有技术的HA数据库系统的计算机的另一显示400。在图4中,显示400代表在显示由系统管理者启动的瞬时对于系统管理者显示在图3中表示的日志接收器QSQJRN中驻留的日志条目的HA计算机系统100(A)。显示400表示由序列号码410列出的日志接收器中驻留的日志条目。显示400包括作为序列号码14至序列号码18列出的五个日志条目。除用于每个日志条目的序列号码410之外,显示400包括代码412、条目类型414、条目对象416、条目驻留在其中的库418、启动日志条目的工作420、及日志条目进入日志接收器中的时间422。在表明的例子中,代码R是指日志条目是用于记录级别操作。日志类型PT是指日志条目是放入(插入)操作。
图5表明操作根据现有技术的HA数据库系统的计算机画面的另一显示500。在图5中,显示500代表对于系统管理者显示在图3中表示的日志接收器QSQJRN中的单个日志条目的HA计算机系统100(A)。显示500包括在图4中作为序列号码16表示的日志条目的内容。对于本发明特别感兴趣的是指示日志条目是否用于MQT的MQT条目510。这个条目与在下面描述的日志接收器中的添加条目和在下面图7中表示的MQT控制文件一道由本发明使用。
图6表明操作根据优选实施例的HA数据库系统的计算机画面的显示600。显示600类似于在图3中表示的现有技术显示。显示600表示对于系统管理者显示用于与日志QSQJRN相关的日志接收器QSQJRN0001的日志接收器属性的HA计算机系统。表明的接收器属性包括以上对于图3描述的相同信息,并且也包括根据优选实施例的进一步信息。接收器属性的上部块610包括以上在图3中关于310描述的相同信息。接收器属性的下部块620除根据优选实施例的MQT传播属性630、632之外包括以上描述的信息。
再参照图6,MQT传播属性630、632添加到现有技术接收器属性上,以允许接收器自动地控制在目标计算机系统或计算机服务器中MQT的传播。这些属性可使用这种显示画面或借助于叫做修改日志接收器属性(Modify Journal Receiver Attribute)的类似显示画面由系统管理者修改。第一传播属性630指示允许从如图2中所示客户服务器100(A)到一个或多个目标计算机100(B)、100(C)的所有MQT的传播。第二传播属性632指示基于文件是否传播MQT。这种属性是指,如下面参照图7描述的那样,如果设置用于对应MQT的传播文件标志720,则将传播MQT。在优选实施例中,数据库传播器软件的任务是检查传播MQT属性630和基于文件传播MQT属性632的状态。如果这些属性都是“是”,那么如下面描述的那样,在MQT控制文件128中的每个表根据在MQT控制文件128中建立的任何度量被处理,以接通或断开传播。
图7表示信息表,该信息表代表根据优选实施例的MQT控制文件128。MQT控制文件128优选地由数据库传播器124存储。MQT控制文件128包括用于在MQT控制文件128中列出的每个MQT 710的数据条目。在表明的图7的例子中,用于每个MQT 710的数据是在MQT控制文件128中的一行参数。在MQT控制文件128中的第一参数是传播文件标志720。这个标志指示关于系统是否应该把文件传播或日志到目标系统的是或否。在优选实施例中,在MQT控制文件中对于每个目标系统有传播文件标志720。在表明的图2的例子中,有目标计算机B和目标计算机C,所以如所示在MQT控制文件128中有对于计算机B和计算机C的对应传播文件标志720。
再参照图7,MQT控制文件参数也包括多个度量730、740、750,这些度量由系统管理者预置,以控制在目标计算机系统或计算机服务器中MQT的传播。表明的度量不是可包括在要求保护的本发明的范围内的度量的穷尽。第一度量是CPU度量730。这个度量可指示用于客户(A)和目标计算机(B、C)的CPU利用百分比或某些其他CPU参数。下一个度量是I/O度量740。这个度量检查产生关于数据库系统的整体性能的限制因素的某个I/O端口或任务的利用。下个度量是客户定义度量750。这个度量允许最终用户或客户定义特别感兴趣的度量,以定制特定用户系统要求的性能。
在优选实施例中,在HA数据库系统中数据库传播器124的任务定期地基于度量730、740、750设置传播文件标志720。计算机任务可以使用任何已知或将来技术,以使用在MQT控制文件中的度量检查HA系统的或在HA系统内的任何计算机的性能,并且基于与系统性能相比较的这些度量,然后自动地设置传播文件标志720。在设置传播文件标志720之后,在客户服务器100(A)上的数据库传播器124必须把同步消息发送到在目标服务器100(B)、100(C)上的数据库传播器,以保持数据完整性。如果传播文件被断开,则目标服务器然后必须开始使用基本表信息以创建MQT,因为MQT不再传播。如果同步消息指示MQT正在传播,则目标服务器可开始使用传播的数据以保持MQT。
现在参照图8,流程图表示根据优选实施例的用来在HA计算机数据库系统中高效使用MQT的方法800。方法800呈现为由以上描述为数据库传播器124的计算机软件程序执行的一系列步骤。表明的方法被定期地运行或否则被启动,以处理在源计算机系统上的待处理日志条目。数据库传播器124确定是否有更多日志条目要处理(步骤810)。如果有日志条目要处理(步骤810=是),那么数据库传播器获得日志条目(步骤820)。如果日志条目不与MQT相对应(步骤830=否),那么数据库传播器进入处理条目(步骤840)。在处理条目时,数据库传播器与在目标系统上操作的数据库传播器通信,以把数据库复制在目标计算机系统上。如果日志条目与MQT相对应(步骤830=是),那么数据库传播器进入通过检查MQT控制文件确定对于对应MQT是否接通传播文件(步骤850)。如果对于当前MQT接通传播文件(步骤850=是),那么数据库传播器进入处理条目(步骤840)。如果对于当前日志条目的MQT断开传播文件(步骤850=否),那么数据库传播器跳过该日志条目(步骤860),并且返回到步骤810。如果没有更多日志条目(步骤810=否),那么方法800完成。
现在参照图9,流程图表示根据优选实施例的用来监视在源计算机系统上的传播度量并且把同步消息发送到目标计算机系统的方法900。当基于文件传播MQT标志632如上述那样设置为“是”时,方法900的步骤定期地如由源计算机上的定时中断执行。方法900呈现为由以上描述为数据库传播器124的计算机软件程序执行的一系列步骤。描述的步骤也可视作由执行数据库操作的数据库引擎执行,其中数据库传播器是该数据库引擎的部分。方法900对于在MQT配置文件中的每个表执行一系列步骤(步骤910)。方法900从MQT配置文件获得条目(步骤920)。依据度量的类型而处理度量,以确定源计算机应该接通传播还是断开传播(步骤930)。如果度量的处理确定应该断开传播(步骤940=是),那么同步消息被发送到服务器以转发到目标计算机(步骤950),并且方法针对在MQT配置文件中的下一个MQT返回(步骤910)。如果度量的处理确定应该接通传播(步骤960=是),那么同步消息发送到服务器以转发到目标计算机(步骤970),并且方法针对在MQT配置文件中的下一个MQT返回(步骤910)。当已经处理在MQT配置文件中的每个MQT时(步骤910),那么方法完成。
现在参照图10,流程图表示根据优选实施例的用来监视在目标计算机系统上的同步消息以指令数据库系统何时更新MQT的方法1000。方法1000呈现为由以上描述为数据库传播器124的计算机软件程序执行并且在目标计算机系统上执行的一系列步骤。每当接收到同步消息时,方法1000执行一系列步骤(步骤1010)。方法1000读取接收的同步消息(步骤1020)。如果同步消息指示断开传播(步骤1030=是),那么指令数据库以传统方式使用基本表更新对应MQT(步骤1040),并且方法返回以等待下一个同步消息(步骤1010)。如果同步消息指示接通传播(步骤1050=是),那么指令数据库停止使用基本表更新对应MQT(步骤1060),并且方法针对下一个同步消息返回(步骤1010)。每当接收同步消息时方法如描述的那样典型地以连续周期运行(步骤1010)。
参照优选实施例所描述的本发明提供对于现有技术的显著改进。描述的装置和方法提供在HA计算机数据库中MQT的高效传播。本发明提供一种改进系统性能、并且减小在HA计算机数据库系统中数据库访问的过度延迟的方式。
本领域的技术人员将认识到,在本发明的范围内多种变更是可能的。因而,尽管本发明已经参照其优选实施例具体地表示和描述,但本领域的技术人员将理解,其中可以进行形式和细节的这样和那样的变化,而不脱离本发明的精神和范围。
Claims (12)
1.一种装置,包括:
至少一个处理器;
存储器,连接到至少一个处理器上;
数据库,驻留在存储器中,具有在至少一个基本表中的数据;及
数据库传播器,驻留在存储器中,基于预置参数自动地调节物化查询表(MQT)的日志。
2.根据权利要求1所述的装置,其中数据库系统包括MQT控制文件,该MQT控制文件具有用于多个MQT的标志,以指示对于对应MQT,文件是否传播到目标计算机。
3.根据权利要求2所述的装置,其中预置参数包括用于一个或多个目标计算机的一个或多个度量,以指示何时指示文件待传播的标志应该设置成传播或不传播。
4.根据权利要求3所述的装置,其中一个或多个度量包括从如下选择的度量:CPU度量、I/O度量、及客户定义度量。
5.根据权利要求1所述的装置,其中数据库日志系统包括在日志接收器属性中的一个或多个控制标志,所述控制标志基于在文件中包含的一个或多个度量指示是否传播MQT。
6.根据权利要求2所述的装置,其中数据库日志系统包括在日志接收器属性中的一个或多个控制标志,所述控制标志基于在文件中包含的一个或多个度量指示是否传播MQT。
7.一种用来利用在数据库日志系统中的物化查询表(MQT)的方法,该方法包括步骤:
对于在日志接收器中的每个日志条目,确定条目是否用于MQT;
如果条目不是用于MQT则处理它;
如果条目用于MQT,并且在MQT控制文件中设置了传播文件标志则处理它;及
如果条目用于MQT,并且没有设置传播文件标志则跳过它。
8.根据权利要求7所述的方法,其中MQT控制文件包括用于一个或多个目标计算机的一个或多个度量,以指示何时指示文件待传播的标志应该设置成传播或不设置成传播。
9.根据权利要求8所述的方法,其中一个或多个度量包括从如下选择的度量:CPU度量、I/O度量、及客户定义度量。
10.根据权利要求7所述的方法,其中数据库日志系统包括在日志接收器属性中的一个或多个控制标志,所述控制标志基于在文件中包含的一个或多个度量指示是否传播MQT。
11.根据权利要求7所述的方法,还包括步骤:
处理对于在MQT控制文件中的每个条目的度量;
如果度量的处理指示计算机系统不满足度量,则断开传播;
如果度量的处理指示计算机系统满足度量,则接通传播;及
把同步消息发送到对应目标服务器,以接通或断开传播。
12.根据权利要求11所述的方法,在目标服务器上处理同步消息还包括步骤:
定期地读取同步消息;
如果在同步消息中接通传播,则指令数据库用日志条目更新MQT;及
如果在同步消息中断开传播,则指令数据库停止用日志条目更新MQT。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/266,736 | 2005-11-03 | ||
US11/266,736 US20070100911A1 (en) | 2005-11-03 | 2005-11-03 | Apparatus and method for materialized query table journaling in a computer database system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1959676A true CN1959676A (zh) | 2007-05-09 |
CN1959676B CN1959676B (zh) | 2010-05-12 |
Family
ID=37997846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101431965A Expired - Fee Related CN1959676B (zh) | 2005-11-03 | 2006-11-02 | 用于在计算机数据库系统中物化查询表日志的装置和方法 |
Country Status (2)
Country | Link |
---|---|
US (4) | US20070100911A1 (zh) |
CN (1) | CN1959676B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102239472A (zh) * | 2008-09-05 | 2011-11-09 | Arc景象有限责任公司 | 在支持查询的同时高效地存储日志数据 |
CN104516724A (zh) * | 2013-09-26 | 2015-04-15 | Sap欧洲公司 | 对于复制的数据表的表属性管理 |
US9031916B2 (en) | 2006-12-28 | 2015-05-12 | Hewlett-Packard Development Company, L.P. | Storing log data efficiently while supporting querying to assist in computer network security |
CN108415925A (zh) * | 2018-01-10 | 2018-08-17 | 平安科技(深圳)有限公司 | 电子装置、数据调用日志生成及查询方法及存储介质 |
CN112632183A (zh) * | 2020-12-11 | 2021-04-09 | 广东电力通信科技有限公司 | 一种基于电网网络分区数据表准实时同步方法及系统 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090138562A1 (en) * | 2007-11-28 | 2009-05-28 | Loyal Technology Solutions, L.L.C. | Method and system for aggregation of electronic messages |
US8122033B2 (en) * | 2008-01-09 | 2012-02-21 | International Business Machines Corporation | Database query optimization |
US8892503B1 (en) * | 2011-01-19 | 2014-11-18 | Accenture-Global Services Limited | Journaling tool |
US9679013B2 (en) | 2014-06-12 | 2017-06-13 | International Business Machines Corporation | Generating and accessing a data table |
US9886463B2 (en) * | 2014-06-12 | 2018-02-06 | International Business Machines Corporation | Generating and accessing a data table |
US9928277B2 (en) | 2014-11-10 | 2018-03-27 | International Business Machines Corporation | Materialized query tables with shared data |
US11681674B2 (en) * | 2015-04-30 | 2023-06-20 | Micro Focus Llc | Consolidated metadata in databases |
US11249967B1 (en) | 2020-08-03 | 2022-02-15 | International Business Machines Corporation | Database access performance improvement |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001331333A (ja) * | 2000-05-18 | 2001-11-30 | Hitachi Ltd | 計算機システム及び計算機システムの制御方法 |
US6567823B1 (en) * | 2000-08-07 | 2003-05-20 | Corigin Ltd. | Change propagation method using DBMS log files |
US6714951B2 (en) * | 2001-04-16 | 2004-03-30 | International Business Machines Corporation | Continuous journaling of objects within a hierarchical directory tree |
US7039669B1 (en) * | 2001-09-28 | 2006-05-02 | Oracle Corporation | Techniques for adding a master in a distributed database without suspending database operations at extant master sites |
US7426559B2 (en) * | 2002-05-09 | 2008-09-16 | International Business Machines Corporation | Method for sequential coordination of external database application events with asynchronous internal database events |
TWI236253B (en) * | 2002-08-30 | 2005-07-11 | Hon Hai Prec Ind Co Ltd | System and method for synchronizing data |
CA2414980A1 (en) * | 2002-12-23 | 2004-06-23 | Ibm Canada Limited-Ibm Canada Limitee | Deferred incremental integrity maintenance of base tables having contiguous data blocks |
US8468152B2 (en) * | 2005-08-04 | 2013-06-18 | International Business Machines Corporation | Autonomic refresh of a materialized query table in a computer database |
-
2005
- 2005-11-03 US US11/266,736 patent/US20070100911A1/en not_active Abandoned
-
2006
- 2006-11-02 CN CN2006101431965A patent/CN1959676B/zh not_active Expired - Fee Related
-
2008
- 2008-03-24 US US12/053,987 patent/US20080183666A1/en not_active Abandoned
-
2013
- 2013-02-21 US US13/773,209 patent/US20130173543A1/en not_active Abandoned
- 2013-02-21 US US13/773,223 patent/US20130173544A1/en not_active Abandoned
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9031916B2 (en) | 2006-12-28 | 2015-05-12 | Hewlett-Packard Development Company, L.P. | Storing log data efficiently while supporting querying to assist in computer network security |
US9166989B2 (en) | 2006-12-28 | 2015-10-20 | Hewlett-Packard Development Company, L.P. | Storing log data efficiently while supporting querying |
US9762602B2 (en) | 2006-12-28 | 2017-09-12 | Entit Software Llc | Generating row-based and column-based chunks |
CN102239472A (zh) * | 2008-09-05 | 2011-11-09 | Arc景象有限责任公司 | 在支持查询的同时高效地存储日志数据 |
CN102239472B (zh) * | 2008-09-05 | 2017-04-12 | 惠普发展公司,有限责任合伙企业 | 在支持查询的同时高效地存储日志数据 |
CN104516724A (zh) * | 2013-09-26 | 2015-04-15 | Sap欧洲公司 | 对于复制的数据表的表属性管理 |
CN104516724B (zh) * | 2013-09-26 | 2019-05-31 | Sap欧洲公司 | 对于复制的数据表的表属性管理 |
CN108415925A (zh) * | 2018-01-10 | 2018-08-17 | 平安科技(深圳)有限公司 | 电子装置、数据调用日志生成及查询方法及存储介质 |
CN108415925B (zh) * | 2018-01-10 | 2020-11-24 | 平安科技(深圳)有限公司 | 电子装置、数据调用日志生成及查询方法及存储介质 |
CN112632183A (zh) * | 2020-12-11 | 2021-04-09 | 广东电力通信科技有限公司 | 一种基于电网网络分区数据表准实时同步方法及系统 |
CN112632183B (zh) * | 2020-12-11 | 2023-07-11 | 广东电力通信科技有限公司 | 一种基于电网网络分区数据表准实时同步方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20070100911A1 (en) | 2007-05-03 |
CN1959676B (zh) | 2010-05-12 |
US20130173544A1 (en) | 2013-07-04 |
US20080183666A1 (en) | 2008-07-31 |
US20130173543A1 (en) | 2013-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1959676B (zh) | 用于在计算机数据库系统中物化查询表日志的装置和方法 | |
EP3304356B1 (en) | Table partitioning within distributed database systems | |
US8156082B2 (en) | System and methods for temporary data management in shared disk cluster | |
US9081837B2 (en) | Scoped database connections | |
US20170083573A1 (en) | Multi-query optimization | |
US7949687B1 (en) | Relational database system having overlapping partitions | |
US7343367B2 (en) | Optimizing a database query that returns a predetermined number of rows using a generated optimized access plan | |
US20070073657A1 (en) | Apparatus and method for utilizing a materialized query table in a computer database system | |
US7174345B2 (en) | Methods and systems for auto-partitioning of schema objects | |
US9311355B2 (en) | Autonomic refresh of a materialized query table in a computer database | |
US8135703B2 (en) | Multi-partition query governor in a computer database system | |
US7440963B1 (en) | Rewriting a query to use a set of materialized views and database objects | |
US7991797B2 (en) | ID persistence through normalization | |
CN106599043A (zh) | 用于多级数据库的中间件和多级数据库系统 | |
US20120011096A1 (en) | Efficiently updating rows in a data warehouse | |
CN110019251A (zh) | 一种数据处理系统、方法及设备 | |
US8843436B2 (en) | Systems and methods for performing direct reporting access to transaction databases | |
US7885953B2 (en) | Off-loading star join operations to a storage server | |
CN103177055A (zh) | 存储为行存储和列存储二者的混合数据库表 | |
WO2015030767A1 (en) | Queries involving multiple databases and execution engines | |
CN1848849A (zh) | 复制目录修改的方法和装置 | |
EP1860603A2 (en) | Efficient calculation of sets of distinct result | |
CN117321583A (zh) | 用于混合数据处理的存储引擎 | |
US20080215539A1 (en) | Data ordering for derived columns in a database system | |
US20080109423A1 (en) | Apparatus and method for database partition elimination for sampling queries |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100512 Termination date: 20181102 |