CN109165146A - 表空间自动告警的方法及终端设备 - Google Patents
表空间自动告警的方法及终端设备 Download PDFInfo
- Publication number
- CN109165146A CN109165146A CN201810736693.9A CN201810736693A CN109165146A CN 109165146 A CN109165146 A CN 109165146A CN 201810736693 A CN201810736693 A CN 201810736693A CN 109165146 A CN109165146 A CN 109165146A
- Authority
- CN
- China
- Prior art keywords
- space
- amount
- alerted
- table space
- time
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明适用于数据处理技术领域,提供了表空间自动告警的方法、终端设备及计算机可读存储介质,包括:监测表空间,并查询表空间的空闲空间量,空闲空间量为所述表空间的剩余容量;确定表空间的物理文件和物理文件所在的文件目录,并获取文件目录的实际可用空间量;将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;当所述待告警空间量满足预设的第一条件时,输出报警提示。本发明以较小的可用量为基础进行告警,提升了表空间告警的安全性。
Description
技术领域
本发明属于数据处理技术领域,尤其涉及表空间自动告警的方法、终端设备以及计算机可读存储介质。
背景技术
数据库是按照数据结构来组织、存储和管理数据的仓库,在某些数据库中,存在表
空间(tablespaces)这一概念。表空间是数据库的逻辑划分,一个表空间只能属于一个数据
库,并且所有的数据库对象都存放在指定的表空间中。表空间在构建时被设定了最大容量,
在使用表空间的过程中,需要防止表空间的容量占用过大。
在现有技术中,通常是通过手动查询表空间的现有容量和最大容量,并根据现有容量和最大容量得到表空间的可用容量,根据该可用容量进行告警操作。但是,表空间对应的实际存储数据的文件目录的空间可能因其他的数据更新操作发生变化,容易造成文件目录的可用空间实际小于表空间的可用容量,导致表空间告警的安全性和准确性低。
发明内容
有鉴于此,本发明实施例提供了数据处理技术领域,尤其涉及表空间自动告警的方法、终端设备以及计算机可读存储介质,以解决现有技术中表空间告警的安全性和准确性低的问题。
本发明实施例的第一方面提供了一种表空间自动告警的方法,包括:
监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量;
确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量;
将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;
当所述待告警空间量满足预设的第一条件时,输出报警提示。
本发明实施例的第二方面提供了一种终端设备,所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量;
确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量;
将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;
当所述待告警空间量满足预设的第一条件时,输出报警提示。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量;
确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量;
将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;
当所述待告警空间量满足预设的第一条件时,输出报警提示。
本发明实施例与现有技术相比存在的有益效果是:
本发明实施例通过获取表空间的空闲空间量和表空间对应的文件目录的实际可用空间量,在空闲空间量大于或等于实际可用空间量时,将实际可用空间量作为预警空间量,在空闲空间量小于实际可用空间量时,将空闲空间量作为预警空间量,实质上综合考虑了表空间中和文件目录中实际可用的空间,并将其中较小的空间作为待告警空间量进行告警,使得告警过程贴合实际的数据存储情况,提升了表空间告警的安全性和准确性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的表空间自动告警的方法的实现流程图;
图2是本发明实施例二提供的表空间自动告警的方法的实现流程图;
图3是本发明实施例三提供的表空间自动告警的方法的实现流程图;
图4是本发明实施例四提供的表空间自动告警的方法的实现流程图;
图5是本发明实施例五提供的终端设备的结构框图;
图6是本发明实施例六提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1示出了本发明实施例提供的表空间自动告警的方法的实现流程,详述如下:
在S101中,监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量。
数据库是按照数据结构来组织、存储和管理数据的仓库,而表空间是指数据库的逻辑划分,一个表空间只能属于一个数据库,对于数据库来说,所有的数据库对象都存放在指定的表空间中。在实际应用如业务场景中,需要对表空间的容量进行监控,以防止表空间可用的容量过小,对业务数据的存储造成影响。在本发明实施例中,对表空间进行监测,并查询表空间的空闲空间量,空闲空间量是指表空间的剩余容量。为了便于说明,后文以数据库为Oracle数据库,表空间为Oracle数据库的逻辑存储单元进行阐述,但应获知的是,其他采用表空间作为存储单元进行存储的数据库也可应用在本实施例中。在查询Oralce数据库中表空间的空闲空间量时,可通过结构化查询语言(Structured Query Language,SQL)语句进行查询,具体可连接表空间所在的Oracle数据库,创建包括待查询的表空间的表名和空闲空间量的查询语句的SQL SELECT语句,并执行该SQL SELECT语句。当然,空闲空间量的查询方法并不限于上述例子,比如还可通过搭建zabbix***实现查询,具体内容在后文进行阐述。
在S102中,确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量。
表空间包含一个或多个物理文件,物理文件是实际存在的文件,对于数据库所在的主机来说是可视的,并且对于每个物理文件来说,其只属于一个表空间。在本发明实施例中,确定表空间的物理文件,物理文件的确定同样可通过创建包括待查询的表空间的表名和物理文件的查询语句的SQL SELECT语句,并执行该SQL SELECT语句实现。在查询到数据库的表空间的物理文件后,进一步在数据库所在主机上查找物理文件所在的文件目录,并获取文件目录的实际可用空间量,其中,实际可用空间量可以是文件目录属于的逻辑卷的可用容量,也可以是用户针对该文件目录预先设定的可用容量。值得一提的是,若实际可用空间量可以是文件目录属于的逻辑卷的可用容量,则可通过du命令或df命令查看文件目录的可用容量。
可选地,若表空间的物理文件存在多个,则确定与多个物理文件对应的多个实际可用空间量,并将数值最小的实际可用空间量作为表空间的实际可用空间量。以实际可用空间量为文件目录属于的逻辑卷的可用容量举例来说,若表空间的物理文件包括三个,第一个物理文件的文件目录所在的逻辑卷为逻辑卷A,可用容量为10G(吉字节),第二个物理文件的文件目录所在的逻辑卷为逻辑卷B,可用容量为15G,第三个物理文件的文件目录所在的逻辑卷为逻辑卷C,可用容量为5G,则得到表空间的实际可用空间量为5G。上述方法在表空间拥有多个物理文件时,在多个物理文件对应的多个实际可用空间量中,将数值最小的实际可用空间量作为表空间的实际可用空间量,提升了实际可用空间量的安全程度。
在S103中,将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量。
在获取到空闲空间量和实际可用空间量后,将空闲空间量与实际可用空间量进行数值比对,并将其中数值较小的作为表空间的待告警空间量,即如果空闲空间量大于或等于实际可用空间量,则将实际可用空间量作为表空间的待告警空间量;如果空闲空间量小于实际可用空间量,则将数值较小的空闲空间量作为表空间的待告警空间量,其中,待告警空间量是指用于告警的表空间可用的空间量。
在S104中,当所述待告警空间量满足预设的第一条件时,输出报警提示。
在本发明实施例中,对表空间进行监测并得到待告警空间量的操作可以实时进行,也可以根据预设的时间间隔持续进行,比如每隔30分钟间隔监测一次。当得到的待告警空间量满足预设的第一条件时,输出报警提示,其中,第一条件可以是待告警空间量小于或等于预设阈值,当然也可以根据实际应用场景进行制定,本发明实施例对此不做限定。
可选地,对表空间预先设置告警机制,当待告警空间量满足第一条件时,自动触发告警机制以输出报警提示。在数据库内预先配置告警机制,告警机制可以是自动发送告警邮件的机制或自动发送告警短信的机制等,并可创建告警脚本,在告警脚本的执行过程中,执行步骤S101至步骤S104的操作,其中在判断出待告警空间量满足第一条件后,触发告警机制以输出报警提示,从而提升告警的便利性,实现自动告警。
可选地,对表空间预先设置自动扩展机制,当待告警空间量满足第一条件时,触发自动扩展机制以扩展表空间的容量。在本发明实施例中,可对Oracle数据库内的表空间设置自动扩展机制,自动扩展机制可通过设置Oralce数据库中的autoextend(自动扩展)属性实现。由于在实际应用场景中,在对表空间设置自动扩展时,通常设定的表空间的最大容量较小,故待告警空间量通常为表空间的空闲空间量,故可设定自动扩展机制为当监测到空闲空间量小于或等于预设阈值时,自动触发,以扩展表空间的容量,满足数据的存储需求。此外,还可在自动扩展机制中设置每次增加的空间量,以对扩展过程进行控制。
通过图1所示实施例可知,在本发明实施例中,通过监测表空间并查询表空间的空闲空间量,并确定表空间的物理文件,从而获取物理文件所在文件目录的实际可用空间量,为了获得数值较小的空间量,将空闲空间量与实际可用空间量进行比对,若空闲空间量大于或等于实际可用空间量,则将实际可用空间量作为表空间的待告警空间量;若空闲空间量小于实际可用空间量,则将空闲空间量作为表空间的待告警空间量,最后当监测得到的待告警空间量满足预设的第一条件时,输出报警提示,本发明实施例将空闲空间量与实际可用空间量中较小的量作为待告警空间量,防止仅对空闲空间量进行告警提示,导致实际可用空间已不可用时,提示的空闲空间量仍可用的情况发生,提升了告警的安全性。
图2所示,是在本发明实施例一的基础上,对当所述待告警空间量满足预设的第一条件时,输出报警提示的过程进行细化后得到的一种实现方法。本发明实施例提供的表空间自动告警的方法的实现流程图,如图2所示,该表空间自动告警的方法可以包括以下步骤:
在S201中,获取所述表空间在历史时间段内的多个已占用空间量,并基于所述多个已占用空间量计算所述表空间在历史时间段内的多个数据添加率,其中每个所述已占用空间量对应所述历史时间段内的一个子时间段。
在实际应用场景如业务场景中,表空间中的空间量变化通常存在规律性,比如在每个月的月初和月末,由于业务变更较多,空间量通常呈现上升趋势,故在本发明实施例中,获取表空间在历史时间段内的多个已占用空间量,其中历史时间段由多个子时间段组成,每个已占用空间量对应历史时间段中的一个子时间段。历史时间段和子时间段可根据告警需求自由制定,比如若要针对以天数为单位的表空间的使用情况进行告警,则可确定历史时间段为历史的某一个月,而该历史时间段的多个子时间段分别是该月的第一天,第二天,……,最后一天。在获取到多个已占用空间量后,基于多个已占用空间量计算表空间在每个子时间段的数据添加率,具体方法是计算某个当前的已占用空间量与前一个子时间段对应的已占用空间量的比值,并将该比值作为当前的已占用空间量对应子时间段的数据添加率。为了便于说明,假设第二天的已占用空间量为10G,第一天的已占用空间量为5G,则第二天的数据添加率为10G/5G=200%(为了计算第一天的数据添加率,可以预先获取上个月最后一天的已占用空间量)。值得一提的是,已占用空间量同样可通过执行SQL SELECT语句或搭建zabbix监控***等方法进行获取。
可选地,获取多个历史时间段的多个已占用空间量,并对得到的多个历史时间段在同一子时间段的多个数据添加率取均值,将得到的结果作为表空间在该子时间段的最终数据添加率。在本发明实施例中,为了提升计算出的数据添加率的准确性,可获取多个历史时间段。举例来说,多个历史时间段可以是过去一年的十二个月,而对于每一个月,获取该月的每一天(子时间段)的已占用空间量。在计算出每个月的从第一天至最后一天的数据添加率后,将十二个月中的第一天对应的多个数据添加率取均值,并作为表空间的第一天的最终数据添加率,将十二个月中的第二天对应的多个数据添加率取均值,并作为表空间的第二天的最终数据添加率……直至计算出表空间每一天的最终数据添加率为止。此外,还可对不同的历史时间段设置权值,对多个历史时间段在同一子时间段的多个数据添加率进行加权求和,将得到的结果作为表空间在该子时间段的最终数据添加率。
在S202中,当所述待告警空间量小于或等于预设阈值时,获取当前的监测时间,并确定所述监测时间所在的所述子时间段对应的数据添加率。
对待告警空间量进行监测,当得到的待告警空间量小于或等于预设阈值时,不立刻进行告警,而是获取当前的监测时间,并确定监测时间所在的子时间段,例如历史时间段的多个子时间段为一个月中的第一天至最后一天(当然也可以是一星期内的星期一至星期日等,根据实际应用场景进行设定),而当前的监测时间是xx年xx月15日,则可确定监测时间对应的子时间段为第十五天。在确定子时间段后,获取通过步骤S201确定的该子时间段的数据添加率(如果在步骤S201中是根据多个历史时间段进行计算,则该数据添加率为最终数据添加率)。
在S203中,当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示。
确定监测时间所在子时间段的数据添加率后,判断该数据添加率是否满足预设的第二条件时,如果满足,则输出报警提示。其中,第二条件可以是数据添加率大于某个特定的数值,如大于100%或大于150%等。
可选地,基于所述监测时间对应的数据添加率和对应的所述已占用空间量及所述待告警空间量计算填充时间,并输出所述填充时间,所述填充时间是从所述监测时间起到所述待告警空间量为零时所耗费的时间。除了输出报警提示之外,在本发明实施例中,还可基于监测时间对应的数据添加率,并获取表空间在监测时间的已占用空间量和待告警空间量,从而计算填充时间,并输出该填充时间。举例来说,表空间在监测时间的已占用空间量为8G,待告警空间量为2G,监测时间所在子时间段(假设子时间段以天数为单位,即为某一天)的数据添加率为150%,则填充时间为5/6天,即基于监测时间对应的数据添加率,当经过5/6天后,表空间的待告警空间量降低为零。通过输出填充时间,便于用户获知待告警空间量的发展趋势并作出对应的应对措施。
通过图2所示实施例可知,在本发明实施例中,通过获取表空间在历史时间段内的多个已占用空间量,并基于多个已占用空间量计算表空间在历史时间段内每个子时间段的数据添加率,当监测到待告警空间量小于或等于预设阈值时,获取当前的监测时间,并确定监测时间所在的子时间段对应的数据添加率,若判断出该数据添加率满足预设的第二条件时,输出报警提示,本发明实施例通过对历史时间段的数据进行计算,得到表空间在每个子时间段的数据变化趋势,即数据添加率,并通过数据添加率进行告警,适用于表空间数据变化存在规律性的实际应用场景,提升了在专用场景的适用性。
图3所示,是在本发明实施例二的基础上,对当监测时间对应的数据添加率满足预设的第二条件时,输出报警提示的过程进行细化后得到的一种实现方法。本发明实施例提供的表空间自动告警的方法的实现流程图,如图3所示,该表空间自动告警的方法可以包括以下步骤:
在S301中,获取所述表空间在所述监测时间的所述已占用空间量及所述待告警空间量,并基于所述多个数据添加率、所述监测时间对应的所述已占用空间量及所述待告警空间量,分别计算所述表空间在所述监测时间所在所述子时间段后的N个所述子时间段的N个所述待告警空间量,其中N是大于零的整数。
当待告警空间量小于或等于预设阈值后,获取当前的监测时间,并获取表空间在监测时间的已占用空间量和待告警空间量,基于与多个子时间段一一对应的多个数据添加率(在本步骤中,也可以只获取在监测时间所在子时间段之后的子时间段对应的数据添加率)和监测时间对应的已占用空间量及待告警空间量,计算表空间在监测时间所在子时间段后的N个子时间段的N个待告警空间量,N为大于零的整数。举例来说,在监测时间所在子时间段之后的两个子时间段对应的数据添加率分别为120%和90%,表空间在监测时间的已占用空间量为5G,待告警空间量为2G,则可计算出表空间在监测时间所在子时间段之后的第一个子时间段的待告警空间量为(5G+2G)-5G×120%=1G,表空间在监测时间所在子时间段之后的第二个子时间段的待告警空间量为(5G+2G)-5G×120%×90%=1.6G。
在S302中,当N个所述待告警空间量的任一个小于或等于预设的第二阈值时,输出所述报警提示。
在计算出N个待告警空间量后,将N个待告警空间量分别与预设的第二阈值进行比对,如果N个待告警空间量中的某一个小于或等于第二阈值,则输出报警提示。此外,还可输出小于或等于第二阈值的待告警空间量以及对应的子时间段,提示用户在该子时间段进行数据清理或其他应对操作。
通过图3所示实施例可知,在本发明实施例中,通过获取表空间在监测时间的已占用空间量及待告警空间量,并基于已获取的多个数据添加率、监测时间对应的已占用空间量以及对应的待告警空间量,分别计算表空间在所监测时间所在子时间段后的N个子时间段的N个待告警空间量,其中N是大于零的整数,若N个待告警空间量的任一个小于或等于预设的第二阈值,则输出报警提示,本发明实施例实现了对未来N个子时间段的待告警空间量的预测,并根据预测结果进行报警提示,提升了对未来时段进行告警的准确性。
图4所示,是在本发明实施例一的基础上,对监测表空间,并查询表空间的空闲空间量的过程进行细化后得到的一种实现方法。本发明实施例提供了表空间自动告警的方法的实现流程图,如图所示,该表空间自动告警的方法可以包括以下步骤:
在S401中,在所述表空间所在的主机上搭建zabbix客户端。
在本发明实施例中,可通过搭建zabbix监控***实现对数据库中表空间的监控,其中,zabbix是一款开源的分布式监控***,适用于对一个或多个目标进行监控的场景。zabbix监控***主要包括zabbix服务端和zabbix客户端,zabbix服务端是zabbix的核心组件,负责接收zabbix客户端发送的数据;zabbix客户端部署在目标的主机上,用于采集该主机的数据。在本发明实施例中,在需要获取查询结果的主机(用户操作的主机)上建立zabbix服务端,并在表空间所在的主机上建立zabbix客户端,建立过程可通过安装zabbix安装包并配置zabbix环境实现。
在S402中,获取预设的查询脚本,并创建基于所述查询脚本的zabbix监控项,在所述zabbix监控项的执行过程中,获取所述zabbix客户端中所述表空间的所述空闲空间量。
为了对表空间进行监控,首先获取预设的查询脚本,查询脚本中包括用于检测表空间空闲空间量的SQL语句(还可以包括检测表空间物理文件的SQL语句),其中,查询脚本的格式为Shell脚本,Shell脚本是将Linux/Unix***下的规范命令进行集合生成的程序文件,从而可以进行一次性执行。将已创建的查询脚本添加至zabbix客户端的配置文件中,并重启zabbix客户端。同时,在zabbix服务端配置与查询脚本对应的发现规则,即建立与查询脚本对应的监控项(监控项中指向查询脚本的名称),通过对监控项赋予执行权限,并运行该监控项,zabbix服务端便可获取到表空间的空闲空间量。值得一提的是,还可在zabbix服务端中配置监控项的运行时间或运行间隔,以满足对表空间的监测需求,比如每天早上八点运行一次监控项或每隔半个小时运行一次监控项。
通过图4所示实施例可知,在本发明实施例中,搭建zabbix监控***,具体在表空间所在的主机上搭建zabbix客户端,将查询脚本添加至zabbix客户端的配置文件,在欲获取查询结果的主机上搭建zabbix服务端,并在zabbix服务端上创建基于查询脚本的zabbix监控项,并执行该zabbix监控项,在执行过程中,zabbix服务端便可自动获取到zabbix客户端中表空间的空闲空间量,本发明实施例通过搭建zabbix监控***以及创建监控项,使得无需在监测表空间时手动输入SQL语句,提升了获取空闲空间量的便利性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图5示出了本发明实施例提供的终端设备的结构框图,该终端设备包括的各单元用于执行图1对应的实施例中的各步骤。具体请参阅图1与图1所对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。
参见图5,所述终端设备包括:
查询单元51,用于监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量;
获取单元52,用于确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量;
比对单元53,用于将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;
第一输出单元54,用于当所述待告警空间量满足预设的第一条件时,输出报警提示。
可选地,所述第一输出单元54,包括:
计算单元,用于获取所述表空间在历史时间段内的多个已占用空间量,并基于所述多个已占用空间量计算所述表空间在历史时间段内的多个数据添加率,其中每个所述已占用空间量对应所述历史时间段内的一个子时间段;
添加率确定单元,用于当所述待告警空间量小于或等于预设阈值时,获取当前的监测时间,并确定所述监测时间所在的所述子时间段对应的数据添加率;
第二输出单元,用于当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示。
可选地,所述第二输出单元,包括:
空间量计算单元,用于获取所述表空间在所述监测时间的所述已占用空间量及所述待告警空间量,并基于所述多个数据添加率、所述监测时间对应的所述已占用空间量及所述待告警空间量,分别计算所述表空间在所述监测时间所在所述子时间段后的N个所述子时间段的N个所述待告警空间量,其中N是大于零的整数;
第三输出单元,用于当N个所述待告警空间量的任一个小于或等于预设的第二阈值时,输出所述报警提示。
可选地,所述第二输出单元,还包括:
第四输出单元,用于基于所述监测时间对应的数据添加率和对应的所述已占用空间量及所述待告警空间量计算填充时间,并输出所述填充时间,所述填充时间是从所述监测时间起到所述待告警空间量为零时所耗费的时间。
可选地,所述查询单元51,包括:
搭建单元,用于在所述表空间所在的主机上搭建zabbix客户端;
执行单元,用于获取预设的查询脚本,并创建基于所述查询脚本的zabbix监控项,在所述zabbix监控项的执行过程中,获取所述zabbix客户端中所述表空间的所述空闲空间量。
因此,本发明实施例提供的终端设备将空闲空间量和实际可用空间量中较小的量作为待告警空间量进行告警,提升了告警的安全性和准确性。
图6是本发明实施例提供的终端设备的示意图。如图6所示,该实施例的终端设备6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62。所述处理器60执行所述计算机程序62时实现上述各个表空间自动告警的方法实施例中的步骤,例如图1所示的步骤S101至S104。或者,所述处理器60执行所述计算机程序62时实现上述各终端设备实施例中各单元的功能,例如图5所示单元51至54的功能。
示例性的,所述计算机程序62可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述终端设备6中的执行过程。例如,所述计算机程序62可以被分割成查询单元、获取单元、比对单元及第一输出单元,各单元具体功能如下:
查询单元,用于监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量;
获取单元,用于确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量;
比对单元,用于将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;
第一输出单元,用于当所述待告警空间量满足预设的第一条件时,输出报警提示。
所述终端设备6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图6仅仅是终端设备6的示例,并不构成对终端设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述终端设备6的内部存储单元,例如终端设备6的硬盘或内存。所述存储器61也可以是所述终端设备6的外部存储设备,例如所述终端设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述终端设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将所述终端设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的终端设备和方法,可以通过其它的方式实现。例如,以上所描述的终端设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种表空间自动告警的方法,其特征在于,包括:
监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量;
确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量;
将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;
当所述待告警空间量满足预设的第一条件时,输出报警提示。
2.如权利要求1所述的方法,其特征在于,所述当所述待告警空间量满足预设的第一条件时,输出报警提示,包括:
获取所述表空间在历史时间段内的多个已占用空间量,并基于所述多个已占用空间量计算所述表空间在历史时间段内的多个数据添加率,其中每个所述已占用空间量对应所述历史时间段内的一个子时间段;
当所述待告警空间量小于或等于预设阈值时,获取当前的监测时间,并确定所述监测时间所在的所述子时间段对应的数据添加率;
当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示。
3.如权利要求2所述的方法,其特征在于,所述当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示,包括:
获取所述表空间在所述监测时间的所述已占用空间量及所述待告警空间量,并基于所述多个数据添加率、所述监测时间对应的所述已占用空间量及所述待告警空间量,分别计算所述表空间在所述监测时间所在所述子时间段后的N个所述子时间段的N个所述待告警空间量,其中N是大于零的整数;
当N个所述待告警空间量的任一个小于或等于预设的第二阈值时,输出所述报警提示。
4.如权利要求2所述的方法,其特征在于,所述当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示,还包括:
基于所述监测时间对应的数据添加率和对应的所述已占用空间量及所述待告警空间量计算填充时间,并输出所述填充时间,所述填充时间是从所述监测时间起到所述待告警空间量为零时所耗费的时间。
5.如权利要求1所述的方法,其特征在于,所述监测表空间,并查询所述表空间的空闲空间量,包括:
在所述表空间所在的主机上搭建zabbix客户端;
获取预设的查询脚本,并创建基于所述查询脚本的zabbix监控项,在所述zabbix监控项的执行过程中,获取所述zabbix客户端中所述表空间的所述空闲空间量。
6.一种终端设备,其特征在于,所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
监测表空间,并查询所述表空间的空闲空间量,所述空闲空间量为所述表空间的剩余容量;
确定所述表空间的物理文件和所述物理文件所在的文件目录,并获取所述文件目录的实际可用空间量;
将所述空闲空间量与所述实际可用空间量进行比对,若所述空闲空间量大于或等于所述实际可用空间量,则将所述实际可用空间量作为所述表空间的待告警空间量;若所述空闲空间量小于所述实际可用空间量,则将所述空闲空间量作为所述表空间的待告警空间量;
当所述待告警空间量满足预设的第一条件时,输出报警提示。
7.如权利要求6所述的终端设备,其特征在于,所述当所述待告警空间量满足预设的第一条件时,输出报警提示,包括:
获取所述表空间在历史时间段内的多个已占用空间量,并基于所述多个已占用空间量计算所述表空间在历史时间段内的多个数据添加率,其中每个所述已占用空间量对应所述历史时间段内的一个子时间段;
当所述待告警空间量小于或等于预设阈值时,获取当前的监测时间,并确定所述监测时间所在的所述子时间段对应的数据添加率;
当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示。
8.如权利要求7所述的终端设备,其特征在于,所述当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示,包括:
获取所述表空间在所述监测时间的所述已占用空间量及所述待告警空间量,并基于所述多个数据添加率、所述监测时间对应的所述已占用空间量及所述待告警空间量,分别计算所述表空间在所述监测时间所在所述子时间段后的N个所述子时间段的N个所述待告警空间量,其中N是大于零的整数;
当N个所述待告警空间量的任一个小于或等于预设的第二阈值时,输出所述报警提示。
9.如权利要求7所述的终端设备,其特征在于,所述当所述监测时间对应的数据添加率满足预设的第二条件时,输出所述报警提示,还包括:
基于所述监测时间对应的数据添加率和对应的所述已占用空间量及所述待告警空间量计算填充时间,并输出所述填充时间,所述填充时间是从所述监测时间起到所述待告警空间量为零时所耗费的时间。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810736693.9A CN109165146B (zh) | 2018-07-06 | 2018-07-06 | 表空间自动告警的方法及终端设备 |
PCT/CN2018/105557 WO2020006868A1 (zh) | 2018-07-06 | 2018-09-13 | 表空间自动告警的方法、装置、终端设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810736693.9A CN109165146B (zh) | 2018-07-06 | 2018-07-06 | 表空间自动告警的方法及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109165146A true CN109165146A (zh) | 2019-01-08 |
CN109165146B CN109165146B (zh) | 2021-08-17 |
Family
ID=64897437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810736693.9A Active CN109165146B (zh) | 2018-07-06 | 2018-07-06 | 表空间自动告警的方法及终端设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109165146B (zh) |
WO (1) | WO2020006868A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110134680A (zh) * | 2019-04-04 | 2019-08-16 | 平安科技(深圳)有限公司 | 空间监控方法、装置、计算机设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636450A (zh) * | 2015-01-26 | 2015-05-20 | 上海新炬网络信息技术有限公司 | 一种数据库表空间监控方法 |
CN104699807A (zh) * | 2015-03-23 | 2015-06-10 | 上海新炬网络信息技术有限公司 | 一种oracle数据表空间的自动监控扩容方法 |
US20150379053A1 (en) * | 2009-04-14 | 2015-12-31 | International Business Machines Corporation | Managing database object placement on multiple storage devices |
CN107133331A (zh) * | 2017-05-11 | 2017-09-05 | 郑州云海信息技术有限公司 | 基于shell脚本实现的数据库自动扩容方法及装置 |
CN107947998A (zh) * | 2017-12-19 | 2018-04-20 | 河南信安通信技术股份有限公司 | 一种基于应用***的实时监测*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040117408A1 (en) * | 2002-12-17 | 2004-06-17 | Capital One Financial Corporation | Systems, methods and articles of manufacture for determining available space in a database |
US7895247B2 (en) * | 2003-10-29 | 2011-02-22 | Oracle International Corporation | Tracking space usage in a database |
CN104486109B (zh) * | 2014-12-09 | 2018-02-23 | 大唐移动通信设备有限公司 | 一种故障检测、恢复方法及装置 |
CN105095496A (zh) * | 2015-08-24 | 2015-11-25 | 浪潮软件股份有限公司 | 一种通过zabbix监控mysql表空间的方法 |
-
2018
- 2018-07-06 CN CN201810736693.9A patent/CN109165146B/zh active Active
- 2018-09-13 WO PCT/CN2018/105557 patent/WO2020006868A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150379053A1 (en) * | 2009-04-14 | 2015-12-31 | International Business Machines Corporation | Managing database object placement on multiple storage devices |
CN104636450A (zh) * | 2015-01-26 | 2015-05-20 | 上海新炬网络信息技术有限公司 | 一种数据库表空间监控方法 |
CN104699807A (zh) * | 2015-03-23 | 2015-06-10 | 上海新炬网络信息技术有限公司 | 一种oracle数据表空间的自动监控扩容方法 |
CN107133331A (zh) * | 2017-05-11 | 2017-09-05 | 郑州云海信息技术有限公司 | 基于shell脚本实现的数据库自动扩容方法及装置 |
CN107947998A (zh) * | 2017-12-19 | 2018-04-20 | 河南信安通信技术股份有限公司 | 一种基于应用***的实时监测*** |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110134680A (zh) * | 2019-04-04 | 2019-08-16 | 平安科技(深圳)有限公司 | 空间监控方法、装置、计算机设备及存储介质 |
CN110134680B (zh) * | 2019-04-04 | 2022-11-29 | 平安科技(深圳)有限公司 | 空间监控方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020006868A1 (zh) | 2020-01-09 |
CN109165146B (zh) | 2021-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10296303B2 (en) | Visual programming system | |
CN108153670B (zh) | 一种接口测试方法、装置及电子设备 | |
CN110199273B (zh) | 用于在多维数据库环境中的一次扫描中进行加载、聚合和批量计算的***和方法 | |
CN107622102B (zh) | 实体***生成方法及终端设备 | |
US9569722B2 (en) | Optimal persistence of a business process | |
CN109086182A (zh) | 数据库自动告警的方法及终端设备 | |
CN109710615A (zh) | 数据库的访问管理方法、***、电子设备和存储介质 | |
CN107102995B (zh) | 一种sql执行计划的确定方法及装置 | |
CN104834660A (zh) | 基于区间的模糊数据库搜索 | |
CN110347706A (zh) | 用于处理查询的方法、数据库***和计算机可读存储介质 | |
CN113935487A (zh) | 可视化卫星故障诊断知识的生成方法、装置及*** | |
CN111399868A (zh) | 软件更新方法、微处理器、域控制器及可读存储介质 | |
CN109240893B (zh) | 应用运行状态查询方法及终端设备 | |
CN109165146A (zh) | 表空间自动告警的方法及终端设备 | |
CN117787550A (zh) | 基于增量计算模型的指标处理方法、装置及电子设备 | |
CN113190576A (zh) | 数据处理方法、装置、计算机设备和可读存储介质 | |
CN114995719B (zh) | 列表渲染方法、装置、设备以及存储介质 | |
CN115827646A (zh) | 索引配置方法、装置和电子设备 | |
CN116629015A (zh) | 数字孪生任务的处理方法、装置、设备及存储介质 | |
CN113722141B (zh) | 数据任务的延迟原因确定方法、装置、电子设备及介质 | |
CN115328917A (zh) | 一种查询方法、装置、设备及存储介质 | |
CN108536758B (zh) | 一种数据库模式的数据表重构方法、装置及*** | |
CN107066330B (zh) | 模块化数据分布计划生成方法及*** | |
CN114679468B (zh) | 文件传输方法、装置、电子设备及计算机可读存储介质 | |
CN114462373B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |