CN107273293B - Big data system performance test method and device and electronic equipment - Google Patents

Big data system performance test method and device and electronic equipment Download PDF

Info

Publication number
CN107273293B
CN107273293B CN201710456130.XA CN201710456130A CN107273293B CN 107273293 B CN107273293 B CN 107273293B CN 201710456130 A CN201710456130 A CN 201710456130A CN 107273293 B CN107273293 B CN 107273293B
Authority
CN
China
Prior art keywords
test
parameters
big data
data system
test instruction
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.)
Active
Application number
CN201710456130.XA
Other languages
Chinese (zh)
Other versions
CN107273293A (en
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.)
Beijing Xingxuan Technology Co Ltd
Original Assignee
Beijing Xingxuan Technology 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 Beijing Xingxuan Technology Co Ltd filed Critical Beijing Xingxuan Technology Co Ltd
Priority to CN201710456130.XA priority Critical patent/CN107273293B/en
Publication of CN107273293A publication Critical patent/CN107273293A/en
Application granted granted Critical
Publication of CN107273293B publication Critical patent/CN107273293B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The embodiment of the invention provides a performance test method and device for a big data system and electronic equipment, and relates to the technical field of databases. The big data system performance test method comprises the following steps: obtaining test parameters which are specified by a user and used for carrying out system performance test on the big data system based on a test benchmark; generating a test instruction sequence according to the test parameters of the test c and a test instruction generation rule corresponding to the test reference; executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and determining the system performance data of the big data system according to the test result. By adopting the method provided by the embodiment of the invention, the performance of the big data system can be automatically tested, thereby effectively reducing the testing time and improving the testing efficiency.

Description

Big data system performance test method and device and electronic equipment
Technical Field
The embodiment of the invention relates to the technical field of databases, in particular to a method and a device for testing the performance of a big data system, electronic equipment and a computer storage medium.
Background
With the advent of the cloud era, Big data (Big data) has attracted more and more attention. The performance of large data systems is an important indicator to monitor.
One commonly used method for testing the performance of a big data system is a manual test method based on transaction performance committee TPC test standards (e.g., TPC-H, TPC-C, benchmark sql, TPC-DS, etc.). Taking TPC-DS-based test benchmarks as an example, a process of manually testing the performance of a big data system generally includes the following steps: 1) generating data with corresponding size by using a command dsgen carried by the TPC-DS; generating a structured Query statement SQL (structured Query language) statement using the command dsqgen; 2) newly building a database and a table in a cluster database; 3) importing the generated data into a cluster database; 4) and performing stress test, such as performing a large amount of complex operations of querying, updating, inserting, deleting and the like on the data imported into the database by using the generated SQL statements.
However, the above manual testing method obviously has a problem of low testing efficiency. Therefore, a solution replacing manual testing is needed to implement automatic testing of the performance of the big data system based on the test standard, so as to improve the testing speed and the working efficiency.
Disclosure of Invention
The embodiment of the invention provides a method and a device for testing the performance of a big data system and electronic equipment, which are used for solving the problem of low testing efficiency in the prior art that the performance of the big data system is tested manually.
In a first aspect, an embodiment of the present invention provides a method for testing performance of a big data system, including: obtaining test parameters which are specified by a user and used for carrying out system performance test on the big data system based on a test benchmark; generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference; executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and determining the system performance data of the big data system according to the test result.
Wherein the test benchmarks include, but are not limited to: TPC-H, TPC-C, BenchmarkSql or TPC-DS. The big data system may be a distributed big data query engine cluster, for example, a big data query engine cluster such as greenplus, implella, Trafodion, Hawq, etc. The test parameters include at least one of: the system comprises a Structured Query Language (SQL) dialect, data source parameters, a database name, a user name, a password and data scale, wherein the test parameters can also comprise a test task identifier and the like. The test instructions include, but are not limited to: the system comprises a data preparation instruction, a database creation instruction, a data table creation instruction, a data import instruction and a performance test instruction. .
With reference to the first aspect, in a first implementation manner of the first aspect, the test parameters include a Structured Query Language (SQL) dialect; generating a test instruction sequence according to the test parameter and the test instruction generation rule corresponding to the test reference, including: acquiring the test instruction generation rule corresponding to the SQL dialect; and generating the test instruction sequence according to the test parameters and the test instruction generation rule corresponding to the SQL dialect.
With reference to the first aspect or the first implementation manner of the first aspect, in a second implementation manner of the first aspect, before generating a rule according to the test instruction corresponding to the test parameter and the specific test reference and generating a test instruction sequence, the method further includes: and acquiring a test instruction generation rule corresponding to the test benchmark according to a corresponding relation set between the preset test benchmark and the test instruction generation rule.
With reference to the first aspect, the first implementation manner of the first aspect, or the second implementation manner of the first aspect, in a third implementation manner of the first aspect, the obtaining of the test parameter, which is specified by the user and used for performing the system performance test on the big data system based on the test benchmark, uses one of the following manners: acquiring the test parameters through a graphical user interface; or reading the test parameters from a configuration file.
With reference to the first aspect, the first implementation manner of the first aspect, the second implementation manner of the first aspect, or the third implementation manner of the first aspect, in a fourth implementation manner of the first aspect, the test parameters include data source parameters, and the data source parameters include database connection strings; the method further comprises the following steps: detecting whether the database connection string is valid; and if the detection result is negative, providing information indicating that the database connection string is invalid for the user.
With reference to the first aspect, the first implementation manner of the first aspect, the second implementation manner of the first aspect, the third implementation manner of the first aspect, or the fourth implementation manner of the first aspect, in a fifth implementation manner of the first aspect, the method further includes: and if errors occur in the test process, acquiring and providing error information for the user.
With reference to the first aspect, the first implementation manner of the first aspect, the second implementation manner of the first aspect, the third implementation manner of the first aspect, the fourth implementation manner of the first aspect, or the fifth implementation manner of the first aspect, in a sixth implementation manner of the first aspect, the method further includes: and storing the test result.
With reference to the first aspect, the first implementation manner of the first aspect, the second implementation manner of the first aspect, the third implementation manner of the first aspect, the fourth implementation manner of the first aspect, the fifth implementation manner of the first aspect, or the sixth implementation manner of the first aspect, in a seventh implementation manner of the first aspect, the method further includes: and cleaning the test result.
In a second aspect, an embodiment of the present invention provides a device for testing performance of a big data system, including: the system comprises a test parameter acquisition unit, a test parameter analysis unit and a test parameter analysis unit, wherein the test parameter acquisition unit is used for acquiring test parameters which are specified by a user and used for carrying out system performance test on a big data system based on a test reference; the test instruction generating unit is used for generating a test instruction sequence according to the test parameters and the test instruction generating rule corresponding to the test reference; the test unit is used for executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and the performance data determining unit is used for determining the system performance data of the big data system according to the test result.
With reference to the second aspect, in a first implementation manner of the second aspect, the test parameters include a Structured Query Language (SQL) dialect; the test instruction generating unit includes: the rule obtaining subunit is used for obtaining the test instruction generation rule corresponding to the SQL dialect; and the instruction generating subunit is used for generating the test instruction sequence according to the test parameters and the test instruction generating rule corresponding to the SQL dialect.
With reference to the second aspect or the first implementation manner of the second aspect, in a second implementation manner of the second aspect, the apparatus further includes: and the rule obtaining unit is used for obtaining the test instruction generating rule corresponding to the test benchmark according to a corresponding relation set between the preset test benchmark and the test instruction generating rule.
With reference to the second aspect, the first implementation manner of the second aspect, or the second implementation manner of the second aspect, in a third implementation manner of the second aspect, the test parameter obtaining unit is specifically configured to obtain the test parameter through a graphical user interface.
With reference to the second aspect, the first implementation manner of the second aspect, or the second implementation manner of the second aspect, in a fourth implementation manner of the second aspect, the test parameter obtaining unit is specifically configured to read the test parameters from a configuration file.
The functions can be realized by hardware, and the functions can also be realized by executing corresponding software by hardware. The hardware or software includes one or more modules corresponding to the above-described functions.
In one possible design, the structure of the big data system performance testing apparatus includes a processor and a memory, the memory is used for storing a program for supporting the big data system performance testing apparatus to execute the big data system performance testing method in the first aspect, and the processor is configured to execute the program stored in the memory. The big data system performance testing device can further comprise a communication interface, and the communication interface is used for communicating with other equipment or a communication network.
In a third aspect, an embodiment of the present invention provides a computer storage medium, configured to store computer software instructions for the big data system performance testing apparatus, where the computer software instructions include a program for executing the big data system performance testing method in the first aspect to the big data system performance testing apparatus.
According to the method and the device for testing the performance of the big data system, the test parameters which are specified by a user and used for carrying out the system performance test on the big data system based on the test benchmark are obtained; generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference; executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and determining the system performance data of the big data system according to the test result. By adopting the technical scheme provided by the embodiment of the invention, the performance of the big data system can be automatically tested, so that the test time is effectively reduced and the test efficiency is improved.
These and other aspects of the invention are apparent from and will be elucidated with reference to the embodiments described hereinafter.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and those skilled in the art can also obtain other drawings according to the drawings without creative efforts.
FIG. 1 is a flow diagram illustrating a big data system performance testing method according to an embodiment of the invention;
FIG. 2 shows a block diagram of a big data system performance testing apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the technical solutions of the present invention better understood, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention.
In some of the flows described in the present specification and claims and in the above figures, a number of operations are included that occur in a particular order, but it should be clearly understood that these operations may be performed out of order or in parallel as they occur herein, with the order of the operations being indicated as 101, 102, etc. merely to distinguish between the various operations, and the order of the operations by themselves does not represent any order of performance. Additionally, the flows may include more or fewer operations, and the operations may be performed sequentially or in parallel. It should be noted that, the descriptions of "first", "second", etc. in this document are used for distinguishing different messages, devices, modules, etc., and do not represent a sequential order, nor limit the types of "first" and "second" to be different.
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In order to facilitate understanding of the technical solutions of the present invention, the following first briefly describes related concepts and technologies related to the present invention.
The test Benchmark (Benchmark) is an evaluation mode and has long-term application in the whole computer field. The most successful application of the test benchmark in the field of big data is performance test, and based on big data issued by TPC and virtual test benchmarks (TPC-H, TPC-C, TPC-DS and the like), performance indexes such as execution time, transmission speed, throughput, resource occupancy rate and the like of a big data system can be tested.
Taking TPC-H as an example, it is a benchmark for decision support, and consists of a series of queries and parallel data modifications for business-oriented applications. The queries selected in the benchmark and the data that make up the database are widely commercially representative and easily implemented.
Different test benchmarks relate to different operational applications to the database. For example, the TPC-H benchmark is mainly related to the application of On-Line Analytical Processing (OLTP), and OLAP is the main application of a data warehouse system, supports complex analysis operations, emphasizes decision support, and provides intuitive and understandable query results. As another example, TPC-C is primarily concerned with online transaction processing (OLTP), which is the primary application of traditional relational databases and is primarily the basic, everyday transaction, such as a banking transaction. As another example, TPC-DS relates to both OLTP and OLAP.
The big data system comprises a distributed big data query engine cluster, such as GreenPlum, Implala, Trafodion, Hawq and the like.
Please refer to fig. 1, which is a flowchart illustrating a method for testing performance of a big data system according to a first embodiment of the present invention. The performance test method of the big data system comprises the following steps:
step 101, obtaining a test parameter which is specified by a user and used for performing a system performance test on a big data system based on a test benchmark.
The test parameter may be a command parameter of a test command included in the test benchmark, such as a command parameter dataSize (data size) related to a dsgen command in the TPC-DS benchmark, which is used to instruct generation of data of a corresponding size for use as a pressure query.
The test parameters may further include: data source parameters, database names, user names, passwords, and the like. The data source parameters may include a data source name, a database connection string (e.g., jdbc: postgresql:// ip: port/postgres), a database driver (e.g., org. When the test parameter includes a database connection string, the method provided in the embodiment of the present invention may further include, after step 101, the following steps: detecting whether the database connection string is valid; and if the detection result is negative, providing information indicating that the database connection string is invalid for the user.
The test parameters may also include the type of test reference, e.g., TPC-H, TPC-C and TPC-DS, etc. According to the method provided by the embodiment of the invention, the test instruction related to the benchmark can be automatically generated according to the test parameter of the type of the test benchmark.
The test parameters may also include a structured query language SQL dialect (also known as SQL syntax standard), such as netezza, oracle, ansi, or db2, etc. According to the method provided by the embodiment of the invention, the SQL statement of the dialect can be automatically generated according to the test parameter of the SQL dialect.
It should be noted that different test benchmarks correspond to different test parameters, for example, the TPC-C benchmarks include parameters such as the number of data warehouse, the number of terminals, and the like, and the TPC-DS does not include these parameters.
This step 101 can be implemented as follows: the test parameters are obtained through the graphical user interface, that is, the user can perform input setting on the graphical interface, and the method provided by the embodiment of the invention can enter the next step 102 to generate the test instruction according to the obtained parameters after obtaining the test parameters through the graphical user interface. In specific implementation, the method provided by the embodiment of the invention can store the test parameters in the configuration file after the test parameters are acquired through the graphical user interface.
This step 101 can also be implemented as follows: reading the test parameters from a configuration file, namely: the user can directly use the text editor to edit the configuration file and set the related test parameters.
The file format of the configuration file may be an XML (Extensible Markup Language) file format, a JSON (JavaScript Object Notation) lightweight data exchange format, or a text format.
After the test parameters are obtained, the next step 102 may be executed to generate a test instruction according to the obtained test parameters.
And 102, generating a test instruction sequence according to the test parameters and the test instruction generation rule corresponding to the test reference.
The test instructions are associated with the test benchmarks, and different test benchmarks relate to different test instructions. Therefore, to generate a test command sequence corresponding to a test benchmark specified by a user, a test command generation rule corresponding to the test benchmark needs to be obtained first, for example, a generation rule of a dsgen command in a TPC-DS benchmark may be: "dsgen" + dataSize, in this rule the string "dsgen" is the instruction name of the dsgen instruction, dataSize is the parameter name indicating the data size, and the parameter value of the dataSize parameter is determined by step 101.
The test instructions can comprise data preparation instructions, database creation instructions, data table creation instructions, data import instructions and big data system performance test instructions, and complex query, data update and other test contents can be completed through the performance test instructions.
In specific implementation, the test instruction generation rule corresponding to the test benchmark can be obtained according to a corresponding relation set between the preset test benchmark and the test instruction generation rule.
Different SQL dialects correspond to different forms of SQL statements, and when the test parameters comprise the SQL dialects, the SQL statements corresponding to the SQL dialects specified by the user need to be generated; in this case, the step 102 may include the following specific steps: acquiring the test instruction generation rule corresponding to the SQL dialect; and generating the test instruction sequence according to the test parameters and the test instruction generation rule corresponding to the SQL dialect.
In this embodiment, the generated test instruction sequence includes the following test instructions:
sh data _ gen.sh// generated data
sh SQL _ gen sh// generate SQL statement
sh load, sh// build base, build table (including external table), load data
sh tpc
After the test instruction sequence is generated, the next step 103 may be entered to perform a performance test on the big data system.
And 103, executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence.
The test instruction sequence indicates the execution sequence of each test instruction when the performance of the big data system is tested. When a performance test is performed on a big data system, each test instruction needs to be executed in sequence according to the execution sequence of the test instructions.
If errors occur in the testing process, the method provided by the embodiment of the invention can acquire error information and can provide the error information for the user through the graphical user interface so as to be used for the user to check and analyze.
During the testing process, the testing result can be stored in the file system as log data for the user to check and analyze.
And step 104, determining system performance data of the big data system according to the test result.
After the performance test is carried out on the big data system, a test result can be obtained. Based on these test results, various indexes of the test benchmarks, i.e. system performance data of the big data system, for example, the throughput of business transactions per minute, etc. can be determined.
The test result may include various information of the device performing the method provided by the embodiment of the present invention at different stages of the test, and may further include various information of the big data system under test at different stages of the test. For example, when an error occurs in the data preparation stage, the device may output an error log to the user, and the device may also collect some critical data during the test process, for example, after the data preparation is successful, a success message, such as status:0, may be returned to the user. The key data may also include the test parameters specified by the user, such as data size, SQL dialect, database name, driving information of the database, and the like.
For example, the test results are shown in table 1:
Figure BDA0001323703540000061
Figure BDA0001323703540000071
TABLE 1 test results
After determining system performance data for the big data system, the test results may be cleaned up to save disk space.
It can be seen from the foregoing embodiments that, in the performance testing method for a big data system provided in the embodiments of the present invention, the testing parameters specified by the user for performing the system performance test on the big data system based on the testing standard are obtained; generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference; executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and determining the system performance data of the big data system according to the test result. By adopting the method provided by the embodiment of the invention, the performance of the big data system can be automatically tested, thereby effectively reducing the testing time and improving the testing efficiency.
Corresponding to the big data system performance testing method, the invention also provides a big data system performance testing device.
As shown in fig. 2, the big data system performance testing apparatus includes: a test parameter obtaining unit 201, configured to obtain a test parameter specified by a user and used for performing a system performance test on a big data system based on a test standard; a test instruction generating unit 202, configured to generate a test instruction sequence according to the test parameter and a test instruction generating rule corresponding to the test reference; the test unit 203 is used for executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and the performance data determining unit 204 is configured to determine system performance data of the big data system according to the test result.
Optionally, the test parameters include a structured query language SQL dialect;
the test instruction generating unit 202 includes:
the rule obtaining subunit is used for obtaining the test instruction generation rule corresponding to the SQL dialect;
and the instruction generating subunit is used for generating the test instruction sequence according to the test parameters and the test instruction generating rule corresponding to the SQL dialect.
Optionally, the apparatus further comprises:
and the rule obtaining unit is used for obtaining the test instruction generating rule corresponding to the test benchmark according to a corresponding relation set between the preset test benchmark and the test instruction generating rule.
Optionally, the test parameter obtaining unit 201 is specifically configured to obtain the test parameters through a graphical user interface.
Optionally, the test parameter obtaining unit 201 is specifically configured to read the test parameters from a configuration file.
It can be seen from the above embodiments that the device provided in the embodiments of the present invention enables a user to perform a test operation directly through a graphical user interface or by inputting test parameters in a configuration file without knowing the internal structure of the device; the processing mode enables the device to have higher portability, and can be applied to different distributed query engines, such as large data query engine clusters of GreenPlum, Implala, Trafodion, Hawq and the like.
In one possible design, the structure of the big data system performance testing apparatus includes a processor and a memory, the memory is used for storing a program for supporting the big data system performance testing apparatus to execute the big data system performance testing method in the first aspect, and the processor is configured to execute the program stored in the memory.
The program includes one or more computer instructions, wherein the one or more computer instructions are for execution invoked by the processor.
The processor is configured to: obtaining test parameters which are specified by a user and used for carrying out system performance test on the big data system based on a test benchmark; generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference; executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and determining the system performance data of the big data system according to the test result.
An embodiment of the present invention provides a computer storage medium, configured to store computer software instructions for the big data system performance testing apparatus, where the computer software instructions include a program for executing the big data system performance testing method in the first aspect.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.
The invention discloses a1, a big data system performance test method, comprising:
obtaining test parameters which are specified by a user and used for carrying out system performance test on the big data system based on a test benchmark;
generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference;
executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence;
and determining the system performance data of the big data system according to the test result.
A2, the method of A1, wherein the test parameters include a Structured Query Language (SQL) dialect;
generating a test instruction sequence according to the test parameter and the test instruction generation rule corresponding to the test reference, including:
acquiring the test instruction generation rule corresponding to the SQL dialect;
and generating the test instruction sequence according to the test parameters and the test instruction generation rule corresponding to the SQL dialect.
A3, the method of A2, before generating the rule according to the test instruction corresponding to the test parameter and the specific test benchmark, and generating the test instruction sequence, the method further comprising:
and acquiring a test instruction generation rule corresponding to the test benchmark according to a corresponding relation set between the preset test benchmark and the test instruction generation rule.
A4, the method of A3, wherein the obtaining of the test parameters specified by the user for the system performance test of the big data system based on the test benchmarks is performed by one of the following methods:
acquiring the test parameters through a graphical user interface; or
And reading the test parameters from the configuration file.
A5, the method of A4, the test parameters including data source parameters including database connection strings;
the method further comprises the following steps:
detecting whether the database connection string is valid;
and if the detection result is negative, providing information indicating that the database connection string is invalid for the user.
A6, the method of a5, the method further comprising:
and if errors occur in the test process, acquiring and providing error information for the user.
A7, the method of a6, the method further comprising:
and storing the test result.
A8, the method of a7, the method further comprising:
and cleaning the test result.
A9, the method of any one of A1-8, the test benchmarks comprising: TPC-H, TPC-C, BenchmarkSql or TPC-DS.
A10, the method of any one of A1-8, the big data system comprising a distributed big data query engine cluster.
A11, the method of any one of A1-8, the test parameters comprising at least one of:
structured Query Language (SQL) dialect, data source parameters, database name, user name and password, and data scale.
A12, the method of any one of A1-8, the test instructions comprising data preparation instructions, database creation instructions, data table creation instructions, data import instructions, and performance test instructions.
The invention also discloses B13, a big data system performance testing device, comprising:
the system comprises a test parameter acquisition unit, a test parameter analysis unit and a test parameter analysis unit, wherein the test parameter acquisition unit is used for acquiring test parameters which are specified by a user and used for carrying out system performance test on a big data system based on a test reference;
the test instruction generating unit is used for generating a test instruction sequence according to the test parameters and the test instruction generating rule corresponding to the test reference;
the test unit is used for executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence;
and the performance data determining unit is used for determining the system performance data of the big data system according to the test result.
B14, the apparatus as described in B13, the test parameters including a Structured Query Language (SQL) dialect;
the test instruction generating unit includes:
the rule obtaining subunit is used for obtaining the test instruction generation rule corresponding to the SQL dialect;
and the instruction generating subunit is used for generating the test instruction sequence according to the test parameters and the test instruction generating rule corresponding to the SQL dialect.
B15, the apparatus of B14, further comprising:
and the rule obtaining unit is used for obtaining the test instruction generating rule corresponding to the test benchmark according to a corresponding relation set between the preset test benchmark and the test instruction generating rule.
B16, the apparatus according to B15, wherein the test parameter obtaining unit is specifically configured to obtain the test parameters through a graphical user interface.
B17, the apparatus according to B16, wherein the test parameter obtaining unit is specifically configured to read the test parameters from a configuration file.
The invention also discloses C18, an electronic device, comprising a memory and a processor; wherein the content of the first and second substances,
the memory is to store one or more computer instructions, wherein the one or more computer instructions are for the processor to invoke for execution;
the processor is configured to: obtaining test parameters which are specified by a user and used for carrying out system performance test on the big data system based on a test benchmark; generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference; executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and determining the system performance data of the big data system according to the test result.
The invention also discloses D19, a computer storage medium storing one or more computer instructions which, when executed, implement the method of any one of a 1-12.

Claims (14)

1. A big data system performance test method is characterized by comprising the following steps:
acquiring test parameters through a graphical user interface; or reading the test parameters from the configuration file; the test parameters comprise types of test benchmarks, wherein different test benchmarks correspond to different test parameters;
the test parameters also comprise data source parameters, and the data source parameters comprise database connection strings;
detecting whether the database connection string is valid;
if the test result is positive, acquiring a test instruction generation rule corresponding to the test standard according to a corresponding relation set between the test standard and the test instruction generation rule;
generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference;
executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence;
and determining the system performance data of the big data system according to the test result.
2. The method of claim 1, wherein the test parameters comprise a Structured Query Language (SQL) dialect;
generating a test instruction sequence according to the test parameter and the test instruction generation rule corresponding to the test reference, including:
acquiring the test instruction generation rule corresponding to the SQL dialect;
and generating the test instruction sequence according to the test parameters and the test instruction generation rule corresponding to the SQL dialect.
3. The method of claim 1, further comprising:
and if the detection result is negative, providing information indicating that the database connection string is invalid for the user.
4. The method of claim 3, further comprising:
and if errors occur in the test process, acquiring and providing error information for the user.
5. The method of claim 4, further comprising:
and storing the test result.
6. The method of claim 5, further comprising:
and cleaning the test result.
7. The method of any of claims 1-6, wherein the test benchmarks comprise: TPC-H, TPC-C, BenchmarkSql or TPC-DS.
8. The method of any of claims 1-6, wherein the big data system comprises a distributed big data query engine cluster.
9. The method according to any of claims 1-6, wherein the test parameters comprise at least one of the following parameters:
structured Query Language (SQL) dialect, data source parameters, database name, user name and password, and data scale.
10. The method of any of claims 1-6, wherein the test instructions comprise data preparation instructions, database creation instructions, data table creation instructions, data import instructions, and performance test instructions.
11. A big data system capability test device, characterized by, includes:
the test parameter acquisition unit is used for acquiring test parameters through a graphical user interface; or reading the test parameters from the configuration file; the test parameters comprise types of test benchmarks, wherein different test benchmarks correspond to different test parameters; the test parameters also comprise data source parameters, and the data source parameters comprise database connection strings;
the rule obtaining unit is used for obtaining a test instruction generation rule corresponding to a test benchmark according to a corresponding relation set between the preset test benchmark and the test instruction generation rule when the detection result of the database connection string is valid;
the test instruction generating unit is used for generating a test instruction sequence according to the test parameters and the test instruction generating rule corresponding to the test reference;
the test unit is used for executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence;
and the performance data determining unit is used for determining the system performance data of the big data system according to the test result.
12. The apparatus of claim 11, wherein the test parameters comprise a Structured Query Language (SQL) dialect;
the test instruction generating unit includes:
the rule obtaining subunit is used for obtaining the test instruction generation rule corresponding to the SQL dialect;
and the instruction generating subunit is used for generating the test instruction sequence according to the test parameters and the test instruction generating rule corresponding to the SQL dialect.
13. An electronic device comprising a memory and a processor; wherein the content of the first and second substances,
the memory is to store one or more computer instructions, wherein the one or more computer instructions are for the processor to invoke for execution;
the processor is configured to: acquiring test parameters through a graphical user interface; or reading the test parameters from the configuration file; the test parameters comprise types of test benchmarks, wherein different test benchmarks correspond to different test parameters; the test parameters also comprise data source parameters, and the data source parameters comprise database connection strings; detecting whether the database connection string is valid; if the test result is positive, acquiring a test instruction generation rule corresponding to the test standard according to a corresponding relation set between the test standard and the test instruction generation rule; generating a test instruction sequence according to the test parameter and a test instruction generation rule corresponding to the test reference; executing each test instruction aiming at the big data system according to the instruction sequence in the test instruction sequence; and determining the system performance data of the big data system according to the test result.
14. A computer storage medium having one or more computer instructions stored thereon that, when executed, implement the method of any one of claims 1-10.
CN201710456130.XA 2017-06-16 2017-06-16 Big data system performance test method and device and electronic equipment Active CN107273293B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710456130.XA CN107273293B (en) 2017-06-16 2017-06-16 Big data system performance test method and device and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710456130.XA CN107273293B (en) 2017-06-16 2017-06-16 Big data system performance test method and device and electronic equipment

Publications (2)

Publication Number Publication Date
CN107273293A CN107273293A (en) 2017-10-20
CN107273293B true CN107273293B (en) 2020-09-11

Family

ID=60067257

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710456130.XA Active CN107273293B (en) 2017-06-16 2017-06-16 Big data system performance test method and device and electronic equipment

Country Status (1)

Country Link
CN (1) CN107273293B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109558326B (en) * 2018-12-03 2022-04-26 中国建设银行股份有限公司 Test method and device
CN110704300A (en) * 2019-08-27 2020-01-17 武汉迎风聚智科技有限公司 TPC-DS automatic test method and TPC-DS test system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103793328A (en) * 2014-02-24 2014-05-14 浪潮电子信息产业股份有限公司 Method for completing data base performance test by using automatic procedure
CN105302730A (en) * 2015-12-09 2016-02-03 浪潮集团有限公司 Calculation model detection method, testing server and service platform

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9244820B2 (en) * 2011-01-28 2016-01-26 International Business Machines Corporation Creating benchmark graph data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103793328A (en) * 2014-02-24 2014-05-14 浪潮电子信息产业股份有限公司 Method for completing data base performance test by using automatic procedure
CN105302730A (en) * 2015-12-09 2016-02-03 浪潮集团有限公司 Calculation model detection method, testing server and service platform

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TPC_H自动测试工具TPCHDriver的研究;王良等;《计算机工程》;20090131;第35卷(第2期);第18-20页 *

Also Published As

Publication number Publication date
CN107273293A (en) 2017-10-20

Similar Documents

Publication Publication Date Title
CN110795455B (en) Dependency analysis method, electronic device, computer apparatus, and readable storage medium
CN111722839B (en) Code generation method and device, electronic equipment and storage medium
US8904352B2 (en) Systems and methods for processing source code during debugging operations
CN106293891B (en) Multidimensional investment index monitoring method
CN112445875B (en) Data association and verification method and device, electronic equipment and storage medium
CN110688544A (en) Method, device and storage medium for querying database
US10339035B2 (en) Test DB data generation apparatus
CN105868956A (en) Data processing method and device
US11934361B2 (en) Automatic generation of a data model from a structured query language (SQL) statement
CN114461644A (en) Data acquisition method and device, electronic equipment and storage medium
CN107273293B (en) Big data system performance test method and device and electronic equipment
CN113641567B (en) Database inspection method and device, electronic equipment and storage medium
CN116089258A (en) Data migration test method, device, equipment, storage medium and program product
CN114185791A (en) Method, device and equipment for testing data mapping file and storage medium
CN116502273B (en) Dynamic data desensitization method, device and equipment based on data blood edges
CN113010208A (en) Version information generation method, version information generation device, version information generation equipment and storage medium
CN110543418B (en) Database performance test method, system and storage medium
CN115455091A (en) Data generation method and device, electronic equipment and storage medium
CN108399196B (en) Automatic sql execution method and system of database sql statement automatic generation tool
CN115809228A (en) Data comparison method and device, storage medium and electronic equipment
CN113377801A (en) Data inspection method, data inspection device, electronic equipment and computer storage medium
CN109697141B (en) Method and device for visual testing
CN116955504B (en) Data processing method and device, electronic equipment and storage medium
CN113901094B (en) Data processing method, device, equipment and storage medium
CN116226168A (en) Method and system for verifying wide-table data

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
CB02 Change of applicant information

Address after: 100085 Beijing, Haidian District on the road to the information on the ground floor of the 1 to the 3 floor of the 2 floor, room 11, 202

Applicant after: Beijing Xingxuan Technology Co.,Ltd.

Address before: 100085 Beijing, Haidian District on the road to the information on the ground floor of the 1 to the 3 floor of the 2 floor, room 11, 202

Applicant before: Beijing Xiaodu Information Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant