CN115438026A - Database scanning method, device, equipment, storage medium and product - Google Patents

Database scanning method, device, equipment, storage medium and product Download PDF

Info

Publication number
CN115438026A
CN115438026A CN202211129495.9A CN202211129495A CN115438026A CN 115438026 A CN115438026 A CN 115438026A CN 202211129495 A CN202211129495 A CN 202211129495A CN 115438026 A CN115438026 A CN 115438026A
Authority
CN
China
Prior art keywords
scanning
database
subsystem
result
client
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
CN202211129495.9A
Other languages
Chinese (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.)
China Construction Bank Corp
CCB Finetech Co Ltd
Original Assignee
China Construction Bank Corp
CCB Finetech Co Ltd
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 China Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN202211129495.9A priority Critical patent/CN115438026A/en
Publication of CN115438026A publication Critical patent/CN115438026A/en
Pending legal-status Critical Current

Links

Images

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/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • 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

Abstract

The application relates to the technical field of data analysis, and provides a database scanning method, a device, equipment, a storage medium and a product, which comprise the following steps: receiving commissioning version information sent by a client, setting a physical subsystem corresponding to the commissioning version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page; and constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on a database of the target subsystem to obtain a scanning result, and sending the scanning result to the client. According to the method and the device, when the database scanning efficiency and the scanning type of the database are improved, the database scanning accuracy is ensured, and the condition that misoperation is caused due to frequent manual sending of a large number of scanning instructions is avoided.

Description

Database scanning method, device, equipment, storage medium and product
Technical Field
The present application relates to the field of data analysis technologies, and in particular, to a database scanning method, apparatus, device, storage medium, and product.
Background
The bank has a plurality of physical subsystems, an Oracle database is adopted in most systems, and the application and database version of each system can be updated on line and iteratively in irregular regular and emergent versions every month. As database systems continue to grow in size, problems therewith will increase, so that the bank must perform iteration in a test environment before each version is subjected to iteration in a production environment in order to reinforce the requirements of the database version for intrinsic management, perform database scanning on the database of the iterated version, and discover and correct database problems in time.
Currently, after the oracle database tool is manually connected with the database, a single certain database scanning rule SQL statement is executed to return a result, so as to realize database scanning, and identify a database problem in the database to be iterated in a production environment.
However, the inventor finds that, when a plurality of databases need to be scanned by a plurality of database scanning rule SQL statements, the current method can only perform manual scanning operation on one database one by one according to each database scanning rule SQL statement, which is not only inefficient, time-consuming and labor-consuming, but also is prone to operation errors due to tedious repeated manual operations, resulting in inaccurate database problem identification and statistical results.
Disclosure of Invention
The application provides a database scanning method, a database scanning device, a database scanning storage medium and a database scanning product, which are used for solving the problems that the existing method is low in efficiency, consumes time and labor, and causes inaccurate database identification and statistical results due to misoperation caused by complicated manual repeated operation.
In a first aspect, the present application provides a database scanning method, which runs in a front-end server, and includes:
receiving commissioning version information sent by a client, setting a physical subsystem corresponding to the commissioning version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
and constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on a database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
In the above scheme, before receiving the commissioning version information sent by the client, the method further includes:
receiving new information sent by a client, connecting the new information with a physical subsystem corresponding to the new information in a back-end service cluster, and summarizing the physical subsystem corresponding to the new information to form a system cluster.
In the foregoing solution, after the sending the scanning result to the client, the method further includes:
and comparing and analyzing two or more than two scanning results of a database of one target subsystem to obtain a longitudinal comparison result, and sending the longitudinal comparison result to the client.
In the foregoing solution, after the sending the scanning result to the client, the method further includes:
and comparing and analyzing the scanning results of the data of two or more than two target subsystems to obtain a transverse comparison result, and sending the transverse comparison result to the client.
In the above scheme, the setting a physical subsystem in a system cluster corresponding to the commissioning version information as a target subsystem and sending a test page having attribute information of the target subsystem to the client includes:
extracting environment information in the commissioning version information, and setting a physical subsystem corresponding to the environment information as an environment subsystem;
extracting a version number in the production version information, setting an environment subsystem corresponding to the version number as a target subsystem, and copying a database in the target subsystem into the front-end server;
extracting attribute information of the target subsystem, and inputting the attribute information into a preset test template to convert the test template into a test page, wherein the test template comprises a scan name for describing a scan item and a selection frame corresponding to the scan name.
In the above solution, the constructing a scanning task according to the scanning project includes:
judging the item type of the scanning item;
if the project type is a construction type, acquiring the executable script corresponding to the scanning project, extracting an object code in the scanning project, and inputting the attribute information of the target subsystem and the object code into the executable script to obtain a scanning task, wherein the object code is a unique identifier of a database in a physical subsystem;
if the item type is a calling type, identifying a tool interface corresponding to the scanning item in the target subsystem, extracting an object code in the scanning item, and recording an address of the tool interface and the object code into a preset scanning thread to obtain a scanning task.
In the foregoing solution, the executing the scanning task on the target subsystem to perform database scanning on the database of the target subsystem and obtain a scanning result includes:
setting a database of a target subsystem corresponding to the scanning task as a to-be-scanned database, and arranging the scanning task according to the generation time of the scanning task to obtain a task queue;
and executing the scanning tasks to the scanning library in sequence according to the sequence of the scanning tasks in the task queue and obtaining a task result corresponding to the scanning task.
In the above solution, the connecting with the physical subsystem corresponding to the new information in the backend service cluster includes:
extracting data property information in the new information, wherein the data property information describes the attribute and/or content of system data stored in a database;
accessing a management server in the back-end service cluster, and acquiring system address information corresponding to the data property information from the management server, wherein the system address information refers to a storage position of system data corresponding to the data property information in the back-end service cluster;
and accessing the physical subsystem corresponding to the system address information, and establishing communication connection with the accessed physical subsystem.
In the above scheme, the comparing and analyzing two or more scan results of a database of a target subsystem to obtain a longitudinal comparison result includes:
summarizing two or more scanning results of a database of a target subsystem to obtain a longitudinal set, setting the scanning result with the latest generation time in the longitudinal set as a longitudinal reference result, and setting other scanning results except the longitudinal reference result in the longitudinal set as longitudinal reference results;
corresponding the basic scanning items in the longitudinal basic result to the reference scanning items in the longitudinal reference result one by one, calculating the difference between the basic scanning items and the reference scanning items to obtain a basic reference difference, and summarizing the basic reference difference to obtain an analysis result;
and summarizing the longitudinal benchmark result, the longitudinal reference result and the longitudinal analysis result to obtain the longitudinal comparison result.
In the above scheme, the comparing and analyzing the scanning results of two or more databases in one target subsystem to obtain a transverse comparison result includes:
summarizing scanning results of two or more databases in one target subsystem to obtain a transverse set, setting the scanning result with the latest generation time in the transverse set as a transverse reference result, and setting other scanning results except the transverse reference result in the transverse set as transverse reference results;
enabling the basic scanning items in the transverse basic result to correspond to the reference scanning items in the transverse reference result one by one, calculating the basic scanning items and the reference scanning items, and summarizing to obtain an analysis result;
and summarizing the transverse reference result, the transverse reference result and the transverse analysis result to obtain the transverse comparison result.
In a second aspect, the present application provides a database scanning apparatus, operating in a front-end server, including:
the system item selection module is used for receiving commissioning version information sent by a client, setting a physical subsystem corresponding to the commissioning version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
and the database scanning module is used for constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on the database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
In the above scheme, the method further comprises:
and the system new building module is used for receiving new building information sent by the client, connecting the new building information with a physical subsystem corresponding to the new building information in the back-end service cluster, and summarizing the physical subsystem corresponding to the new building information to form a system cluster.
In the above scheme, the method further comprises:
and the longitudinal comparison module is used for comparing and analyzing two or more than two scanning results of a database of one target subsystem to obtain a longitudinal comparison result and sending the longitudinal comparison result to the client.
In the above scheme, the method further comprises:
and the transverse comparison module is used for comparing and analyzing the scanning results of two or more databases in one target subsystem to obtain a transverse comparison result and sending the transverse comparison result to the client.
In a third aspect, the present application provides a computer device comprising: a processor and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
the processor executes computer-executable instructions stored by the memory to implement the database scanning method as recited in the claims above.
In a fourth aspect, the present application provides a computer-readable storage medium having stored therein computer-executable instructions for implementing the database scanning method described above when executed by a processor.
In a fifth aspect, the present application provides a computer program product comprising a computer program which, when executed by a processor, implements the database scanning method described above.
According to the database scanning method, the device, the equipment, the storage medium and the product, a physical subsystem in a back-end service cluster, which runs a database corresponding to the production version information, is set as a target subsystem according to the production version information, so that the condition that the test of the database to be produced is omitted is avoided;
the scanning items to be carried out on the target subsystem by the client are determined according to the scanning names selected by the client on the test page, and then the database scanning is carried out on the target subsystem in a targeted manner, so that the controllability of the database scanning items is ensured, a database manager can adjust the scanning range and the scanning items of the database according to the requirement of the database manager, and the application range of the method is expanded;
the scanning task is executed on the target subsystem to respectively execute at least one scanning task on at least one target subsystem according to the sequence, so that the technical effect of scanning multiple databases in the multiple target subsystems can be automatically realized, the database scanning accuracy is ensured due to the adoption of the modularized scanning task while the database scanning efficiency and the scanning type of the databases are improved, and the condition that misoperation is caused by frequent manual sending of a large number of scanning instructions is avoided.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and together with the description, serve to explain the principles of the application.
Fig. 1 is a schematic view of an application scenario provided in an embodiment of the present application;
fig. 2 is a flowchart of embodiment 1 of a database scanning method provided in an embodiment of the present application;
fig. 3 is a flowchart of embodiment 2 of a database scanning method provided in an embodiment of the present application;
fig. 4 is a flowchart of embodiment 3 of a database scanning method provided in an embodiment of the present application;
fig. 5 is a flowchart of embodiment 4 of a database scanning method provided in an embodiment of the present application;
FIG. 6 is a schematic diagram of program modules of a database scanning device according to the present invention;
fig. 7 is a schematic diagram of a hardware structure of a computer device in the computer device according to the present invention.
With the above figures, there are shown specific embodiments of the present application, which will be described in more detail below. These drawings and written description are not intended to limit the scope of the inventive concepts in any manner, but rather to illustrate the inventive concepts to those skilled in the art by reference to specific embodiments.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
Referring to fig. 1, the application scenario is as follows: the front-end server 2 running a database scanning method is connected with a back-end service cluster 3 and at least one client 5, wherein the back-end service cluster 3 is at least provided with a physical subsystem 31; the front-end server 2 receives the new information sent by the client 5, is connected with the physical subsystem 31 corresponding to the new information in the back-end service cluster 3, and summarizes the physical subsystem 31 corresponding to the new information to form a system cluster 4; the front-end server 2 receives the commissioning version information sent by the client 5, sets a physical subsystem 31 corresponding to the commissioning version information in the system cluster 4 as a target subsystem, sends a test page with attribute information of the target subsystem to the client 5, and receives a scanning item sent by the client 5 according to the test page; the front-end server 2 constructs a scanning task according to the scanning project, executes the scanning task on the target subsystem, scans the database in the target subsystem to obtain a scanning result, and sends the scanning result to the client 5.
The data transmission method provided by the application aims to solve the technical problems in the prior art.
The following describes the technical solution of the present application and how to solve the above technical problems in detail by specific embodiments. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present application will be described below with reference to the accompanying drawings.
Example 1:
referring to fig. 2, the present application provides a database scanning method, which runs in a front-end server, and includes:
s101: the method comprises the steps of receiving commissioning version information sent by a client, setting a physical subsystem corresponding to the commissioning version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem.
In this step, a physical subsystem in a back-end service cluster, in which a database corresponding to the production version information operates, is set as a target subsystem according to the production version information, so as to avoid missing of testing the database to be produced. The commissioning version information refers to the version number of the database which is iterated in the test environment and is to be iterated in the production environment. Therefore, the physical subsystems of the database to be iterated in the back-end service cluster can be quickly found through the commissioning version information.
The scanning items to be performed on the target subsystem by the client are determined according to the scanning names selected by the client on the test page, and then the database scanning is performed on the target subsystem in a targeted manner, so that the controllability of the database scanning items is ensured, a database manager can adjust the scanning range and the scanning items of the database according to the requirement of the database manager, and the application range of the method is expanded. In this embodiment, the database is an Oracle database: the Oracle database is a relational database product taking a distributed type as a core, and has a complete data management function. The database management system is always in the leading position in the field of databases, is the most used database management system in the world at present, and is widely applied to various industries in life. It features high usability, stability, portability, safety, function and convenient use, and is used for various large, medium and small management systems.
Further, the front-end Server is a Server with a B/S architecture, namely a Browser and Server architecture mode, under the architecture, a user working interface is realized by a WWW Browser, a few parts of business logic are realized at the front end (Browser), but main business logic is realized at the Server end (Server), so that a three-layer 3-tier structure is formed, a core part for realizing system functions is concentrated on the Server, and development, maintenance and use of the system are simplified. The client only needs to install a Browser (Browser), such as Netscape Navigator or Internet Explorer, and the Server only needs to install databases such as Oracle, sybase, informix or SQL Server. And the browser performs data interaction with the database through the Web Server. Therefore, the load of the client computer is greatly simplified, the cost and the workload of system maintenance and upgrading are reduced, and the Total Cost (TCO) of a user is reduced.
In a preferred embodiment, the setting a physical subsystem in the system cluster corresponding to the commissioning version information as a target subsystem and sending a test page having attribute information of the target subsystem to the client includes:
s11: extracting environment information in the production version information, and setting a physical subsystem corresponding to the environment information as an environment subsystem;
in a test scene, different physical subsystems may run a unified database, and the physical subsystems storing the same database and system data usually run in different test environments, and the physical subsystems running in different test environments expose different dimensions in the test environments thereof, so that the physical subsystems running in different test environments can select the test environments required by the client to be tested by extracting the environment information in the production version information and setting the physical subsystems corresponding to the environment information as the environmental subsystems, and further the physical subsystems run in the test environments selected by the client, so that the database in the physical subsystems can be tested in the dimensions required by the client, expose the corresponding problems, and ensure the controllability of test environment selection; the testing environment is a system environment which is set up for carrying out functional testing and/or non-functional testing on the physical subsystem, at least one functional dimension software testing is carried out on the physical subsystem through at least one functional testing environment, and at least one non-functional dimension software testing is carried out on the physical subsystem through at least one non-functional testing environment.
In this embodiment, the environment information represents a name or a number of the testing environment, for example: functional PL1-4 environments, non-functional FGN environments.
S12: and extracting the version number in the production version information, setting the environment subsystem corresponding to the version number as a target subsystem, and copying a database in the target subsystem to the front-end server.
In this step, a target subsystem to be online is identified by extracting a version number in the production version information and setting an environment subsystem corresponding to the version number as the target subsystem, that is: all target subsystems to be brought online are tested to ensure the comprehensiveness of the database scanning operation.
By copying the database in the target subsystem into the front-end server, the problem that the physical subsystem cannot be called by other applications due to the fact that the computing resources or memory resources of the physical subsystem are occupied as the database is directly scanned in the physical subsystem is avoided; or the condition that the database in the physical subsystem is affected due to the fact that the database scanning is carried out on the physical subsystem occurs, and meanwhile, the database is copied into the front-end server, so that the database in the front-end server can be configured as required, and the requirement of a database manager for carrying out various tests on the database can be met.
S13: extracting attribute information of the target subsystem, and inputting the attribute information into a preset test template to convert the test template into a test page, wherein the test template comprises a scan name for describing a scan item and a selection frame corresponding to the scan name.
In this step, the test template is a web page having a scan name describing a scan item and a selection frame corresponding to the scan name, and the attribute information of the target subsystem is entered into a preset test template to convert the test template into the test page, so that the client can confirm whether the selected target subsystem is correct and determine the scan item for scanning the target subsystem, thereby improving the operation convenience of the client.
S102: and constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on a database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
In this step, the database scanning is a method for checking whether a problem exists by collecting and diagnosing data information of the database in the using process according to a specific rule, so as to prevent the database from being damaged due to hacking problem loopholes or prevent the use efficiency of the database from being reduced due to certain performance problems, thereby timely repairing the loopholes, solving the scanning problem and improving the performance of the database.
In this embodiment, a scan task capable of automatically scanning a target subsystem is constructed according to the scan item, so that the situation that at present, testers need to manually and sequentially enter java codes or sql statements is avoided, at least one scan instruction is performed on a database, and the scan task is finally completed, so that the test efficiency is low, and the test error rate is high is avoided. The scanning task is a data information acquisition diagnosis method which is used for judging whether data in the database accords with a preset data rule or not and is used for checking whether the database has problems or not; the data rules are definitions of the content, and/or the quantity, and/or the form of the data in the database. For example: the index number of any system data in the database cannot exceed 5, and the data size of the system data corresponding to any sql statement in the database cannot exceed 2 ten thousand bytes. Therefore, the database scanning refers to a calculation process for judging whether the system data in the database conforms to the data rule through the scanning task.
The scanning task is executed on the target subsystem to respectively execute at least one scanning task on at least one target subsystem according to the sequence, so that the technical effect of scanning multiple databases in the multiple target subsystems can be automatically realized, the database scanning accuracy is ensured due to the adoption of the modularized scanning task while the database scanning efficiency and the scanning type of the databases are improved, and the condition of misoperation caused by frequent manual sending of a large number of scanning instructions is avoided.
In a preferred embodiment, the constructing a scan task according to the scan item includes:
s21: judging the item type of the scanning item;
in this step, the item type reflects the dependency source of the scanning task that the client needs to construct;
the dependency sources include: the executable script is subjected to scripting in advance, and the executable script is an executable program which is written in advance by testers through java codes and/or sql statements;
the dependency sources further include: and an sql tool interface preset in the database.
The project type comprises a construction type and a calling type, the construction type refers to the fact that an executable script written in advance needs to be called, and the calling type refers to the fact that a tool interface set in advance in the physical subsystem needs to be called.
S22: and if the project type is a construction type, acquiring the executable script corresponding to the scanning project, extracting an object code in the scanning project, and inputting the attribute information of the target subsystem and the object code into the executable script to obtain a scanning task, wherein the object code is a unique identifier of a database in the physical subsystem.
In this step, the attribute information is entered into the executable script to define the physical subsystem for executing the executable script, and the object code is entered into the executable script, so that the executable script becomes a scanning task capable of automatically scanning the database specified in the physical subsystem.
S23: if the item type is a calling type, identifying a tool interface corresponding to the scanning item in the target subsystem, extracting an object code in the scanning item, and recording an address of the tool interface and the object code into a preset scanning thread to obtain a scanning task.
In this step, in the scanning task obtained by recording the address of the tool interface and the object code into the scanning thread, the address is used to define an interface to be called for the scanning thread, the object code is used to define an execution database of the interface for the scanning thread, and the scanning thread is a computing resource provided for implementing the above operation.
In this embodiment, the tool interface is an API interface preset in the target subsystem, or an API interface preset in a database in the target subsystem.
In a preferred embodiment, the performing the scan task on the database of the target subsystem to perform database scan on the target subsystem and obtain a scan result includes:
s31: setting a database of a target subsystem corresponding to the scanning task as a to-be-scanned database, and arranging the scanning task according to the generation time of the scanning task to obtain a task queue;
s32: and executing the scanning tasks to the scanning library in sequence according to the sequence of the scanning tasks in the task queue and obtaining a task result corresponding to the scanning task.
In this embodiment, when there are many scanning tasks, the plurality of scanning tasks are constructed into the task queue to ensure that the scanning tasks can be called in order, and each library to be scanned can be scanned in order by the database, thereby ensuring the order and automation of the execution of the scanning tasks.
Example 2:
referring to fig. 3, the present application provides a database scanning method, which runs in a front-end server, and includes:
s201: receiving new information sent by a client, connecting the new information with a physical subsystem corresponding to the new information in a back-end service cluster, and summarizing the physical subsystem corresponding to the new information to form a system cluster.
In the step, a mode of constructing a system cluster based on newly-built information is introduced, so that the condition that the physical subsystems which need to be tested are difficult to query due to too large redundancy of the system cluster caused by the fact that a large number of physical subsystems which are irrelevant to the test are mixed in the system cluster is avoided;
the front-end server is connected with the physical subsystem so as to conveniently obtain the database from the physical subsystem subsequently, the database scanning of the data in the back-end service cluster by the front-end server is facilitated, the situation that the database in the back-end service cluster is occupied or interfered due to the fact that the database scanning is directly carried out on the back-end service cluster is avoided, and the originality of the data in the back-end service cluster is ensured.
In a preferred embodiment, the connecting with the physical subsystem corresponding to the new information in the backend service cluster includes:
s41: extracting data property information in the new information, wherein the data property information describes the attribute and/or content of system data stored in a database;
s42: accessing a management server in the back-end service cluster, and acquiring system address information corresponding to the data property information from the management server, wherein the system address information refers to a storage position of system data corresponding to the data property information in the back-end service cluster;
s43: and accessing the physical subsystem corresponding to the system address information, and establishing communication connection with the accessed physical subsystem.
In this embodiment, the attribute and/or the content of the system data in the database which needs to be currently or subsequently scanned is defined by the data property information, so that a tester can conveniently obtain the physical subsystem in which the database of the system data is recorded from the back-end service cluster, and a communication connection is established between the tester and the physical subsystem, so that the tester can conveniently obtain the database in which the system data is recorded from the physical subsystem subsequently, and scan the database, thereby improving the identification and connection efficiency of the physical subsystem in which the system data is stored.
S202: receiving production version information sent by a client, setting a physical subsystem corresponding to the production version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
this step corresponds to S101 in embodiment 1.
S203: and constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on a database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
This step corresponds to S102 in embodiment 1.
Example 3:
referring to fig. 4, the present application provides a database scanning method, which runs in a front-end server, and includes:
s301: receiving production version information sent by a client, setting a physical subsystem corresponding to the production version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
this step corresponds to S101 in embodiment 1.
S302: and constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on a database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
This step corresponds to S102 in example 1.
S303: and comparing and analyzing two or more scanning results of a database of one target subsystem to obtain a longitudinal comparison result, and sending the longitudinal comparison result to the client.
In this step, the historical scanning results of the database are compared in a mode of comparing and analyzing two or more than two scanning results of the database of the target subsystem, so that a longitudinal comparison result capable of showing the trend of the historical scanning results of the database to the client is obtained, and a tester can search for the optimization direction of the database according to the longitudinal comparison result.
In a preferred embodiment, the performing a comparison analysis on two or more scan results of a database of a target subsystem to obtain a longitudinal comparison result includes:
s51: summarizing two or more scanning results of a database of a target subsystem to obtain a longitudinal set, setting the scanning result with the latest generation time in the longitudinal set as a longitudinal reference result, and setting other scanning results except the longitudinal reference result in the longitudinal set as longitudinal reference results;
s52: corresponding the reference scanning items in the longitudinal reference result to the reference scanning items in the longitudinal reference result one by one, calculating the difference between the reference scanning items and the reference scanning items to obtain a reference difference, and summarizing the reference difference to obtain a longitudinal analysis result;
s53: and summarizing the longitudinal reference result, the longitudinal reference result and the longitudinal analysis result to obtain the longitudinal comparison result.
In this embodiment, summarizing two or more scanning results of a database of one target subsystem to obtain a vertical set means: and scanning data in the same target subsystem and the same database in two or more same test batches based on the same scanning task.
The data rule has at least one rule entry, a base scan entry being a constituent element of a longitudinal base result, a base scan entry representing whether system data in the database conforms to a rule entry, and a reference scan entry being a constituent element of a longitudinal reference result, a reference scan entry representing whether system data in the database conforms to a rule entry.
Enabling the basic scanning items in the longitudinal basic result to correspond to the reference scanning items in the longitudinal reference result one by one so as to ensure that the basic scanning items are consistent with the rule items corresponding to the reference scanning items;
obtaining a development trend capable of reflecting a longitudinal reference result relative to a longitudinal reference result by calculating a difference between the reference scanning item and the reference scanning item to obtain a reference difference, and summarizing the reference difference to obtain an analysis result;
and acquiring the development trend of the result corresponding to the rule entry by summarizing the longitudinal reference result, the longitudinal reference result and the longitudinal analysis result to facilitate a tester to find the direction of optimizing the database according to the trend.
Example 4:
referring to fig. 5, the present application provides a database scanning method, which runs in a front-end server, and includes:
s401: receiving production version information sent by a client, setting a physical subsystem corresponding to the production version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
this step corresponds to S101 in embodiment 1.
S402: and constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, scanning a database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
This step corresponds to S102 in example 1.
S403: and comparing and analyzing the scanning results of two or more databases in one target subsystem to obtain a transverse comparison result, and sending the transverse comparison result to the client.
In this step, the databases of two or more target subsystems with scanning results are compared in a manner of performing comparison analysis based on the same database scanning, so that the databases of different target subsystems are compared to obtain the difference of scanning results obtained by performing the same database scanning, and thus, a tester can conveniently search the optimization direction of the databases through transverse comparison.
In a preferred embodiment, the performing alignment analysis on the scanning results of two or more databases in one target subsystem to obtain a lateral alignment result includes:
s61: summarizing scanning results of two or more databases in one target subsystem to obtain a transverse set, setting the scanning result with the latest generation time in the transverse set as a transverse reference result, and setting other scanning results except the transverse reference result in the transverse set as transverse reference results;
s62: enabling the basic scanning items in the transverse basic result to correspond to the reference scanning items in the transverse reference result one by one, calculating the basic scanning items and the reference scanning items, and summarizing to obtain a transverse analysis result;
s63: and summarizing the transverse reference result, the transverse reference result and the transverse analysis result to obtain the transverse comparison result.
In this embodiment, summarizing the scanning results of two or more databases in one target subsystem to obtain a horizontal set means: and summarizing the scanning results of two or more databases in the same target subsystem into a transverse set, wherein the scanning results in the transverse set are formed by scanning data based on the same scanning task in the same test batch.
The data rule has at least one rule entry, the base scan entry being a constituent unit of a lateral base result, one base scan entry representing whether system data in the database conforms to one rule entry, and the reference scan entry being a constituent unit of a lateral reference result, one reference scan entry representing whether system data in the database conforms to one rule entry.
Enabling the basic scanning items in the transverse basic result to correspond to the reference scanning items in the transverse reference result one by one so as to ensure that the rule items corresponding to the basic scanning items and the reference scanning items are consistent;
obtaining a development trend capable of reflecting a transverse reference result relative to a transverse reference result by calculating a difference value between the reference scanning item and the reference scanning item to obtain a reference difference value, and summarizing the reference difference value to obtain an analysis result;
and acquiring the development trend of the result corresponding to the rule entry by summarizing the transverse reference result, the transverse reference result and the transverse analysis result to facilitate a tester to find the direction of optimizing the database according to the trend.
In the technical scheme of the application, the collection, storage, use, processing, transmission, provision, publication and other processing of the related information such as financial data or user data and the like all accord with the regulations of related laws and regulations, and do not violate the customs of public order.
Example 5:
referring to fig. 6, the present application provides a database scanning apparatus 1, operating in a front-end server 2, including:
the system project selection module 12 is configured to receive commissioning version information sent by a client, set a physical subsystem in a system cluster corresponding to the commissioning version information as a target subsystem, send a test page with attribute information of the target subsystem to the client, and receive a scan project sent by the client according to the test page, where the system cluster is a service cluster that is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
and the database scanning module 13 is configured to construct a scanning task according to the scanning project, execute the scanning task on the target subsystem, perform database scanning on the database of the target subsystem to obtain a scanning result, and send the scanning result to the client.
Optionally, the database scanning apparatus 1 further includes:
and the system new-establishing module 11 is configured to receive new-establishing information sent by the client, connect the new-establishing information with a physical subsystem in the back-end service cluster corresponding to the new-establishing information, and aggregate the physical subsystems corresponding to the new-establishing information to form a system cluster.
Optionally, the database scanning apparatus 1 further includes:
and the longitudinal comparison module 14 is configured to compare and analyze two or more scanning results of a database of one target subsystem to obtain a longitudinal comparison result, and send the longitudinal comparison result to the client.
Optionally, the database scanning apparatus 1 further includes:
and the transverse comparison module 15 is configured to compare and analyze the scanning results of two or more databases in one target subsystem to obtain a transverse comparison result, and send the transverse comparison result to the client.
Example 6:
to achieve the above object, the present application also provides a computer device 6, comprising: a processor and a memory communicatively coupled to the processor; the memory stores computer-executable instructions; the processor executes the computer execution instruction stored in the memory to implement the database scanning method, wherein the components of the database scanning device may be distributed in different computer devices, and the computer device 6 may be a smart phone, a tablet computer, a notebook computer, a desktop computer, a rack server, a blade server, a tower server, or a rack server (including an independent server or a server cluster formed by multiple application servers) that executes programs, or the like. The computer device of the embodiment at least includes but is not limited to: a memory 61, a processor 62, which may be communicatively coupled to each other via a system bus, as shown in fig. 7. It should be noted that fig. 7 only shows a computer device with components, but it should be understood that not all of the shown components are required to be implemented, and more or fewer components may be implemented instead. In the present embodiment, the memory 61 (i.e., a readable storage medium) includes a flash memory, a hard disk, a multimedia card, a card-type memory (e.g., SD or DX memory, etc.), a Random Access Memory (RAM), a Static Random Access Memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, and the like. In some embodiments, the memory 61 may be an internal storage unit of the computer device, such as a hard disk or a memory of the computer device. In other embodiments, the memory 61 may also be an external storage device of the computer device, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), or the like, provided on the computer device. Of course, the memory 61 may also include both internal and external storage units of the computer device. In this embodiment, the memory 61 is generally used for storing an operating system and various application software installed in the computer device, such as program codes of the database scanning apparatus in the third embodiment. Further, the memory 61 may also be used to temporarily store various types of data that have been output or are to be output. Processor 62 may be a Central Processing Unit (CPU), controller, microcontroller, microprocessor, or other data Processing chip in some embodiments. The processor 62 is typically used to control the overall operation of the computer device. In this embodiment, the processor 62 is configured to run the program codes stored in the memory 61 or process data, for example, run a database scanning device, so as to implement the database scanning methods of the first embodiment and the second embodiment.
The integrated module implemented in the form of a software functional module may be stored in a computer-readable storage medium. The software functional module is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device) or a processor to execute some steps of the methods described in the embodiments of the present application. It should be understood that the Processor may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of a method disclosed in the incorporated application may be directly implemented by a hardware processor, or may be implemented by a combination of hardware and software modules in the processor. The memory may comprise a high-speed RAM memory, and may further comprise a non-volatile storage NVM, such as at least one disk memory, and may also be a usb disk, a removable hard disk, a read-only memory, a magnetic or optical disk, etc.
To achieve the above objects, the present application also provides a computer-readable storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory (e.g., SD or DX memory, etc.), a Random Access Memory (RAM), a Static Random Access Memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, a server, an App, etc., having stored thereon computer-executable instructions, which when executed by a processor 62 implement corresponding functions. The computer-readable storage medium of the present embodiment is used for storing computer-executable instructions for implementing the database scanning method, and when executed by the processor 62, implements the database scanning method of the first and second embodiments.
The storage medium may be implemented by any type or combination of volatile or non-volatile memory devices, such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disks. A storage media may be any available media that can be accessed by a general purpose or special purpose computer.
An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. Of course, the storage medium may also be integral to the processor. The processor and the storage medium may reside in an Application Specific Integrated Circuits (ASIC). Of course, the processor and the storage medium may reside as discrete components in an electronic device or host device.
The present embodiment also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the computer program implements the database scanning method described above.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising a … …" does not exclude the presence of another identical element in a process, method, article, or apparatus that comprises the element.
Other embodiments of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It will be understood that the present application is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the application is limited only by the appended claims.

Claims (17)

1. A database scanning method, operating in a front-end server, comprising:
receiving production version information sent by a client, setting a physical subsystem corresponding to the production version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning item sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
and constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on a database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
2. The method for scanning database according to claim 1, wherein before receiving the commissioning version information sent by the client, the method further comprises:
receiving new information sent by a client, connecting the new information with a physical subsystem corresponding to the new information in a back-end service cluster, and summarizing the physical subsystem corresponding to the new information to form a system cluster.
3. The database scanning method according to claim 1, wherein after sending the scanning result to the client, the method further comprises:
and comparing and analyzing two or more than two scanning results of a database of one target subsystem to obtain a longitudinal comparison result, and sending the longitudinal comparison result to the client.
4. The database scanning method according to claim 1, wherein after sending the scanning result to the client, the method further comprises:
and comparing and analyzing the scanning results of two or more databases in one target subsystem to obtain a transverse comparison result, and sending the transverse comparison result to the client.
5. The database scanning method according to claim 1, wherein the sending a test page having attribute information of a target subsystem to the client by setting a physical subsystem in a system cluster corresponding to the commissioning version information as the target subsystem comprises:
extracting environment information in the production version information, and setting a physical subsystem corresponding to the environment information as an environment subsystem;
extracting a version number in the production version information, setting an environment subsystem corresponding to the version number as a target subsystem, and copying a database in the target subsystem into the front-end server;
extracting attribute information of the target subsystem, and inputting the attribute information into a preset test template to convert the test template into a test page, wherein the test template comprises a scan name for describing a scan item and a selection frame corresponding to the scan name.
6. The database scanning method according to claim 1, wherein the constructing a scanning task according to the scanning item comprises:
judging the item type of the scanning item;
if the project type is a construction type, acquiring the executable script corresponding to the scanning project, extracting an object code in the scanning project, and inputting the attribute information of the target subsystem and the object code into the executable script to obtain a scanning task, wherein the object code is a unique identifier of a database in a physical subsystem;
if the item type is a calling type, identifying a tool interface corresponding to the scanning item in the target subsystem, extracting an object code in the scanning item, and recording an address of the tool interface and the object code into a preset scanning thread to obtain a scanning task.
7. The database scanning method according to claim 1, wherein the performing the scanning task on the target subsystem to perform a database scan on the database of the target subsystem and obtain a scanning result includes:
setting a database of a target subsystem corresponding to the scanning task as a to-be-scanned database, and arranging the scanning task according to the generation time of the scanning task to obtain a task queue;
and executing the scanning tasks to the scanning library in sequence according to the sequence of the scanning tasks in the task queue and obtaining a task result corresponding to the scanning task.
8. The database scanning method according to claim 2, wherein said connecting with the physical subsystem corresponding to the new information in the backend service cluster comprises:
extracting data property information in the new information, wherein the data property information describes the attribute and/or content of system data stored in a database;
accessing a management server in the back-end service cluster, and acquiring system address information corresponding to the data property information from the management server, wherein the system address information refers to a storage position of system data corresponding to the data property information in the back-end service cluster;
and accessing the physical subsystem corresponding to the system address information, and establishing communication connection with the accessed physical subsystem.
9. The method of claim 3, wherein the performing a comparison analysis on two or more scan results of the database of one target subsystem to obtain a longitudinal comparison result comprises:
summarizing two or more scanning results of a database of a target subsystem to obtain a longitudinal set, setting the scanning result with the latest generation time in the longitudinal set as a longitudinal reference result, and setting other scanning results except the longitudinal reference result in the longitudinal set as longitudinal reference results;
corresponding the basic scanning items in the longitudinal basic result to the reference scanning items in the longitudinal reference result one by one, calculating the difference between the basic scanning items and the reference scanning items to obtain a basic reference difference, and summarizing the basic reference difference to obtain a longitudinal analysis result;
and summarizing the longitudinal reference result, the longitudinal reference result and the longitudinal analysis result to obtain the longitudinal comparison result.
10. The method of claim 4, wherein the comparing and analyzing the scanning results of two or more databases in a target subsystem to obtain a lateral comparison result comprises:
summarizing scanning results of two or more databases in one target subsystem to obtain a transverse set, setting the scanning result with the latest generation time in the transverse set as a transverse reference result, and setting other scanning results except the transverse reference result in the transverse set as transverse reference results;
enabling the basic scanning items in the transverse basic result to correspond to the reference scanning items in the transverse reference result one by one, calculating the basic scanning items and the reference scanning items, and summarizing to obtain a transverse analysis result;
and summarizing the transverse reference result, the transverse reference result and the transverse analysis result to obtain the transverse comparison result.
11. A database scanning apparatus operating in a front-end server, comprising:
the system project selection module is used for receiving the commissioning version information sent by the client, setting a physical subsystem corresponding to the commissioning version information in a system cluster as a target subsystem, sending a test page with attribute information of the target subsystem to the client, and receiving a scanning project sent by the client according to the test page, wherein the system cluster is a service cluster which is arranged in a back-end service cluster and is constructed by at least one physical subsystem;
and the database scanning module is used for constructing a scanning task according to the scanning project, executing the scanning task on the target subsystem, performing database scanning on the database of the target subsystem to obtain a scanning result, and sending the scanning result to the client.
12. The database scanning device of claim 11, further comprising:
and the system new building module is used for receiving new building information sent by the client, connecting the new building information with a physical subsystem corresponding to the new building information in the back-end service cluster, and summarizing the physical subsystem corresponding to the new building information to form a system cluster.
13. The database scanning device of claim 11, further comprising:
and the longitudinal comparison module is used for comparing and analyzing two or more than two scanning results of a database of one target subsystem to obtain a longitudinal comparison result and sending the longitudinal comparison result to the client.
14. The database scanning device of claim 11, further comprising:
and the transverse comparison module is used for comparing and analyzing the scanning results of two or more databases in one target subsystem to obtain a transverse comparison result and sending the transverse comparison result to the client.
15. A computer device, comprising: a processor and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
the processor executes computer-executable instructions stored by the memory to implement the database scanning method of any of claims 1 to 10.
16. A computer-readable storage medium having computer-executable instructions stored therein, which when executed by a processor, are configured to implement the database scanning method of any one of claims 1 to 10.
17. A computer program product, characterized in that it comprises a computer program which, when being executed by a processor, carries out the database scanning method according to any one of claims 1-10.
CN202211129495.9A 2022-09-15 2022-09-15 Database scanning method, device, equipment, storage medium and product Pending CN115438026A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211129495.9A CN115438026A (en) 2022-09-15 2022-09-15 Database scanning method, device, equipment, storage medium and product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211129495.9A CN115438026A (en) 2022-09-15 2022-09-15 Database scanning method, device, equipment, storage medium and product

Publications (1)

Publication Number Publication Date
CN115438026A true CN115438026A (en) 2022-12-06

Family

ID=84248581

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211129495.9A Pending CN115438026A (en) 2022-09-15 2022-09-15 Database scanning method, device, equipment, storage medium and product

Country Status (1)

Country Link
CN (1) CN115438026A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117234466A (en) * 2023-08-07 2023-12-15 北京冠群信息技术股份有限公司 Enterprise management software development method, system, equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117234466A (en) * 2023-08-07 2023-12-15 北京冠群信息技术股份有限公司 Enterprise management software development method, system, equipment and storage medium
CN117234466B (en) * 2023-08-07 2024-02-23 北京冠群信息技术股份有限公司 Enterprise management software development method, system, equipment and storage medium

Similar Documents

Publication Publication Date Title
US20230065572A1 (en) System and method for performing automated api tests
CN111832236B (en) Chip regression testing method and system, electronic equipment and storage medium
CN110825619A (en) Automatic generation method and device of interface test case and storage medium
CN108628748B (en) Automatic test management method and automatic test management system
CN113127347B (en) Interface testing method, device, equipment and readable storage medium
CN111240955A (en) Automatic testing method and device for Http interface, storage medium and electronic device
CN113326247A (en) Cloud data migration method and device and electronic equipment
CN112540924A (en) Interface automation test method, device, equipment and storage medium
CN115438026A (en) Database scanning method, device, equipment, storage medium and product
CN111241111A (en) Data query method and device, data comparison method and device, medium and equipment
US10678864B2 (en) Analysis model preparing system, programming apparatus, and analysis model preparing method
CN110928796A (en) Automatic change test platform
CN114661423A (en) Cluster configuration detection method and device, computer equipment and storage medium
CN110716804A (en) Method and device for automatically deleting useless resources, storage medium and electronic equipment
CN110941625B (en) Payment consistency checking method, system, equipment and storage medium
CN112699027A (en) Interface testing method, device, equipment and readable storage medium
CN111444099A (en) Data inconsistency analysis method, system, electronic device and storage medium
CN113672512A (en) Code inspection rule generating method, code inspection method, device and medium
CN111767222A (en) Data model verification method and device, electronic equipment and storage medium
CN113238940A (en) Interface test result comparison method, device, equipment and storage medium
CN112540747A (en) Platform development method, device and computer readable storage medium
KR101737575B1 (en) Method and device for verifying data based on sql sentences generated automatically
CN115129355B (en) Page repair method, system and computer equipment thereof
CN112347095B (en) Data table processing method, device and server
CN115756575A (en) Submission record acquisition method, device, equipment and storage medium

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