数据库的检测方法; ^置 技术领域 本发明涉及计算机通信领域, 具体而言, 涉及一种数据库的检测方法及装 置。 背景技术 随着网络电视 ( Internet Protocol Television, 简称为 IPTV ) 的迅猛发展, 终端应用程序的版本升级任务日益增多。 目前, 终端应用程序版本升级的一个 主要内容是数据库升级, 而数据库并不像版本程序那样是以一个个物理的操作 系统文件呈现的, 所以, 维护人员无法釆用传统的差分工具或检测手段对升级 后的数据库进行检查。 在上述的相关技术中, 现网各局点均是釆用手工配置对升级后的应用程序 进行大致地检查, 然后通过主要业务流程的测试来判定数据库的升级是否成 功, 这样故的维护成本比较高, 且风险较大。 发明内容 本发明的主要目的在于提供一种数据库的检测方案, 以至少解决上述的现 网各局点通过主要业务流程的测试来判定数据库的升级是否成功而导致维护 成本高、 风险大的问题。 为了实现上述目的, 根据本发明的一个方面, 提供了一种数据库的检测方 法。 根据本发明的数据库的检测方法包括以下步骤: 挖掘标准数据库的数据字 典信息,生成指定格式的文件;将指定格式的文件拷贝到待检测数据库的设备; 以及对待检测数据库的实例和指定格式的文件中的实例做差分, 并显示差分后 的结果。 优选地, 待检测数据库的实例和指定格式的文件中的实例包括至少以下之 一: 数据库表、 视图、 同义词、 索引、 存储过程、 函数、 序列、 触发器、 分区。
优选地, 对待检测数据库的实例和指定格式的文件中的实例做差分之前, 该方法还包括: 读取待检测数据库在指定模式下的数据对象, 从待检测数据库 的数据字典信息中查找并导出与数据对象对应的实例。 优选地, 挖掘标准数据库的数据字典信息包括: 读取标准数据库在指定模 式下的数据对象, 查找数据字典信息中与数据对象对应的实例。 优选地, 生成指定格式的文件包括: 按照指定格式将查找到的与数据对象 对应的实例生成一个序列化平面的文件。 优选地, 显示差分后的结果包括: 以树形示意图或者报表的形式显示差分 后的结果。 为了实现上述目的, 根据本发明的另一方面, 还提供了一种数据库的检测 装置。 根据本发明的数据库的检测装置, 包括: 挖掘模块, 设置为挖掘标准数据 库的数据字典信息, 并生成指定格式的文件; 拷贝模块, 设置为将指定格式的 文件拷贝到待检测数据库的设备; 差分模块, 设置为对待检测数据库的实例和 指定格式的文件中的实例做差分; 以及显示模块, 设置为显示差分后的结果。 优选地, 挖掘模块包括: 读取模块, 设置为读取标准数据库在指定模式下 的数据对象; 以及查找模块, 设置为查找数据字典信息中与数据对象对应的实 例。 优选地, 挖掘模块还设置为按照指定格式将查找模块查找到的与数据对象 对应的实例生成一个序列^ ^平面的文件。 优选地, 显示模块还设置为以树形示意图或者报表的形式显示差分后的结 果。 通过本发明, 釆用将现网各局点的数据库 (即, 待检测数据库) 与标准数 据库进行比较的方式, 解决了现网各局点通过主要业务流程的测试来判定数据 库的升级是否成功而导致维护成本高、风险大的问题,增加了数据库的可靠性, 提高了系统的效率和准确性。
附图说明 此处所说明的附图用来提供对本发明的进一步理解, 构成本申请的一部 分, 本发明的示意性实施例及其说明用于解释本发明, 并不构成对本发明的不 当限定。 在附图中: 图 1是根据本发明实施例的数据库的检测方法的流程图; 图 2是根据本发明实施例的数据库的检测装置的结构框图; 图 3才艮据本发明优选实施例的数据库差分工具的结构示意图; 图 4是本发明实施例的数据库实例差分后的树形显示差异的屏幕截图。 具体实施方式 下文中将参考附图并结合实施例来详细说明本发明。 需要说明的是, 在不 冲突的情况下, 本申请中的实施例及实施例中的特征可以相互组合。 图 1是根据本发明实施例的数据库的检测方法的流程图, 如图 1所示, 该 方法包括以下步 4聚: 步骤 S 102, 挖掘标准数据库的数据字典信息, 生成指定格式的文件; 步骤 S 104, 将指定格式的文件拷贝到待检测数据库的设备; 以及 步骤 S 106 , 对待检测数据库的实例和指定格式的文件中的实例做差分, 并 显示差分后的结果。 通过本发明实施例, 釆用将待检测数据库 (即, 现网各局点的数据库) 与 标准数据库 (即, 实验室的数据库) 进行比较的方式, 解决了现网各局点通过 主要业务流程的测试来判定数据库的升级是否成功而导致维护成本高、 风险大 的问题, 增加了数据库的可靠性, 提高了系统的效率和准确性。 优选地, 待检测数据库的实例和指定格式的文件中的实例可以包括至少以 下之一: 数据库表、 视图、 同义词、 索引、 存储过程、 函数、 序列、 触发器、 分区。 该方法实现简单、 可操作性强。
优选地, 在步骤 S 102中, 可以读取标准数据库在指定模式下的数据对象, 查找数据字典信息中与数据对象对应的实例。 该方法可以获得标准数据库的实 例, 提高了系统的效率。 优选地, 在步骤 S 102 中, 可以按照指定格式将查找到的与数据对象对应 的实例生成一个序列化平面的文件。 该方法可以将查找到的与数据对象对应的 实例按照指定格式 (即, 预定格式) 导出到一个对象文件中, 以便将现网局点 的数据库的实例与标准数据库的实例进行差分, 提高了系统的处理能力。 优选地, 在步骤 S 106之前, 可以读取待检测数据库在指定模式下的数据 对象, 从待检测数据库的数据字典信息中查找并导出与数据对象对应的实例。 本优选实施中可以将待检测数据库的实例导出, 使得两个数据库的差分对 象一致, 从而对待检测数据库和标准数据库中的实例进行差分, 比较升级后的 数据库 (即, 待检测数据库) 的实例与实-险室的数据库中实例的差别, 进而确 定现网局点的数据库是否升级成功。 优选地, 在步骤 S 106 中, 以树形示意图或者 4艮表的形式显示差分后的结 果。 该方法可以使操作人员直观地、 快捷地观察到待测数据库与标准数据库中 实例的差别, 提高了用户体验。 图 2是根据本发明实施例的数据库的检测装置的结构框图, 如图 2所示, 该装置包括: 挖掘模块 22、 拷贝模块 24、 差分模块 26和显示模块 28 , 下面对 该结构进行详细说明。 挖掘模块 22 , 设置为挖掘标准数据库的数据字典信息, 并生成指定格式的 文件; 拷贝模块 24 , 耦合至挖掘模块 22 , 设置为将指定格式的文件拷贝到待 检测数据库的设备; 差分模块 26 , 耦合至拷贝模块 24 , 设置为对待检测数据 库的实例和指定格式的文件中的实例故差分; 以及显示模块 28 , 耦合至差分模 块 26 , 设置为显示差分后的结果。 优选地, 挖掘模块 22包括: 读取模块 222 , 设置为读取标准数据库在指定 模式下的数据对象; 以及查找模块 224 , 耦合至读取模块 222 , 设置为查找数 据字典信息中与数据对象对应的实例。 优选地, 挖掘模块 22还设置为按照指定格式将查找模块 224查找到的与 数据对象对应的实例生成一个序列化平面的文件。
优选地, 显示模块 28还设置为以树形示意图或者报表的形式显示差分后 的结果。 需要说明的是, 在实施过程中, 数据库的检测装置可以是一种数据库差分 工具。 本发明实施例中, 将待检测数据库与标准数据库进行比较, 解决了现网各 局点通过主要业务流程的测试来判定数据库的升级是否成功而导致维护成本 高、 风险大的问题, 增加了数据库的可靠性, 提高了系统的效率和准确性。 下面将结合实例对本发明实施例的实现过程进行详细描述。 实例 1 图 3根据本发明优选实施例的数据库差分工具的结构示意图, 该数据库差 分工具包括: 数据字典挖掘模块 32、 平面文件差分模块 34和数据库实例差分 报表模块 36 , 下面对该结构进行详细说明。 数据字典挖掘模块 32 , 用于读取数据库指定模式下的数据对象; 平面文件 差分模块 34 , 用于存储各数据对象, 对各数据对象进行差分; 数据库实例差分 报表模块 36 , 用于以树形示意图或者报表形式展示数据库实例之间的差异。 在实施过程中, 使用数据库差分工具进行数据库的检测时可以包括如下步 骤: 步骤 S302, 启动数据库差分工具。 步骤 S304,挖掘实 -险室的数据库的数据字典信息, 生成指定格式的标准文 件 (可以是序列化平面文件 )„ 步骤 S306, 将该标准文件拷贝到现网, 连接待现网数据库(即, 待检测的 升级后的数据库), 依次读取现网数据库的数据字典, 将各数据库对象的结构 信息以预定格式导出来。 步骤 S308,将导出的现网数据库对象的结构信息依次与标准文件中的信息 进行比较, 以树形示图或者报表展示差异。 例如, 比较的内容可以包括: 数据 库表、 视图、 同义词、 索引、 存储过程、 函数、 序列、 触发器、 分区等数据库 对象的结构, 以及 Oracle数据库的某些指定的表的内容。 具体地, 也可以对两 个 Oracle数据库实例故在线差分。
需要说明的是, 在实施过程中, 可以只包括挖掘和差分过程, 不包括生成 序列化平面文件的过程。 实例 2 以实现 Oracle数据库实例(实验室)与现网数据库 1实例的差分为例, 本发 明优选实施例的数据库的检测方法可以包括以下步骤: 步骤 1 , 连接实验室的 Oracle数据库 (即, 标准数据库) 实例。 步骤 2, 依次读取数据库指定模式下的数据对象。 步骤 3 , 从相关数据字典表中逐一检索该对象的描述信息, 并按照预定的 格式生成 (例如, 保存数据可按数据库表、 视图、 同义词、 索引、 存储过程、 函数等格式顺序进行生成)一份序列化平面文件。 步骤 4, 将实验室生成的序列化平面文件读取到内存中。 步骤 5 , 依次连接待检查的 Oracle数据库实例 (例如, 现网数据库 1、 2、 3... )。 步骤 6, 读取待检查的 Oracle数据库指定模式下的数据对象。 步骤 7, 从相关待检查的 Oracle数据库的数据字典表中逐一检索该对象的 描述信息, 并与实-险室生成的序列化平面文件中的相关内容按照预定顺序进行 比较。 步骤 8, 树形示意图展示差异或者生成相应的报表。 本实施例可以解决现网局点的数据库版本升级任务日益增多而导致数据 库维护成本高、 风险大的现状和隐患的问题, 简化了现网局点数据库升级后的 检查程序, 提高了用户体验。 实例 3 图 4是本发明实施例的数据库实例差分后的树形显示差异的示意图, 如图 4 所示, 左右两侧分别为实-险室和现网数据库表的差分结构示意图, 其中, SYS.TABLES(2)表示 SYS 用户 中共有两张表 ( 即, SYS.sysevent 和 SYS.login_user 表), 左侧实验室数据库中表名为 SYS.login_user 的子节点有
COLUMNS(3), 表示此表有 3列, 同理也可以挂载其它子节点 (例如, 索引、 外键等), user_id为 SYS.login_user表的列名,其子节点有 TYPE: NUMBER及 SIZE: 50等一些属性值 (均根据实际数据加载)。 在实施过程中, 可以通过不同颜色对左右两侧的差分结果加以标注等。 例 如, 可以用蓝色表示两侧值有差异, 用红色表示左侧有此元素, 右侧没有此元 素, 以达到展示差异的目的。 另外, 本发明实施例还可以对某些指定数据库表的数据进行比较。 综上所述, 本发明实施例可以涉及 Oracle数据库对象的结构及序列化、 并 对 Oracle数据库对象和序列化的平面文件进行差分等技术, 旨在简化数据库升 级后的检查。 并且, 可以将现网各局点的数据库与制造商实验室的标准数据库 进行比较, 发现数据库对象结构的差异, 从而增加了数据库的可靠性, 提高了 用户体 -险。 显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以 用通用的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多 个计算装置所组成的网络上, 可选地, 它们可以用计算装置可执行的程序代码 来实现, 从而, 可以将它们存储在存储装置中由计算装置来执行, 并且在某些 情况下, 可以以不同于此处的顺序执行所示出或描述的步骤, 或者将它们分别 制作成各个集成电路模块, 或者将它们中的多个模块或步骤制作成单个集成电 路模块来实现。 这样, 本发明不限制于任何特定的硬件和软件结合。 以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领 域的技术人员来说, 本发明可以有各种更改和变化。 凡在本发明的 ^"神和原则 之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之 内。
FIELD OF THE INVENTION The present invention relates to the field of computer communications, and in particular to a method and apparatus for detecting a database. BACKGROUND With the rapid development of Internet Protocol Television (IPTV), the version upgrade task of terminal applications is increasing. Currently, one of the main contents of the terminal application version upgrade is database upgrade, and the database is not presented as a physical operating system file like the version program. Therefore, maintenance personnel cannot use traditional differential tools or detection means. The upgraded database is checked. In the above related technologies, each site of the current network is manually checked to perform an extensive check on the upgraded application, and then the test of the main business process is used to determine whether the database upgrade is successful, so that the maintenance cost is relatively high. , and the risk is greater. SUMMARY OF THE INVENTION A main object of the present invention is to provide a database detection scheme to solve at least the above-mentioned problems in the existing network sites through the test of the main business processes to determine whether the upgrade of the database is successful, resulting in high maintenance cost and high risk. In order to achieve the above object, according to an aspect of the present invention, a method of detecting a database is provided. The method for detecting a database according to the present invention comprises the steps of: mining data dictionary information of a standard database, generating a file of a specified format; copying a file of a specified format to a device of a database to be detected; and an instance of the database to be detected and a file of a specified format The instance in the difference is made and the result of the difference is displayed. Preferably, the instance of the database to be detected and the instance in the file of the specified format include at least one of the following: a database table, a view, a synonym, an index, a stored procedure, a function, a sequence, a trigger, a partition. Preferably, before the instance of the database to be detected and the instance in the file of the specified format are differentiated, the method further includes: reading the data object of the database to be detected in the specified mode, and searching and exporting from the data dictionary information of the database to be detected. An instance that corresponds to a data object. Preferably, mining the data dictionary information of the standard database comprises: reading a data object of the standard database in the specified mode, and searching for an instance corresponding to the data object in the data dictionary information. Preferably, generating the file in the specified format comprises: generating a file of a serialization plane by using the found instance corresponding to the data object according to the specified format. Preferably, the result of displaying the difference comprises: displaying the result of the difference in the form of a tree diagram or a report. In order to achieve the above object, according to another aspect of the present invention, a database detecting apparatus is also provided. A detecting device for a database according to the present invention, comprising: a mining module configured to mine data dictionary information of a standard database and generate a file of a specified format; a copy module configured to copy a file of a specified format to a device to be detected; The module, set to differentiate between the instance of the database to be tested and the instance in the file of the specified format; and the display module, set to display the result of the difference. Preferably, the mining module comprises: a reading module configured to read a data object of the standard database in the specified mode; and a lookup module configured to look up an instance of the data dictionary information corresponding to the data object. Preferably, the mining module is further configured to generate a sequence of ^^ plane files by the instance corresponding to the data object found by the lookup module according to the specified format. Preferably, the display module is further arranged to display the result of the difference in the form of a tree diagram or a report. Through the invention, the method of comparing the database of each site in the existing network (that is, the database to be detected) with the standard database is solved, and the test of the main business process by each site of the existing network is determined to determine whether the upgrade of the database is successful and the maintenance is caused. The problem of high cost and high risk increases the reliability of the database and improves the efficiency and accuracy of the system. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are set to illustrate,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a flow chart showing a method for detecting a database according to an embodiment of the present invention; FIG. 2 is a block diagram showing a structure of a detecting device for a database according to an embodiment of the present invention; Schematic diagram of the structure of the database difference tool; FIG. 4 is a screen shot of the difference in tree display after the difference of the database instance in the embodiment of the present invention. BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. It should be noted that the embodiments in the present application and the features in the embodiments may be combined with each other without conflict. 1 is a flowchart of a method for detecting a database according to an embodiment of the present invention. As shown in FIG. 1, the method includes the following steps: Step S102: Mining data dictionary information of a standard database to generate a file in a specified format; S104, copying the file of the specified format to the device of the database to be detected; and step S106, making an difference between the instance of the database to be detected and the instance in the file of the specified format, and displaying the result of the difference. Through the embodiment of the present invention, the method for comparing the database to be detected (that is, the database of each site of the current network) with the standard database (that is, the database of the laboratory) is used to solve the test of the main business processes of each site on the live network. To determine whether the upgrade of the database is successful, resulting in high maintenance cost and high risk, increasing the reliability of the database and improving the efficiency and accuracy of the system. Preferably, the instance of the database to be detected and the instance in the file of the specified format may include at least one of the following: a database table, a view, a synonym, an index, a stored procedure, a function, a sequence, a trigger, a partition. The method is simple to implement and has high operability. Preferably, in step S102, the data object of the standard database in the specified mode may be read, and an instance corresponding to the data object in the data dictionary information is searched. This method can obtain an instance of a standard database and improve the efficiency of the system. Preferably, in step S102, the searched instance corresponding to the data object may be generated in a specified format to generate a file of a serialization plane. The method can export the found instance corresponding to the data object to an object file according to a specified format (ie, a predetermined format), so as to differentiate the instance of the database of the current network site from the instance of the standard database, thereby improving the system. Processing power. Preferably, before step S106, the data object of the database to be detected in the specified mode may be read, and an instance corresponding to the data object is searched for and derived from the data dictionary information of the database to be detected. In the preferred implementation, an instance of the database to be detected may be derived such that the difference objects of the two databases are consistent, so that the instances in the detection database and the standard database are differentiated, and the instance of the upgraded database (ie, the database to be detected) is compared with the instance. The difference between the instances in the database of the real-risk room, and then determine whether the database of the current network site is upgraded successfully. Preferably, in step S106, the result of the difference is displayed in the form of a tree diagram or a table. The method can enable the operator to visually and quickly observe the difference between the database to be tested and the instance in the standard database, and improve the user experience. 2 is a structural block diagram of a detecting apparatus of a database according to an embodiment of the present invention. As shown in FIG. 2, the apparatus includes: a mining module 22, a copying module 24, a difference module 26, and a display module 28. The structure is detailed below. Description. The mining module 22 is configured to mine the data dictionary information of the standard database, and generate a file of a specified format; the copying module 24 is coupled to the mining module 22, and is configured to copy the file of the specified format to the device to be detected; the difference module 26, Coupled to the copy module 24, set to an instance of the database to be detected and an instance difference in the file of the specified format; and a display module 28 coupled to the difference module 26, arranged to display the result of the difference. Preferably, the mining module 22 includes: a reading module 222 configured to read a data object of the standard database in the specified mode; and a searching module 224 coupled to the reading module 222, configured to look up the data dictionary information corresponding to the data object An example. Preferably, the mining module 22 is further configured to generate a serialized flat file of the instance corresponding to the data object found by the lookup module 224 in a specified format. Preferably, display module 28 is further arranged to display the results of the difference in the form of a tree diagram or a report. It should be noted that, in the implementation process, the detection device of the database may be a database difference tool. In the embodiment of the present invention, the database to be detected is compared with the standard database, and the problem that the upgrade of the database is determined by the test of the main business process by the local network to determine whether the upgrade of the database is successful leads to high maintenance cost and high risk, and the database is increased. Reliability improves system efficiency and accuracy. The implementation process of the embodiment of the present invention will be described in detail below with reference to examples. Example 1 FIG. 3 is a schematic structural diagram of a database difference tool according to a preferred embodiment of the present invention. The database difference tool includes: a data dictionary mining module 32, a plane file difference module 34, and a database instance difference report module 36. The structure is detailed below. Description. a data dictionary mining module 32, configured to read a data object in a database specified mode; a flat file difference module 34, configured to store each data object, and differentiate each data object; a database instance difference report module 36, configured to be in a tree shape Schematic or report form shows the differences between database instances. In the implementation process, when the database difference tool is used for detecting the database, the following steps may be included: Step S302: Start the database difference tool. Step S304, mining the data dictionary information of the real-risk database, and generating a standard file (which may be a serialized flat file) in a specified format. Step S306, copy the standard file to the live network, and connect to the database to be live (ie, The upgraded database to be detected, the data dictionary of the existing network database is sequentially read, and the structural information of each database object is exported in a predetermined format. Step S308, the structural information of the exported existing network database object is sequentially and in the standard file. The information is compared to show differences in a tree diagram or report. For example, the comparison can include: the structure of database objects such as database tables, views, synonyms, indexes, stored procedures, functions, sequences, triggers, partitions, etc. The contents of some specified tables of the Oracle database. Specifically, the two Oracle database instances can also be online differential. It should be noted that, in the implementation process, only the mining and differential processes may be included, and the process of generating a serialized flat file is not included. Example 2 Taking the difference between the Oracle database instance (laboratory) and the existing network database 1 instance as an example, the database detection method of the preferred embodiment of the present invention may include the following steps: Step 1, connecting the laboratory's Oracle database (ie, the standard) Database) instance. Step 2, sequentially read the data objects in the database specified mode. Step 3: Search the description information of the object one by one from the related data dictionary table, and generate according to a predetermined format (for example, the saved data may be generated in the order of a database table, a view, a synonym, an index, a stored procedure, a function, etc.) Serialized flat files. Step 4. Read the serialized flat file generated by the lab into the memory. Step 5: Connect the Oracle database instances to be checked (for example, the current network databases 1, 2, 3...). Step 6. Read the data object in the specified mode of the Oracle database to be checked. Step 7. Search the description information of the object one by one from the data dictionary table of the Oracle database to be inspected, and compare the related content in the serialized flat file generated by the real-risk room in a predetermined order. Step 8. The tree diagram shows the differences or generates the corresponding report. This embodiment can solve the problem that the database version upgrade task of the current network site is increasing, resulting in high maintenance cost and high risk of database maintenance, simplifying the inspection procedure after the upgrade of the current network site database, and improving the user experience. Example 3 FIG. 4 is a schematic diagram showing the difference of the tree display after the difference of the database instance in the embodiment of the present invention. As shown in FIG. 4, the left and right sides are respectively a schematic diagram of the difference structure between the real-risk room and the current network database table, wherein SYS .TABLES(2) means that there are two tables in the SYS user (that is, the SYS.sysevent and SYS.login_user tables), and the child node named SYS.login_user in the left lab database has COLUMNS(3), which means that this table has 3 columns. Similarly, other child nodes (for example, indexes, foreign keys, etc.) can be mounted. User_id is the column name of the SYS.login_user table, and its child nodes have TYPE: NUMBER and SIZE. : 50 and some other attribute values (all loaded according to actual data). In the implementation process, the difference results of the left and right sides can be marked by different colors. For example, you can use blue to indicate that there are differences between the two sides. Red indicates that there is this element on the left side, and there is no such element on the right side to achieve the purpose of displaying the difference. In addition, the embodiment of the present invention can also compare data of some specified database tables. In summary, the embodiments of the present invention may relate to the structure and serialization of an Oracle database object, and the techniques of performing differences between an Oracle database object and a serialized flat file, and are intended to simplify the check after the database upgrade. Moreover, the database of each site of the existing network can be compared with the standard database of the manufacturer's laboratory, and the difference in the structure of the database object is found, thereby increasing the reliability of the database and improving the user's body-risk. Obviously, those skilled in the art should understand that the above modules or steps of the present invention can be implemented by a general-purpose computing device, which can be concentrated on a single computing device or distributed over a network composed of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device, such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein. The steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps are fabricated as a single integrated circuit module. Thus, the invention is not limited to any specific combination of hardware and software. The above is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the scope of the present invention are intended to be included within the scope of the present invention.