CN109313637A - 用于监视服务器系统的改变的方法和系统 - Google Patents

用于监视服务器系统的改变的方法和系统 Download PDF

Info

Publication number
CN109313637A
CN109313637A CN201780035408.4A CN201780035408A CN109313637A CN 109313637 A CN109313637 A CN 109313637A CN 201780035408 A CN201780035408 A CN 201780035408A CN 109313637 A CN109313637 A CN 109313637A
Authority
CN
China
Prior art keywords
data
time point
change
server system
data set
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
CN201780035408.4A
Other languages
English (en)
Inventor
R·吉里甘
G·博拉德
G·苏顿
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.)
Mastercard International Inc
Original Assignee
Mastercard International Inc
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 Mastercard International Inc filed Critical Mastercard International Inc
Publication of CN109313637A publication Critical patent/CN109313637A/zh
Pending legal-status Critical Current

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/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3079Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by reporting only the changes of the monitored data
    • 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/219Managing data history or versioning
    • 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
    • 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/2477Temporal data queries
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

公开了一种用于监视服务器系统(200)的改变的方法和系统。针对第一时间点获得(102,502)服务器系统的数据集的所有数据内容,并且还针对第二时间点获得(104,504)该数据集的所有数据内容。将数据集的第一时间点内容与数据集的第二时间点内容进行比较(106,506)。然后,该比较被用于确定第一与第二时间点之间服务器系统的改变。可以存储(505)数据集的第一时间点内容,并且在比较和使用比较的步骤之后,可以存储所确定的改变的记录(510),并且丢弃(514)所存储的数据集的第一时间点内容。

Description

用于监视服务器系统的改变的方法和系统
相关申请的交叉引用
本申请要求于2016年6月9日提交的欧洲专利申请No.16173813.3的权益和优先权。上述申请的全部公开内容通过引用结合于此。
技术领域
本发明涉及用于监视服务器系统(诸如数据库服务器系统)的改变的方法和系统。
背景技术
通用的数据库系统和服务器系统是本领域众所周知的。一般而言,这种系统包括至少一个托管数据库信息或数据的服务器机器,并且通常是服务器或数据库管理系统。
这种系统常常是动态的,因为由服务器、数据库或数据库管理系统保持的数据定期用新信息或数据更新,或者对现有信息进行重新排列、重新格式化、移除等。此类系统还会受到所保持的数据的可能错误或不一致的影响。
已知用于服务器系统的某些基本监视系统。此类系统通常是被动的,因为它们通常仅在数据库中出现问题时才是活动的,其中问题触发监视系统。先前考虑的系统通常也过于简单,因为它们只监视数据库中某些类型的问题或改变。此类系统还可以仅监视已被标记为对系统的改变的项。因此,可能会忽略未被标记但仍已经进行的对系统的改变。先前的系统也可能只查找具体的改变、具体类型的改变或具体位置的改变。因此,也可能错过未指定或监视的区域中的更改或修改。这些系统可以具体地搜索改变的事实也可能是个缺点。
用于这种系统的备份设备也是已知的,但是这些通常仅用于系统上数据的冗余,而不是用于对其进行任何监视或分析。
本发明旨在解决这些问题并提供对已知设备和方法的改进。
发明内容
在所附权利要求中阐述了本发明的各方面和实施例。
一般而言,本发明的第一方面的一个实施例可以提供监视服务器系统的改变的计算机实现的方法,包括:由处理器针对第一时间点获得服务器系统的数据集的所有数据内容;由处理器针对第二时间点获得服务器系统的该数据集的所有数据内容;在处理器处比较数据集的第一时间点内容与数据集的第二时间点内容;以及由处理器使用该比较来确定第一与第二时间点之间服务器系统的改变。
这允许用于确定服务器系统的数据集中的改变的综合方法;当获得数据集的整个、全部或完整内容时,不应当错过那个数据集中的任何改变,例如通过仅查找某些类型的改变。与在第二时间点的内容的比较提供了用于找到数据集的两个完全内容快照之间的改变的手段。与先前的尝试在获得与这种改变有关的数据之前搜索改变的方法相反,这种方法还关注首先收集所有数据,然后关注可能的改变。
服务器系统可以是数据库服务器系统,诸如本领域已知的那些。对于服务器系统,确定的改变可以是数据中的任何更改、修改、变化、矛盾、差异、分歧等,或者与服务器系统的数据有关。例如,可以在数据的处理或分析中找到数据对象(诸如数据库的表)的改变。
相应时间点的数据集的所有内容的比较意味着那些数据集中的数据之间的所有可能的比较是可用的。由于数据集是相同的数据集,因此在不同的时间点,内容可以在时间点之间有所不同(即,可以存在第一版本和第二版本),因此可以确定改变。但是,数据集本身可以是相同的数据集,无论它是否在此期间被修改。
优选地,该方法包括存储数据集的第一时间点内容;并且在比较和使用比较的步骤之后,存储所确定的改变的记录。更优选地,该方法包括,在存储所确定的改变的记录的步骤之后,丢弃所存储的数据集的第一时间点内容。
这允许仅存储确定的改变,并且删除冗余数据(诸如旧的先前数据集内容)。因此,这允许监视存储的整合、去杂乱(de-clutter),并且可能释放资源以用于第二硬件系统中的其它用途。因此,这个实施例的方法可以在任何给定的时间存储一个或多个记录的改变(通过后续数据之间的比较确定的),以及准备好与接收的下一个数据进行比较的目前数据
适当地,该方法包括存储数据集的第二时间点内容;由处理器针对第三时间点获得服务器系统的数据集的所有数据内容;在处理器处比较数据集的第二时间点内容与数据集的第三时间点内容;由处理器使用该比较来确定第二与第三时间点之间服务器系统的改变;存储所确定的改变的记录;以及丢弃所存储的数据集的第二时间点内容。
在实施例中,比较步骤包括确定数据集的相应时间点内容之间的差异,并且使用比较的步骤包括将所确定的差异记录为相应时间点之间服务器系统的改变。
在另一个实施例中,获得所有数据内容的步骤包括针对相应时间点复制服务器系统的数据集的所有数据内容。
优选地,服务器系统在第一硬件系统上运行,并且该方法包括:将从服务器系统复制的数据从第一硬件系统传送到与第一硬件系统分离的第二硬件系统;以及在第二硬件系统上处理复制的数据,以确定相应时间点之间服务器系统的改变。
将监视处理移除到分离的系统允许远离系统本身来执行服务器系统的监视,从而在监视处理期间不会打扰或干扰系统。这也意味着本地资源不会用于监视处理。要移除的数据的复本(duplication)意味着可以对数据执行更详细的分析,因为数据不再由服务器容纳,因此可以被更自由地检查和干扰。这还可以允许更加密集和更加频繁的数据分析,并且允许更积极和“永远在线”分析的可能性,因为本地数据不受打扰。
适当地,该方法包括,在确定相应时间点之间服务器系统的改变之后,生成报告所述改变的警告。
在实施例中,该方法包括:存储确定的改变的记录;在处理器处将为服务器系统确定的改变与先前确定的改变的存储记录进行比较;以及使用该比较来评估服务器系统的当前改变。
这允许所确定的改变的优先化和分类,并且还允许监视给定类型或地点的改变的历史进展。
在实施例中,服务器系统是数据库系统,并且包括:数据库;以及数据库管理系统。数据库和/或管理系统可以包括数据库模式(database schema)、数据库管理程序(administrator)等。
适当地,从服务器系统复制的数据包括与以下当中的一个或多个有关的数据:服务器系统的数据库的数据对象;模式;尺寸;状态;访问历史;同步;重制(replication);操作系统;以及管理参数。在实施例中,使用比较来确定改变的步骤可以包括比较与这些当中的一个或多个有关的数据。
例如,数据可以涉及系统状态从正常运行模式到错误模式的改变。因此,处理可以根据被比较的数据来确定这些模式之间的改变。在另一个示例中,处理可以在数据对象(诸如关系表数据库中的被编辑对象)中找到改变。
本发明的第二方面的一个实施例可以提供一种检测服务器系统的改变的方法,包括:针对第一时间点获得服务器系统的数据集的内容;针对第二时间点获得服务器系统的数据集的内容;以及将第一时间点的内容与第二时间点的内容进行比较,以确定第一与第二时间点之间服务器系统的改变。
本发明的第三方面的一个实施例可以提供一种用于监视服务器系统的改变的系统,包括被配置为执行任何前述权利要求的方法的处理器。
本发明的第四方面的一个实施例可以提供一种用于监视服务器系统的改变的系统,包括:第一硬件系统,在其上操作服务器系统;第二硬件系统,与第一硬件系统分离,该第二硬件系统包括至少一个处理器;以及传输设备,被配置为将来自服务器系统的数据从在其上操作该服务器系统的第一硬件系统传送到第二硬件系统,其中第二硬件系统的处理器被配置为:针对第一时间点获得服务器系统的数据集的所有数据内容;针对第二时间点获得服务器系统的该数据集的所有数据内容;将数据集的第一时间点内容与数据集的第二时间点内容进行比较;以及使用该比较来确定第一与第二时间点之间服务器系统的改变。
第二硬件系统可以包括监视服务器系统,并且第一硬件系统可以包括服务器(诸如数据库服务器)。因此,(数据库)服务器可以是监视服务器系统的客户端,并且(数据库)服务器可以为数据源客户端提供服务,从而为那些客户端提供数据库服务。硬件系统可以是单个或分布式系统,或此类系统的部件。
本发明的另外的方面包括计算机程序应用或包括计算机程序代码的计算机可读介质,当加载到计算机或处理器中或在计算机或处理器上运行时,所述计算机程序代码适于使计算机或处理器执行根据上述任何方面和实施例的方法。
以上方面和实施例可以组合,以提供本发明的另外的方面和实施例。
处理器和/或控制器可以包括一个或多个计算处理器,和/或具有一个或多个电子处理器的控制元件。因此,本文使用的术语“处理器”或“控制器”应当被认为是指或者单个处理器、控制器或控制元件,或者指多个处理器、控制器或控制元件;多个处理器、控制器或控制元件可以协同操作以提供所描述的功能。此外,(一个或多个)处理器或(一个或多个)控制器的单独和/或分离的功能可以由不同的控制单元、处理器或控制器托管或承担。
为了配置处理器或控制器,可以提供合适的指令集,指令集在被执行时,使得所述控制单元或计算设备实现本文中指定的技术。指令集可以适当地嵌入在所述一个或多个电子处理器中。可替代地,可以将指令集提供为要在所述计算设备上执行的软件。
附图说明
现在将参考附图以示例的方式描述本发明,其中:
图1是图示根据本发明实施例的方法的步骤的图;
图2是图示根据本发明实施例的监视系统的示意图;
图3是图示根据本发明实施例的监视系统的部件的图;
图4是图示根据本发明实施例的服务器系统的部件的图;以及
图5是图示根据本发明实施例的方法的步骤的图。
具体实施方式
通过从服务器/数据库获得数据集的整个内容,然后再次获得整个内容,并比较这两个版本,本发明的实施例提供了用于监视服务器或数据库的改变的系统和方法。这与先前的方案形成对比,先前的方案试图在某些位置或以某些具体方式找出改变或错误,或检查已标记的改变。这种特征允许本发明的优点,诸如提供全面或安全失败(fail-safe)的监视系统,不管是否正在寻求具体类型或地点的改变。
与具有高度复杂的改变或错误检测方法的先前方法相比,本发明的实施例可以被认为是“哑的”或简单的。以这种方式可以认为它们有点违反直觉,并且还因为制作了整个数据集的拷贝,这在先前被认为对于找到通常在比较中是微不足道的改变或错误是非常低效的。
此外,通过将数据的所有处理(比较/识别差异)从被监视的数据库/服务器移走并移动到集中式集线器,本发明的实施例的系统可以更好地在完全数据集上运行这些扫描,先前考虑的工具可能已经将其认为是低效的或影响性能的。
本发明的方法和系统还可以与仅仅备份系统形成对比-这些简单地拷贝数据源的版本,或者更通常地,存储自上次备份以来的任何新数据的拷贝。在这种方案中没有尝试确定数据的任何改变。实际上,本发明的实施例可以提供一种对备份系统进行错误检查的简单手段。采用一种系统,其中备份拷贝A由数据集X组成并且加时间戳为发生在该初始备份时间之后的信息已存储在备份B和C中。本发明的实施例可以比较在针对A、B和C的时间点处X的内容,并检查B和C的内容正确地反映那些时间点处存在的改变。
本发明的实施例适用于数据库和数据库系统,但也适用于不一定被指定为数据库服务器但仍然存储数据的、其管理可能需要监视的服务器系统。
本发明的实施例是服务器/数据库(DB)监视工具,例如,其将在对数据库(例如对对象-关系数据库或数据库管理系统内的模式)进行改变时警告用户或其它系统。这些工具可以满足数据库管理中改变控制和模式改变完整性的必要性。
监视工具本身可以驻留在集线器监视系统(诸如图2中所示的(204))中,并且所有功能(比较、存储结果等)都可以在集线器内发生。还可以提供GUI前端仪表板,以查看报告/警告/工具管理和配置,以及基于电子邮件的警告。
工具可以监视/警告任何结构化IT基础设施系统,诸如数据库管理系统或OS服务器(Linux、Windows、MAC OS等)。收集的数据是关于被监视的基础设施内的结构的当前状态,是给定时间点的“快照”。工具本身可以被指定为以数据库或服务器为中心的比较引擎,它从各种结构化IT基础设施中拉取数据。
本发明的实施例可以提供“永远在线”的监视应用。在实施例中,系统可以是自我维护的,例如:
在增长方面(应用可以删除冗余数据并利用回收的空间来降低运行应用的成本);
在监视/警告方面(可以安排检查并自动发出警告,从而无需手动维护应用)。
本发明的实施例促进主动监视而不是被动监视;由于可能会定期复制整个数据库/数据集并监视改变,因此所有可能的改变都应当被记录。因此,这个信息可以被用于更好地控制监视处理。
一个先前考虑的监视系统可以监视预定义规则的处理的当前状态的改变,例如,数据库的状态从打开变为关闭,这可以提示警告。相反,本发明的实施例提供了可以允许执行不同类型的监视分析的改变的比较,诸如跟踪对数据库的改变的进度,或监视改变的频率。因此,实施例的系统知道环境在过去如何被查看/改变,并且可以警告先前考虑的监视工具不认为是事件的改变。
本发明的实施例可以提供以下益处:
·降低由错误的模式改变造成的数据库管理(DBA)错误和/或问题的风险;
·识别无效的DB对象以及对象何时变为无效;
·提供关于所有改变的历史报告;
·经由数据库空间使用报告提供数据库容量规划;
·确保在所有环境中都遵守DBA标准;
·确保在所有环境中都遵守安全性和合规性标准。
由本发明的实施例提供的另一个特征是确保系统的所有环境都完全相同或满足要求的能力。例如,工具可以监视/警告生产环境与预生产/下层环境是否不完全相同。
此外,在实施例中,这些系统使用得越多,它们变得越高效。规则和比较可以基于收集的数据,因此可用的数据越多,结果就越准确。套件中的每个工具也可以利用从其它工具收集的数据。将应用用作整个套件增加了各个工具的准确性、性能和智能。
图1是图示根据本发明实施例的方法的步骤的图。首先,针对第一时间点获得服务器系统的数据集的所有数据内容(102)。还针对第二时间点获得相同数据集的数据内容(104)。第一时间点内容与第二时间点内容进行比较(106),并且比较的结果用于确定系统在第一与第二时间点之间的改变。例如,这可以是数据集本身的简单改变。在一个反例中,比较的结果可能会给出空结果,这可以用于确定系统已经改变;例如,可以预期数据集不断地被更新和修改,并且如果比较(106)不产生结果,那么这种比较可以用于标记系统中的改变,即,服务器数据或数据库在那些时间点期间还没有被更新或修改。
容纳在数据区或数据库中的数据可以是适用于数据库或可监视数据集的任何类型的数据。由监视系统寻址的数据(即,从系统复制的数据)可以是来自服务器或数据库本身或来自数据库管理系统的任何数据。例如,数据可以是数据库本身当中或来自其的数据对象;数据库中的数据项可以被更改。它可以是来自数据库模式或与数据库模式有关的数据,诸如管控数据库结构或功能的参数;例如,完整性约束可以被改变。它可以是服务器的数据库或数据区的尺寸;可以更改对象的数量、矩阵的尺寸或值的表,例如通过向表添加列。它可以是服务器或数据库的状态;例如,切换注意到数据库正在运行或已关闭的数据;注意到给定软件已安装/正在运行的数据。它可以与访问历史有关;示出哪些用户访问过服务器或数据库的数据日志将随新的访问实例而改变。它可以与数据库的同步或重制有关;表示何时或是否最近发生这些或指示成功程度的数据。它可以与使用中的操作系统有关。数据也可以是数据库管理系统的管理参数或与其有关;例如,事件的记录、管理期间采取的行动或管理系统的改变。
在每个步骤中获得或复制的服务器/数据库的数据集可以包括来自整个数据库或数据区的所有数据类别中的所有数据。可替代地,它可以仅包括来自数据库的子集的——例如,针对上述类别之一的——所有数据。在数据库例如跨多个硬件系统分布的情况下,所获得的(整个/完整)数据集可以包括来自相应的这种硬件系统上的多于一个的个体存储装置的数据。
下面将参考图5更详细地描述用于确定改变的处理。
在实施例中,监视套件中的所有工具都使用“扫描”方法来识别改变/差异。扫描在给定的时间拍摄环境的快照。将当前扫描与上次扫描进行比较可以识别那个时间段内的任何差异。
在实施例中,比较引擎可以采取以下步骤:
i.在被监视系统或基础设施的“扫描”期间,数据通过各种技术被拉入集中式集线器(hub)中,这取决于什么类型的基础设施被监视;
ii.然后将数据存储在集线器内的数据库表中。数据标有唯一标识符,并且还指派了元数据(诸如时间戳、扫描运行编号、被监视的基础设施的名称/描述);
iii.在下一次扫描中,遵循相同的过程。用标识符和元数据来拉取、存储和标记数据;
iv.比较工具发起并查找两个扫描数据集之间的差异;
v.然后将扫描结果存储在结果表中;
vi.结果数据也被指派了元数据,包括:
日期;
是否实际上存在任何差异(这将决定是否发送警告);
差异的严重程度-根据预定义的严重性阈值,(一个或多个)差异的量将确定所发送的警告的类型/优先级。
vii.结果数据现在可以用于:
警告系统或基础设施的改变;
报告一段时间内的改变,建立改变的时间线;
基于一段时间内发生的改变来识别基础设施内的趋势/模式;
基于报告数据对基础设施进行未来规划;
重新设计/改进基础设施。
例如,对于数据库模式正在被监视的实施例:
第1天:运行扫描,这捕获具体模式的快照
第2天:对模式中的表进行改变
第2天:运行扫描,这捕获模式的新快照。在扫描1与扫描2之间进行比较,并且识别表的改变并作为改变发出警告。
在实施例中,系统可以以“辐射型(hub and spoke)”模型工作。监视系统的应用在集中式集线器上运行,并通过将相关数据从每个客户端拉取到集线器中并在集线器上运行比较来监视多个客户端服务器或数据库环境。
图2是图示根据本发明实施例的监视系统的示意图。监视系统(200)包括多个服务器系统(202a、202b、202c)和单个监视系统204。数据可以由中央监视系统从服务器中汲取,如箭头所指示的。然后在监视系统上执行处理。已经确定服务器中的改变的监视系统可以基于所确定的改变输出报告或警告(206)。例如,报告可以列出针对给定数据库、针对某个数据集的历史改变。当检测到的改变特别显著时(诸如对数据集/数据库的大的改变,或者不经常访问的数据库中的改变),可以向用户或另一个系统发送警告。
图3是图示根据本发明实施例的监视系统的部件的图。第一硬件系统(300)容纳服务器系统(301)、复制模块(302)和传输设备(304)。数据可以从系统拉取并由复制模块复制,然后由传输设备传送到其它地方。在方框305处指示传送通过其发生的介质;这可以是网络,第一和第二硬件系统上的通信设备与之通信。可以简单地是两个系统直接连接。
第二硬件系统310容纳接收器设备(306)和处理器(308)。接收器从第一硬件系统接收传送的复制的数据,并将其传递到处理器。处理器执行诸如处理数据以确定改变之类的任务。
第一硬件系统可以是能够存储数据库的任何这种系统。可以取决于第一与第二硬件系统分离的性质来实现从系统复制的数据到第二硬件系统的传送。例如在包含两个硬件子系统的简单系统中,这些可以简单地在物理上分离,但是通过布线或总线连接。然后可以简单地沿着总线进行传送。在其中监视系统是数据库客户端的服务器的客户端-服务器类型系统中,传送可以通过网络进行。
图4是图示根据本发明实施例的服务器系统(400)的部件、结构和功能的图,其可以提供图2中所示的监视服务器(204)的特征,例如处理数据以确定被监视的(一个或多个)系统中的改变。要注意的是,诸如此类的服务器还可以为服务器系统(诸如图2中所示的服务器系统(202a、202b、202c))提供功能。
服务器包括具有处理器421和存储器422的处理环境420,其具有相关联的通信功能423。通信功能可以包括允许与网络或者直接与另一个服务器或计算机设备(诸如监视服务器(204)或者服务器或数据库系统(202a、202b、202c))通信的联网功能。这种通信可以受到保护。存储器422可以存储指示处理器执行监视系统的功能的可读指令。处理器421是处理能力的表示,并且在实践中可以由若干处理器提供。提供数据库410,从而在适用的时候存储数据。对于监视服务器(204),这个数据库可以为从数据库传送的先前数据、为先前改变的记录等提供存储。处理环境420内所示的元件使用处理器421和存储器422来交付功能;例如,这些元件可以提供本发明实施例的步骤,诸如比较数据集的内容,以及使用该比较来确定改变。数据库管理系统(430)模块可以位于处理环境420内,以为数据库提供管理功能。数据库管理系统还可以包括服务器的其它部分的功能,诸如处理器421、存储器422和数据库410本身
上面参考图3和4提到的计算设备可以包括逻辑阵列、存储器、模拟电路、数字电路、软件、固件和处理器中的一个或多个。计算设备的硬件和固件部件可以包括各种专用单元、电路、软件和接口,用于提供本文描述的功能和特征。(一个或多个)处理器可以是或者包括一个或多个微处理器、专用集成电路(ASIC)、可编程逻辑器件(PLD)和可编程逻辑阵列(PLA)。
图5是图示根据本发明实施例的方法的步骤的图。
在使用本发明实施例的典型监视方案中,来自系统的复制的数据被连续地(例如在安排的时间)传送到分离的硬件系统,使得数据以及对那个数据的后续添加和更新可以被处理,以找到对服务器/数据库的改变。
在图5中所示的实施例中,如图1中那样,已经获得了第一(502)和第二(504)时间点处数据集的整个数据内容。通常这些将从数据库中复制并传送到集线器,如图3中那样。
然后存储第一时间点内容(505)。由于该处理在稍后的迭代中执行,因此两个时间点当然将是第二和第三时间点,依此类推。稍后的迭代执行相同的步骤,在图5中表示为步骤502a至510a。
然后将所存储的第一时间点内容与第二时间点内容进行比较(506),如图1中那样,然后使用该比较来确定任何改变(508)。这个比较可以通过任何简单的技术完成,包括先前考虑的比较技术。这部分地是因为该方法本身在这个阶段本质上是简单的;该方法不是从大型数据集中隔离改变的复杂技术,而是将整个数据集拷贝在两个版本中,并简单地比较这些版本。比较可以简单地将该集合中的每个数据与该集合的第二版本中那个寄存器、位置等中的数据进行比较。数据对中的任何差异将被确定为改变。
还可以执行更完善的数据集比较-例如,可以比较各集合内的子集对。可以在不同级别比较被比较的数据-可以比较代码本身、或数字数据、或数据对象、或方案等。例如,可以比较两个版本的用户列表,从列表的长度、从列表中的附加字符、从列表的数据尺寸等立即清楚任何添加。数据库的状态指示符可以是要监视的(一个或多个)数据,在这种情况下,可能仅需要比较一对单个数字。但是,从根本上说,通过任何先前考虑的手段,比较本身可以是简单的,因为底层技术是两个数据集的比较。
整个数据集与先前版本的这种比较还允许比先前系统已被允许的更详细的数据询问。由于所有数据都可用,并且所有数据都进行了比较,因此即使是最小的改变也会在比较中被检测到。在先前的系统中,只允许在系统的某些级别进行改变检测,或者该改变检测必须依靠实际位于数据对象内的那些更高级别的改变的指示符。
然后记录所确定的改变(510),并且仅记录所确定的改变本身。例如,如果数据对象的新版本包含新数据,那么数据的新部分将被剥离并记录;因此,不需要存储整个数据集,仅需要存储与先前版本的差异。例如,数据对象可以在最新版本中添加的附加列中包含附加信息;仅存储这个附加列。
此外,然后可以丢弃第一时间点数据内容(514)。这允许存储对数据库的改变的历史;存储数据集的整个内容的每个拷贝可能是成本过高的(prohibitive)。通过仅存储识别出的改变,以及准备好与获得的下一个版本进行比较的数据集的最新版本,可以大大减少所需的存储,足以维护每个确定的改变的记录。这与先前的系统形成进一步的对比,先前的系统仅仅通过发现改变和对它们进行警告来监视,而不是专门记录它们的历史。例如,已经识别出系统不工作的先前系统将不具有历史中可用来能够识别出在系统在三天前以相同的方式发生故障的数据。这可以用于确定整改的行动方案,或用于将来防止这种误动。
在另外的步骤中,将改变本身(即,已经记录的第一与第二时间点数据之间的差异(510))与先前这种确定的改变进行比较(512)。例如,如果数据对象已改变两次,那么在第二时间点的第一/第二时间点数据的比较将获得第一改变(例如,添加列),并且在第三个时间点的第二/第三时间点数据的比较将获得第二改变(例如,添加另一个列)。上面概述的步骤的先前迭代(502a-510a)将提供先前确定和记录的改变。
这种比较可以允许执行不同类型的监视分析,诸如跟踪对服务器/数据库的改变的进展,或监视改变的频率。这可以允许监视系统随着监视的进展而更加熟悉数据库及其改变,并且可以允许对改变进行优先化和分类。
在实施例中,组合当前的完全复制的数据集和先前存储的检测到的改变,可以用于创建时间线报告,该报告示出从当前时间点到监视的第一天的环境的所有改变。
关于数据库(服务器)系统,可以如下描述本发明的具体实施例。系统通过从数据库视图查询所有对象来工作,并将数据插入集中式存储库以供比较。
1.包查询每个客户端数据库上的数据库对象视图,并经由DB链接将它们插入到存储库中。
2.存储库包含将以批格式(in batch format)保持来自客户端DB的数据的表:
i.第一次运行将包含所有模式对象作为批ID 1;
ii.第二次运行将所有模式对象保持为批ID 2。
3.存储库中存在将查询表的比较包:
i.该比较查找最后一批插入的数据与倒数第二批之间的差异。
4.两批之间模式的任何差异都将写入报告并通过电子邮件发送;
i.系统将使用调度和警告设施来运行报告。
也可以存储差异,并且可以删除批ID 1,但通常会维护批ID 2以与下次扫描运行进行比较。
在实施例中,集线器监视系统可以是用于组织内所有被监视环境的集中式存储库。所有数据都保存在中央集线器中并且可以用于例如公司范围的报告。例如,可以运行报告以示出公司中符合公司标准的所有环境的百分比。
本发明的实施例可以使用诸如上述那些的特征来提供工具套件,每个工具在监视数据库基础设施的具体区域方面具有它们自己的具体角色。示例是:
Schema(模式)-监视模式中对象(表、索引等)的任何改变,并在发生改变时警告相关用户、设备、系统或联网设备。
Capacity(容量)-跟踪数据库增长并以图形格式显示增长模式。
Scan(扫描)-示出多个数据库之间的差异,包括DB配置设置、尺寸、参数等。对比较一个DB的不同环境(测试与生产)有用。
Audit(审计)-监视不符合审计标准的数据库用户访问(例如,对错误地拥有管理员权限的开发人员进行警告)。
Data(数据)-监视工具,确保重制的数据库保持同步,并在重制的数据库之间存在数据差异时警告。
Server(服务器)-警告数据库服务器的OS级别的更改。存储器参数、配置、软件、目录、许可的改变。
Infra(基础设施)-报告当前安装在服务器上的所有软件。
Backups(备份)-检查和报告数据库备份。例如,记录备份所用时间的数据可以与更近的该数据进行比较,以确定备份持续时间中的任何尖峰或间歇。
Replication(重制)-检查重制过程
Standard(标准)-例如,检查所有数据库在适当的目录中,以及服务器在适当的端口上。
例如,Audit是一种监视工具,用于每天检查已经被添加或删除的数据库用户许可。这个程序还检查请求的状态从已实现、待决或紧急实现的改变。
Audit在监视系统的客户端到集线器模型上操作,其中身份检查应用采取客户端的形式。对访问的请求是通过身份检查应用进行的,并且作为常规副本数据(duplicatedata)的一部分从客户端向集线器发送,如上所述利用本发明的基本实施例进行传送到集线器过程。在集线器处,针对数据运行过程。最后,结果经由电子邮件从集线器发送到目的地,例如管理程序检查访问许可。
在集线器上运行的过程将当前数据与先前的扫描进行比较,并隔离新数据。任何新数据(即:新请求)都存储在扫描结果表中。这些新请求是通过电子邮件向相关方报告的详细信息。
例如,Audit可以检查在身份检查应用中没有记录的数据库的任何访问(通过检测数据集各版本之间的访问记录的改变),或者在没有任何请求的任何访问时提示警告。
在实施例中,可以在将数据与先前数据进行比较的初始步骤之后过滤审计报告,以找到差异。例如,过滤器可以移除对具有DBA角色的员工的访问请求。这些请求将被记录并添加到结果表中,但不会通过电子邮件系统发送。这确保只有无权访问的员工才会对其请求进行标记。
与上面的其它实施例一样,在已经运行比较过程之后不再需要数据的情况下,可以移除数据以节省空间。初始扫描可能需要永久保留;运行过程需要当前和先前的扫描,但其将根据需要被移除。
另一个示例是Schema工具,其目的是每天监视对单个数据库的任何改变。
以下对象被监视:
-新的或已删除的表
-表列定义
索引
-状态
-唯一性
-加索引的列
过程
-新的或已删除的
约束
-新的或已删除的
-约束类型
-约束列
触发器
-新的或已删除的
-状态
视图
表分区
索引分区
本发明实施例的监视系统还可以提供所有监视工具的概述,例如反映工具实现的任务的结果的仪表板应用。这将包含来自监视所需的特定扫描的指定信息。
仪表板本身将动态显示各种页面中的关键信息,这取决于正在/将要使用哪些扫描工具。
本领域技术人员将认识到是,仅通过示例的方式描述了本发明,并且可以采用各种替代方法而不脱离由所附权利要求限定的本发明的范围。

Claims (14)

1.一种监视服务器系统(200)的改变的计算机实现的方法,包括:
由处理器针对第一时间点获得(102)服务器系统的数据集的所有数据内容;
由处理器针对第二时间点获得(104)服务器系统的数据集的所有数据内容;
在处理器处比较(106)数据集的第一时间点内容与数据集的第二时间点内容;以及
由处理器使用所述比较(108)来确定第一时间点与第二时间点之间服务器系统的改变。
2.如权利要求1所述的方法,包括:
存储(505)数据集的第一时间点内容;以及
在比较和使用所述比较的步骤之后,存储所确定的改变的记录(510)。
3.如权利要求2所述的方法,包括:在存储所确定的改变的记录的步骤之后,丢弃(514)所存储的数据集的第一时间点内容。
4.如权利要求2或权利要求3所述的方法,包括:
存储数据集的第二时间点内容;
由处理器针对第三时间点获得服务器系统的数据集的所有数据内容;
在处理器处比较数据集的第二时间点内容与数据集的第三时间点内容;
由处理器使用所述比较来确定在第二时间点与第三时间点之间服务器系统的改变;
存储所确定的改变的记录;以及
丢弃所存储的数据集的第二时间点内容。
5.如前述权利要求中任一项所述的方法,其中比较步骤包括确定数据集的相应时间点内容之间的差异,
并且其中使用所述比较的步骤包括将所确定的差异记录为相应时间点之间服务器系统的改变。
6.如前述权利要求中任一项所述的方法,其中获得所有数据内容的步骤包括针对相应时间点复制服务器系统的数据集的所有数据内容。
7.如权利要求6所述的方法,其中服务器系统在第一硬件系统(300)上操作,所述方法包括:
将从服务器系统复制的数据从第一硬件系统传送(304)到与第一硬件系统分离的第二硬件系统(310);以及
在第二硬件系统上处理(308)复制的数据,以确定相应时间点之间服务器系统的改变。
8.如前述权利要求中任一项所述的方法,包括:在确定相应时间点之间服务器系统的改变之后,生成报告所述改变的警告。
9.如前述权利要求中任一项所述的方法,包括:
存储确定的改变的记录;
在处理器处将确定的改变与先前为服务器系统确定的改变的存储记录进行比较(512);以及
使用所述比较来评估服务器系统的当前改变。
10.如前述权利要求中任一项所述的方法,其中服务器系统是数据库系统,并且包括:数据库(410);以及数据库管理系统(430)。
11.如前述权利要求中任一项所述的方法,其中数据内容包括与以下当中的一个或多个有关的数据:服务器系统的数据库的数据对象;模式;尺寸;状态;访问历史;同步;重制;操作系统;以及管理参数。
12.一种用于监视服务器系统(200)的改变的系统(310),包括被配置为执行任一前述权利要求的方法的处理器。
13.一种用于监视服务器系统(200)的改变的系统,包括:
第一硬件系统(300),在其上操作服务器系统;
第二硬件系统(310),与第一硬件系统分离,所述第二硬件系统(310)包括至少一个处理器;以及
传输设备,被配置为将来自服务器系统的数据从在其上操作所述服务器系统的第一硬件系统传送(304)到第二硬件系统,
其中第二硬件系统的处理器被配置为:针对第一时间点获得(102)服务器系统的数据集的所有数据内容;针对第二时间点获得(104)服务器系统的数据集的所有数据内容;比较(106)数据集的第一时间点内容与数据集的第二时间点内容;以及使用所述比较(108)来确定第一时间点与第二时间点之间服务器系统的改变。
14.一种计算机程序应用或包括计算机程序代码的计算机可读介质,其在被加载到计算机或处理器中或在计算机或处理器上运行时,适于使计算机或处理器执行如权利要求1至11中任一项所述的方法。
CN201780035408.4A 2016-06-09 2017-06-08 用于监视服务器系统的改变的方法和系统 Pending CN109313637A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16173813.3 2016-06-09
EP16173813.3A EP3255563A1 (en) 2016-06-09 2016-06-09 Method and systems for monitoring changes for a server system
PCT/US2017/036561 WO2017214401A1 (en) 2016-06-09 2017-06-08 Method and systems for monitoring changes for a server system

Publications (1)

Publication Number Publication Date
CN109313637A true CN109313637A (zh) 2019-02-05

Family

ID=56117598

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780035408.4A Pending CN109313637A (zh) 2016-06-09 2017-06-08 用于监视服务器系统的改变的方法和系统

Country Status (4)

Country Link
US (1) US10606823B2 (zh)
EP (1) EP3255563A1 (zh)
CN (1) CN109313637A (zh)
WO (1) WO2017214401A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023277819A3 (zh) * 2021-07-02 2023-04-20 阿里巴巴新加坡控股有限公司 数据处理方法、系统、设备、计算机程序产品及存储功能

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230031872A1 (en) * 2021-07-24 2023-02-02 Vmware, Inc. Enhanced platform and processes for scalability

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005109A1 (en) * 2001-06-29 2003-01-02 Venkatesh Kambhammettu Managed hosting server auditing and change tracking
CN101178723A (zh) * 2006-11-09 2008-05-14 国际商业机器公司 用于调试数据库问题的装置和方法
US20150149411A1 (en) * 2013-11-24 2015-05-28 Infinidat Ltd. Comparison of file system snapshots stored in a remote sorage system using a network file system command

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3644416B2 (ja) * 2001-06-29 2005-04-27 三菱電機株式会社 内燃機関の空燃比制御装置および制御法
US7020797B2 (en) 2001-09-10 2006-03-28 Optimyz Software, Inc. Automated software testing management system
US6993539B2 (en) * 2002-03-19 2006-01-31 Network Appliance, Inc. System and method for determining changes in two snapshots and for transmitting changes to destination snapshot
WO2005024669A1 (en) 2003-09-04 2005-03-17 Oracle International Corporation Self-managing database architecture
US7600219B2 (en) * 2003-12-10 2009-10-06 Sap Ag Method and system to monitor software interface updates and assess backward compatibility
US7203881B1 (en) 2004-06-29 2007-04-10 Sun Microsystems, Inc. System and method for simulating system operation
US8336615B2 (en) * 2006-06-02 2012-12-25 Bj Tool Services Ltd. Low pressure-set packer
US7676510B1 (en) 2006-12-22 2010-03-09 Network Appliance, Inc. Space reservation monitoring in a fractionally reserved data storage system
US8370303B1 (en) * 2010-06-30 2013-02-05 Amazon Technologies, Inc. Generating snapshots of data tables
JP5786967B2 (ja) * 2012-01-23 2015-09-30 ダイキン工業株式会社 自動車用オイルシール
US8983961B2 (en) * 2012-11-29 2015-03-17 International Business Machines Corporation High availability for cloud servers
WO2014141460A1 (ja) * 2013-03-15 2014-09-18 株式会社日立製作所 管理システム
WO2014196954A1 (en) * 2013-06-03 2014-12-11 Empire Technology Development, Llc Health monitoring using snapshot backups through test vectors
US9792371B1 (en) * 2013-06-19 2017-10-17 Google Inc. Automatic synthesis and evaluation of content
US9514002B2 (en) * 2013-09-13 2016-12-06 Vmware, Inc. Incremental backups using retired snapshots
JP6447258B2 (ja) * 2015-03-09 2019-01-09 富士通株式会社 管理プログラム、管理方法、および管理装置
US20160306627A1 (en) * 2015-04-14 2016-10-20 International Business Machines Corporation Determining errors and warnings corresponding to a source code revision
US9524389B1 (en) * 2015-06-08 2016-12-20 Amazon Technologies, Inc. Forensic instance snapshotting
US9632859B2 (en) * 2015-06-11 2017-04-25 International Business Machines Corporation Generating problem signatures from snapshots of time series data
US9798891B2 (en) * 2015-10-13 2017-10-24 Netapp, Inc. Methods and systems for service level objective API for storage management
US10084645B2 (en) * 2015-11-30 2018-09-25 International Business Machines Corporation Estimating server-change risk by corroborating historic failure rates, predictive analytics, and user projections

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005109A1 (en) * 2001-06-29 2003-01-02 Venkatesh Kambhammettu Managed hosting server auditing and change tracking
CN101178723A (zh) * 2006-11-09 2008-05-14 国际商业机器公司 用于调试数据库问题的装置和方法
US20150149411A1 (en) * 2013-11-24 2015-05-28 Infinidat Ltd. Comparison of file system snapshots stored in a remote sorage system using a network file system command

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023277819A3 (zh) * 2021-07-02 2023-04-20 阿里巴巴新加坡控股有限公司 数据处理方法、系统、设备、计算机程序产品及存储功能

Also Published As

Publication number Publication date
US10606823B2 (en) 2020-03-31
WO2017214401A1 (en) 2017-12-14
US20170357685A1 (en) 2017-12-14
EP3255563A1 (en) 2017-12-13

Similar Documents

Publication Publication Date Title
US10891297B2 (en) Method and system for implementing collection-wise processing in a log analytics system
US8799225B2 (en) Process and system for auditing database activity
US8250202B2 (en) Distributed notification and action mechanism for mirroring-related events
CN109522290B (zh) 一种HBase数据块恢复及数据记录提取方法
US20230342372A1 (en) Method and system for implementing a log parser in a log analytics system
CN111506556A (zh) 一种多源异构的结构化数据同步方法
CN111597270A (zh) 数据同步方法、装置、设备及计算机存储介质
CN109313637A (zh) 用于监视服务器系统的改变的方法和系统
CN115905413A (zh) 一种基于Python协程和DataX的数据同步平台
CN108804239A (zh) 平台整合的方法、装置、计算机设备和存储介质
CN109313636A (zh) 用于监视服务器系统的改变的方法和系统
CN109313598A (zh) 用于监视服务器系统的改变的方法和系统
CN116450734B (zh) 一种产业园区开发建设数字孪生数据分布式存储方法
CN111209138A (zh) 数据存储系统的运维方法及装置
CN103309929A (zh) 存储和检索数据的方法和系统
CN114238324A (zh) 用于主机站点的检查方法及装置、电子设备及存储介质
CN113821412A (zh) 一种设备运维管理方法及装置
US8195604B2 (en) System and method for verifying IMS databases on a mainframe computer
CN118410106B (zh) 一种基于时间线映射的跨数据源实时同步方法
JPH1027116A (ja) 不要ファイル削除装置
CN116756109A (zh) 一种容器日志管理方法、装置、存储介质及计算机设备
CN115185925A (zh) 数据管理方法、系统、装置、计算机设备和存储介质
CN116881365A (zh) 一种字段同步方法、装置、设备及存储介质
CN118409926A (zh) 日志收集方法、装置、计算机设备和存储介质
CN117130994A (zh) 数据库日志处理的方法、装置、电子设备及介质

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