CN1959676B - 用于在计算机数据库***中物化查询表日志的装置和方法 - Google Patents

用于在计算机数据库***中物化查询表日志的装置和方法 Download PDF

Info

Publication number
CN1959676B
CN1959676B CN2006101431965A CN200610143196A CN1959676B CN 1959676 B CN1959676 B CN 1959676B CN 2006101431965 A CN2006101431965 A CN 2006101431965A CN 200610143196 A CN200610143196 A CN 200610143196A CN 1959676 B CN1959676 B CN 1959676B
Authority
CN
China
Prior art keywords
database
tolerance
query table
materialized query
propagate
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.)
Expired - Fee Related
Application number
CN2006101431965A
Other languages
English (en)
Other versions
CN1959676A (zh
Inventor
约翰·马修·桑托萨奥索
埃里克·劳伦斯·巴斯内斯
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1959676A publication Critical patent/CN1959676A/zh
Application granted granted Critical
Publication of CN1959676B publication Critical patent/CN1959676B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file 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/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • 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/27Replication, 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

一种在数据库日志***中利用物化查询表的装置,包括:至少一个处理器;存储器,连接到至少一个处理器上;数据库,驻留在存储器中,具有在至少一个基本表中的数据,其中数据库***包括物化查询表控制文件,该物化查询表控制文件包括用于一个或多个目标计算机的一个或多个度量,以指示何时传播文件标志应该设置成传播或不设置成传播,其中,所述传播文件标志用于指示所述数据库日志***是否应该把数据库文件传播或日志到目标计算机***;以及数据库传播器,驻留在存储器中,基于预置参数自动地调节和物化查询表传播相关的日志条目,控制物化查询表的传播。

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(传输控制协议/互联网协议)是适当网络协议的例子。
这里,重要的是注意,尽管在全功能计算机***的上下文中已经描述并且将继续描述本发明,但本领域的技术人员将认识到,本发明能够作为以各种形式的程序产品而分布,并且本发明同样适用而与用来实际实现分布的具体类型的信号承载介质无关。适当信号承载介质的例子包括:可记录型介质,如软盘和CD RW(例如图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 (9)

1.一种在数据库日志***中利用物化查询表的装置,包括:
至少一个处理器;
存储器,连接到至少一个处理器上;
数据库,驻留在存储器中,具有在至少一个基本表中的数据,其中数据库***包括物化查询表控制文件,该物化查询表控制文件包括用于一个或多个目标计算机的一个或多个度量,以指示何时传播文件标志应该设置成传播或不设置成传播,其中,所述传播文件标志用于指示所述数据库日志***是否应该把数据库文件传播或日志到目标计算机***;以及
数据库传播器,驻留在存储器中,基于预置参数自动地调节和物化查询表传播相关的日志条目,控制物化查询表的传播。
2.根据权利要求1所述的装置,其中数据库传播器是数据库的一部分,并且所述数据库传播器存储所述物化查询表控制文件。
3.根据权利要求1所述的装置,其中一个或多个度量包括从如下选择的度量:CPU度量、I/O度量、及客户定义度量。
4.根据权利要求1所述的装置,其中所述在数据库日志***中利用物化查询表的装置还包括日志接收器,该日志接收器属性中包括一个或多个控制标志,所述控制标志基于在所述物化查询表控制文件中包含的一个或多个度量指示是否传播物化查询表。
5.一种在数据库日志***中利用物化查询表的方法,该方法包括步骤:
对于在日志接收器中的每个日志条目,确定条目是否用于物化查询表;
如果条目不是用于物化查询表则处理它;
如果条目用于物化查询表,并且在物化查询表控制文件中设置了传播文件标志则处理它;及
如果条目用于物化查询表,并且没有设置传播文件标志则跳过它;
其中物化查询表控制文件包括用于一个或多个目标计算机的一个或多个度量,以指示何时传播文件标志应该设置成传播或不设置成传播,其中,所述传播文件标志用于指示所述数据库日志***是否应该把数据库文件传播或日志到目标计算机***。
6.根据权利要求5所述的方法,其中一个或多个度量包括从如下选择的度量:CPU度量、I/O度量、及客户定义度量。
7.根据权利要求5所述的方法,其中所述数据库日志***包括所述日志接收器,该日志接收器属性中包括一个或多个控制标志,所述控制标志基于在所述物化查询表控制文件中包含的一个或多个度量指示是否传播物化查询表。
8.根据权利要求5所述的方法,还包括步骤:
处理对于在物化查询表控制文件中的每个条目的度量;
如果度量的处理指示计算机***不满足度量,则断开传播;
如果度量的处理指示计算机***满足度量,则接通传播;及
把同步消息发送到对应目标服务器,以接通或断开传播。
9.根据权利要求8所述的方法,还包括在目标服务器上处理同步消息的步骤,该步骤包括:
定期地读取同步消息;
如果在同步消息中接通传播,则指令数据库用日志条目更新物化查询表;及
如果在同步消息中断开传播,则指令数据库停止用日志条目更新物化查询表。
CN2006101431965A 2005-11-03 2006-11-02 用于在计算机数据库***中物化查询表日志的装置和方法 Expired - Fee Related CN1959676B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/266,736 US20070100911A1 (en) 2005-11-03 2005-11-03 Apparatus and method for materialized query table journaling in a computer database system
US11/266,736 2005-11-03

Publications (2)

Publication Number Publication Date
CN1959676A CN1959676A (zh) 2007-05-09
CN1959676B true 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)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ577198A (en) 2006-12-28 2012-03-30 Arcsight Inc Storing logdata efficiently while supporting querying to assist in computer network security
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
WO2010028279A1 (en) * 2008-09-05 2010-03-11 Arcsight, Inc. Storing log data efficiently while supporting querying
US8892503B1 (en) * 2011-01-19 2014-11-18 Accenture-Global Services Limited Journaling tool
CN104516724B (zh) * 2013-09-26 2019-05-31 Sap欧洲公司 对于复制的数据表的表属性管理
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
CN108415925B (zh) * 2018-01-10 2020-11-24 平安科技(深圳)有限公司 电子装置、数据调用日志生成及查询方法及存储介质
US11249967B1 (en) 2020-08-03 2022-02-15 International Business Machines Corporation Database access performance improvement
CN112632183B (zh) * 2020-12-11 2023-07-11 广东电力通信科技有限公司 一种基于电网网络分区数据表准实时同步方法及***

Family Cites Families (8)

* Cited by examiner, † Cited by third party
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

Also Published As

Publication number Publication date
US20070100911A1 (en) 2007-05-03
CN1959676A (zh) 2007-05-09
US20130173543A1 (en) 2013-07-04
US20080183666A1 (en) 2008-07-31
US20130173544A1 (en) 2013-07-04

Similar Documents

Publication Publication Date Title
CN1959676B (zh) 用于在计算机数据库***中物化查询表日志的装置和方法
US7441049B2 (en) Simplified application object data synchronization for optimized data storage
US8676772B2 (en) Systems and methods for improving database performance
US20070073657A1 (en) Apparatus and method for utilizing a materialized query table in a computer database system
US9311355B2 (en) Autonomic refresh of a materialized query table in a computer database
US7440963B1 (en) Rewriting a query to use a set of materialized views and database objects
US8135703B2 (en) Multi-partition query governor in a computer database system
US20030154216A1 (en) Database optimization apparatus and method
US20080086480A1 (en) System and Methods For Temporary Data Management in Shared Disk Cluster
JPH05334165A (ja) 並列データベース処理システムおよびその2次キー検索方法
US7213014B2 (en) Apparatus and method for using a predefined database operation as a data source for a different database operation
US7685170B2 (en) Journaling database queries for database replication
JPH08179980A (ja) 分散データベースシステム
US5956727A (en) Heterogeneous database system with data source extensibility and alteration of database functions
CN109299225A (zh) 日志检索方法、***、终端及计算机可读存储介质
US20080215539A1 (en) Data ordering for derived columns in a database system
CN111680069B (zh) 数据库访问方法及装置
US20130006921A1 (en) Method For Transferring Data into Database Systems
CN111913973A (zh) 一种数据同步方法、装置及存储介质
CN111563112A (zh) 一种基于跨境贸易大数据的数据搜索和展示***
JP2679972B2 (ja) 情報サービス処理方法
JPH03166649A (ja) 分散データベース・システム
CN114880336A (zh) 数据库访问方法、装置、设备及存储介质
JP2004094289A (ja) 異種データベースのアクセス方法及びその方法を用いた事務用コンピュータ
JPH0581115A (ja) 分散型データベース管理システムのデータ処理方法

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