CN103810196A - Method for testing performance of database on basis of business model - Google Patents

Method for testing performance of database on basis of business model Download PDF

Info

Publication number
CN103810196A
CN103810196A CN201210447972.6A CN201210447972A CN103810196A CN 103810196 A CN103810196 A CN 103810196A CN 201210447972 A CN201210447972 A CN 201210447972A CN 103810196 A CN103810196 A CN 103810196A
Authority
CN
China
Prior art keywords
information
database
field
business
configuration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201210447972.6A
Other languages
Chinese (zh)
Other versions
CN103810196B (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.)
Advanced New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201210447972.6A priority Critical patent/CN103810196B/en
Publication of CN103810196A publication Critical patent/CN103810196A/en
Application granted granted Critical
Publication of CN103810196B publication Critical patent/CN103810196B/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
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention provides a method for testing performance of a database on the basis of a business model. The method comprises the following steps of establishing a business model based on the business; configuring test information corresponding to the business model according to the business model, and storing the well-configured test information into a file to form a test file; testing the performance of a database which is associated with the target business according to the business model and the configuration information acquired by reading the test file; adopting a result of the performance of the database as a test result to be outputted.

Description

Carry out the method for database performance measurement based on business model
Technical field
The application relates to database test, relates in particular to a kind of method of carrying out database performance measurement based on business model.
Background technology
Along with the development of data service, database performance has become the embodiment of an enterprise efficiency to a great extent.And understanding to database performance, we can only complete by some testing softwares.
At present the software of database performance measurement exists the problem of two aspects, the one,, can not be according to the customization of the specific business amount of carrying out body.The 2nd,, the performance of can not be comprehensively complicated test data.A kind of in existing technology is the software that only has fixing transaction model to test, and it can test some specific business functions, and for example order issues, and just can not well test as some more special business.And have in addition an a kind of just simply test such as data base querying, interpolation, the effect that can not reach.
Such as we often use general testing tool as tpcc, sysbench, business model is relatively simple.Tpcc simulation be the bank-user model of transferring accounts, and our application system model differs larger with tpcc user's model of transferring accounts, if adopt tpcc to test our database, because the difference of model of itself is larger, the result degree of accuracy of test is inadequate, and confidence level is not high.And the result of sysbench itself is simpler, can only configure simple sql and test, each table of database and field cannot be simulated according to real business, and the relation between table and table also has no idea to represent, and it is also very large that the result of test differs.
Mode that at present can real simulation business is exactly that on-line operation is applied really, by the pressure of true application testing data, and test from operational angle completely, need to use a large amount of application servers to test, on line, the ratio of database and application server is 1:50 left and right, the bottleneck of thinking operational trials concrete database that is virtually reality like reality need to use a large amount of test resources, and dirigibility is also restricted, and can not test the bottleneck in final data storehouse.
Summary of the invention
For above-mentioned defect, the application provides a kind of method of database performance measurement, solves the problem of optimizing current database performance test in the situation that meeting business need.
The application carries out the method for database performance measurement based on business model, comprising: the business model of setting up described business based on business; According to the described business model configuration detecting information corresponding with described business model, the detecting information configuring is preserved and formed hereof test file; According to described business model and described test file is read to obtained described configuration information, the performance of the database that test is associated with target service; And the result of the performance of described database is exported as test result.
According to the application's embodiment, in the method, the described configuration detecting information corresponding with described business model also comprises: configuration connection data library information, configuration creates table and define field information, and business model information is set up in configuration.
According to the application's embodiment, in the method, described configuration connection data library information also comprises: configuration connects dissimilar database, by changing the type information of database, between dissimilar database, switches.
According to the application's embodiment, in the method, described configuration creates table and define field information, also comprises: create traffic table according to the table in tested database; Table name and the field of the traffic table that configuration creates; Define described field, comprise define field title, field type, field description, and, adopt "; " differentiation field; Described field name is consistent with the field name of showing in database; And field type in the traffic table of each establishment is the random different data type generating, the numerical value of field generates at random according to business rule.
According to the application's embodiment, in the method, described business model is set up and is also comprised: the relation data using in business model is abstracted into a public set, and the data in described traffic table obtain from this public set, guarantees the relation between table and table.
According to the application's embodiment, in the method, described configuration creates table and define field information, also comprise: the traffic table creating and the order of field are customized, information in the traffic table creating is consistent with the Information preservation of target service, and field length, span to each traffic table is configured.
According to the application's embodiment, in the method, business model information is set up in described configuration, also comprises: according to target service complexity and/or target service actuating logic, configure the mode of the execution of set up business model.
According to the application's embodiment, in the method, business model information is set up in described configuration, also comprises: in the test file configuring, add transaction model.
According to the application's embodiment, in the method, described configuration testing file, also comprises: in test file, be set with different labels; And labels different in test file is configured, define the information in each label, thereby can label to different information, so that reading test file when test database performance.
According to the application's embodiment, in the method, described test file reads, and also comprises: according to the mark of label in the test file reading, parse the instruction of the performance for testing the described database being associated with target service, simulate the flow process of described practical business and process to carry out.
According to the application's embodiment, in the method, the flow performing processing of the described practical business of described simulation, also comprises: the information of each affairs in the described business model reading out, and use structure chained list to preserve; And according to the information of each affairs, carry out the instruction parsing.
According to the application's embodiment, in the method, described business model also comprises before setting up: various databases are carried out abstract, field type in database table and field length are unified.
Compared with prior art, according to the application's technical scheme, one of its advantage is to test according to concrete business customizing business model, can be configured program executive mode, has better simulated actual business.Not only can guarantee the correctness of result, can also guarantee the authenticity of test.Its another advantage is that plant factor is high, and application server that can be a large amount of with little equipment simulating, can save a large amount of test resources, and dirigibility is better.
Based on the application's scheme, it has better test to current database volume, thus estimated result optimum, according to actual business scenario, under the help of test result, can select better hardware or carry out better Performance tuning, more reasonably utilize resource.
Accompanying drawing explanation
In order to be illustrated more clearly in the technical scheme of the embodiment of the present application, below the accompanying drawing of required use during embodiment is described is briefly described, apparently, accompanying drawing in the following describes is only some embodiment of the application, for those of ordinary skills, do not paying under the prerequisite of creative work, can also obtain according to these accompanying drawings other accompanying drawing.
Fig. 1 is the functional frame composition of an embodiment of the database performance measurement of the application based on business model;
Fig. 2 is the process flow diagram of an embodiment of the database performance measurement method of the application based on business model;
Fig. 3 is the process flow diagram of configuration testing file in an embodiment of the database performance measurement method of the application based on business model; And
Fig. 4 is the process flow diagram that the read test file of an embodiment of the database performance measurement method of the application based on business model is carried out test.
Embodiment
For making the application's object, technical scheme and advantage clearer, below in conjunction with the application's specific embodiment and corresponding accompanying drawing, present techniques scheme is clearly and completely described, obviously, described embodiment is only the application's part embodiment, rather than whole embodiment.Based on the embodiment in the application, those of ordinary skills are not making the every other embodiment obtaining under creative work prerequisite, all belong to the scope of the application's protection.
The application sets up business model according to actual business, operates and reduce practical business flow process by user that is virtually reality like reality, reaches the object that more fully tests out database performance.Can customize different business models according to different business, save more resource, configuration operation versatility, transplantability are high.
Fig. 1 has described the functional framework of the database performance measurement method based on business model, it schematically shows three main processing ingredients of method described in the application, it comprises configuration testing file module 110, read test file is carried out test module 120, and module 130 outputs test result.
In configuration testing file module 110, complete detecting information is configured, it completes after the configuration of detecting information, and detecting information is kept in test file, and here, test file can choice for use xml file.Read test file is carried out test module 120 and is obtained described xml file and resolve, and carries out the instruction of analog service operating process, carries out test processes.The test result that completes test processes acquisition is sent to the module 130 that outputs test result, so that the test result of described database performance is exported.
The flow process of Fig. 2 more specifically embody the application's one embodiment overall flow and corresponding above-mentioned input configuration, read and carry out and the concrete processing mode of output module.
In configuration testing file module 110, set up business model corresponding to target service 200.Abstract to the relation between each table data in the abstract and relational database of data repository abstraction and affairs.Business model will be determined conventionally before test, after this just can configure by normal business model, and configuration information is according to the main flow custom of business and configuration.
database abstract
Testing tool is supported at present data Oracle and the MySQL (real work needs) of two kinds of main flows, and current many testing tools can only be tested Oracle or can only test MySQL.Utilize the application's method of testing, configuration connection data library information, the two can well support (without considering type of database).
To the place of the difference existing in the literary name segment type of disparate databases, test procedure can carry out compatibility to be processed, varchar2 such as Oracle represents character types, and in MySQL, be varchar, the unified character types String using of test procedure represents, such as date type and default value in Oracle and MySQL are different, use Date unified in program represents date type, user can configure according to type of database the default value at exact date simultaneously, represent it is that field c1 is date type such as c1#Date{systimestamp}, use the default value (in the Oracle default value on date) of systimestamp as it simultaneously, c2#Date{now () } represent that field c2 is date type, its default value is now (default value on MySQL date), like this, abstract as far as possible and unified configuration, simplify the cost of configuration testing file.The field different to length, the processing mode of this method is the average length of getting the each field in practical business table, simplifies the complexity of configuration, has better simulated real scene simultaneously.Thereby, business model is without considering type of database, and field type is also unified as much as possible, is switched to another data from a kind of database, configuration testing file does not need too large change (configuration information is substantially without revising) substantially, as level and smooth switches to MySQL from Oracle.
abstract to affairs
From the relevant business of database, the business of affairs intensity is mainly made up of a series of relevant issues exactly, and between affairs, there is certain logical order, every single stepping all follows previous step transaction operation to be totally connected, also directly have influence on next step operation simultaneously, in the test file obtaining after the application's configuration completes, retain the most important part of traffic aided, it is exactly the correlativity of affairs, each affairs represent with a structure, form a queue by a lot of structures, must guarantee could move these affairs before upper affairs complete, these affairs are operable to merit and call next issued transaction later, like this, service logic is abstracted into orderly several affairs.For example, in transaction, first need to confirm whether in stock commodity, this just relates to a transaction operation, in the situation that confirming to have stock, user just can place an order and create a transaction, creating in the successful situation of a transaction, user just can use bank card to pay, the processing that each process comprises some some affairs.In the time setting up business model, just can carry out flexible affairs configuration according to these processing procedures, guarantee business processing authenticity.
Whether business, by being made up of a lot of association affairs, is that order is carried out between affairs, goes up a transaction execution results simultaneously, directly have influence on rear affairs and carry out.In the scheme of the application's patented claim, in the middle of affairs, detailed statement also can configure.For example: a business packet is containing T1, T2, tri-affairs of T3, flow process is T1->T2->T3 now, if business model can change, such as these affairs of T2 are split into T2-1, T2-2, the flow process of current business becomes T1->T2-1->T2-2-GreatT.GreaT. GTT3, and configuration is also very flexibly, T2 in configuration file is replaced to T2-1 and T2-2 is just passable; If operation flow changes, in order, to adjust to some extent, it is also just passable that configuration file is revised lower affairs order; If concrete sql statement is carried out to some extent and changed in affairs, specifically adjust the sql statement in affairs.
abstract to the relation between each table data in relational database
In relational model of database, most important be exactly each table between incidence relation, in real business scenario, also there is such situation, such as example above-mentioned, you are creating process of exchange, a Transaction Information is inserted in acquiescence transaction record the inside, indicate " who ", " when ", " which type of article are bought ", corresponding this Item Information in stock storehouse (otherwise it is meaningless to create this transaction) certainly, and transaction record and inventory information existence contact, in the time setting up business model, by the data abstraction of these relations being become to a public set, guarantee the contact between each table, show the abstract processing of relation.The data of each table are to extract from public set, guaranteed that some attribute of all tables is consistent, and have retained the relation between most important table and table in relational database.Public be integrated into set up in business model process, obtain, from data set and the business model feature of traffic table, we can obtain this and share set.Extract data as: the data of each table from shared set, namely show and shared set has produced relation, shared being integrated into taken a bridge between each table.Want Table A and table B to associate, most important is exactly to build a bridge in the middle of B at Table A and table, and this shared set is exactly bridge block so.
The attribute that in database, each table is associated is all in a set (model), and the data of each table reference are all got from this set, and this set has associated each table.In program test process at the beginning, each table is separate, cannot associate with other table, cannot find common ground.By common attribute is kept in a shared set, each table is associated, guarantee feature the most basic in relational database.Lift row, generally we go to register a website and need to fill in a lot of information, such as name, and phone number, mailbox, ship-to etc.Suppose that these information are all to leave in different tables.How to know that these information associations are to that people, now can associate by a Customs Assigned Number, such as add the numbering of access customer in name table, cell-phone number code table, mailbox, adds same numbering in ship-to table, by user's numbering, we can know some user-dependent all information, and in this inside, user's numbering is exactly that shared set element.Each table is all followed and is shared the relevant system of set, can think that each table indirectly has this relation.In the middle of each program operation process, shared element starts to need initialization once, when use below, can directly from this set, go to obtain.
By sequential execution affairs, guarantee the order that affairs are carried out, retain the most important characteristic of business; Between showing by handle relation be abstracted into a shared set, guarantee the consistance of data between each table, retained the most important part of relational database, thereby guaranteed that the application's method of testing can simulate practical business really.
In configuration testing file module 110, the configuration step 210 that enforcement is configured test file, completes detecting information is configured.Here, test file can choice for use xml file.The process of configuration testing file as shown in Figure 3.Wherein, detecting information comprises, connection data library information creates table and define field information, sets up business model information.
Wherein, the label at all levels in xml file, is conveniently configured, and adds a label substantially on not impact of configuration before simultaneously, has well met developing adding in Design Mode, to revising the principle of sealing.Read xml file also very convenient, do just passable, suitable convenience and quick by several interfaces of correspondence.
And, the rich label function of xml, testing tool can be configured very flexibly, fixing information configuration, such as username and password, database schema and port etc., can be configured by fixing label, there is variable information for some, such as the number of the table of uncertain field number and variation, also provide configuration feature flexibly.For the field of table, represent by a well-regulated wide character, between each field and field, cut apart with " # ", the length of character string is unrestricted, therefore the field of table is also hard-core in theory, simultaneously in testing tool, with queue represent field, length is also unrestricted in theory, configure for table name, configure by multiple identical table labels, because the tag length of xml own can dynamically be adjusted, table quantity is also can dynamic-configuration, equally in test process, table is with a chained list, length is also unconfined, can dynamic-configuration.
Configuration step 210 is preferably and first configures connection data library information 310, then configuration establishment table and define field information 320, and business model information 330 is set up in finally configuration, completes after configuration testing information, and detecting information is kept in test file.
The process of configuration testing file will specifically be introduced below, as shown in Figure 3.
In the time of configuration connection data library information 310, to type of database, database user name, database password, database collection mark schema, database ip, these parts of database port are configured.
Such as, in the time supporting the MySQL database different with Oracle two classes, type of database can be selected MySQL or Oracle, here, schema is Instance Name SID in Oracle Oracle representative, above-mentioned configuration connection data library information 310 with " db label " as when mark, for for example:
Figure BDA00002382559600081
The configuration information of database is (Oracle or MySQL) other be consistent except type of database is inconsistent.Although in database inside such as Oracle and MySQL are inner different, but both are almost as broad as long from layoutprocedure, by the configuration means of the application's method of testing, abstract well this point, encapsulate complexity, realized method of testing and can in disparate databases, change.
Create table and when define field information 320 in configuration, the field type of the table name to database, the field name of table, table and field description defines and assignment.
In the database of current main flow, main data type comprises: integer, character string, time type, enumeration type (even supporting the Serial No. Sequence automatically increasing according to certain rule that in MySQL, itself does not support), these types of database are all supported, meanwhile, according to the feature of some application, can generate random integer data, random string data, the better more random characteristic of each data distribution in simulation application.The numerical value of field can generate according to these rules, has kept preferably operational feature, has more accurately represented the flow process of business entirety.
Above-mentioned configuration create table and define field information 320 using " tablist label " when identifying, for for example:
Tablist label:
" table name " in tablist label represents table name, the information of each field that medium content thereafter represents.
Field is mainly made up of three parts: title+type+field description, between each field with "; " separate, field name must be the same with the field name of showing in database, comprises capital and small letter part.
Field type mainly comprises StrRand, NumRand, and Date, StrList, Func, as follows:
What StrRand represented that random character string wherein preserves in { } is the length of random string, as C2#StrRand{6}, represents that C2 is a random character string, and its length is 3.
NumRand represents random shaping, and what wherein in { }, preserve is the initial value of random integers, and as C4#NumRand{10,99}, represents that C4 is an integer between 10 and 99.
Date represents date type, as C9#Date{ ' systimestamp ' } represent that C9 is a date, be worth for current system time.
StrList represents enumerated value, and its type can only be some in state set, such as C10#StrList{ ' T ', ' S ' represent that C10 can only be some in T and S state.
Func represents self-defining type, its value is self-defining, concrete create-rule can found according to corresponding title, in relational database, this field can be used for representing that each table is associated, (it is to write extremely in program that script starts most, after keep in mind this has been released from program).As A1#Func{ ' acc1 ' } represent that A1 is a self-defining type, title is acc1, after can go to func list the inside to search corresponding value according to this title of acc1.
According to the configuration means of the application's method of testing, the order of table and field can be carried out very fine-grained customization, for business that is virtually reality like reality, table information keeps highly consistent with real business, the field length of each table, span is to be also configured, and guarantees the real pressure of analog service.The tested word segment length using in the time of concrete test is consistent with the average length of the field in practical business, guarantee that to the full extent the table in practical business is consistent with table and field in concrete test with field, accurate to guarantee the real result of database performance measurement.
In the time that business model information 330 is set up in configuration, set up one or more transaction model according to the concrete business of reality and simulate actual operation flow.Whole operation flow is made up of a series of affairs, and each transaction packet is containing some sql statements, mainly comprises select for update, update, and insert, delete etc., each concrete sql can be consistent with treatment scheme in business.The flow process of business entirety is also to simulate by multiple affairs, guarantees like this authenticity of test.For example, in the time having large-scale activity to reach the standard grade, database has and exceedes usually several times to more than ten times pressure, and the normal service request of analog subscriber is configured to multi-user's while login system in business model, and repeatedly Query Database circulates.
Set up in business model information 330 in configuration, using " test label " as when mark, for for example:
Test label
Press the most important part in measuring program the inside, comprised func, loop and transaction:
func
Func superincumbently mentions this, is mainly that to generate occurrence be self-defining (not possessing versatility).
Be divided into two kinds, db generates and program oneself generates, when type for " program " and time occurrence be test program generation, otherwise represent by inquiring about db generation
Program generates:
<func name=" acc1 " type=" program " > " 2088111 " #Random (1,100000000,9) # " 0156 " </func> represents that name is called a field of acc1, it and test program generation, assembled by three parts:
Random 1 to 100000000 integer generating of 2088111+ (9 of the 3rd Parametric Representation less thaies of Random mend 0 above)+0156
Db generates:
<func?name=”acc1”>select?seq_test.nextval?from?dual</func>
Represent that this acc1 obtains by the sequence of inquiry db,
loop
Represent test loop how many times, larger number of operated by rotary motion.
transaction:
Can there be a lot of select each transaction the inside, update, and insert, delete, all sql statements all need to be write as the form of binding variable, as:
<select?tab=”i_tab”>select*from?I_TAB?where?I1=:ACC1?for?update?wait3</select>
Tab attribute representation table name, the concrete inquiry sql of label the inside content representation, wherein binding variable title must be in correspondence table (program is to go to search in corresponding field name by binding variable name).
Special instruction: in the time being pure insert statement, be field one by one can be write out, directly write as: <insert tab=" m_tab "/> program goes to search all fields according to own table name.
Note in transaction in fact without any implication, be exactly only an annotation, numbering.
Set up business model information 330 based on configuration, the application's method of testing also supports to add affairs, for different business, the number of times of affairs and each affairs particular content are to need customization, in the application's method of testing, with xml carry out the configuration of affairs, between each affairs, cut apart by <transaction> label, because xml supports multistage label, therefore the configuration of affairs can be very flexible, in test process, if need to add affairs, a <transaction> label of corresponding increase in configuration file, xml file attributes disposes very high dirigibility by affairs.In the inside of program, also realize by affairs chained list, preserved the information of affairs by chained list, chained list, with respect to array, has better dirigibility, and array has fixing length comparatively speaking, such as supporting specific number of transactions, and the quantity of chained list affairs is unrestricted.
Here, for more complicated issued transaction, the mode of execution is set up business model information 330 and is also configured according to concrete business in the application's configuration, thereby the mode of carrying out by configuration reaches better processing.
Such as the processing of multiple logic branches, carry out A, the operation of B or A, the operation of C; An affairs inside, statement can be carried out according to certain probability simultaneously, and such as carrying out A operation in 20% situation, 80% situation is carried out B operation, and these operations can normally be carried out well.A, B, C carry out A statement, B statement, the C statement processed, corresponding the corresponding operation of processing.
Carrying out certain logic according to complicated service logic judges and carrys out complete operation.Such as, when A operates successful time, carry out B operation, otherwise carry out C operation, these complicated business processing logic a little a little have more truly reflected operational operation.
After above-mentioned configuration, being all saved in xml file with the configuration information of traffic aided, is an example below:
Figure BDA00002382559600121
Then, carry out in test module 120 at read test file, implementing the test file configuring is reading and the operation of the execution of test process of configuration file, and read test file is carried out testing procedure 220, reads, preserves, carries out processing with what complete configuration file to obtaining.Read test file, such as by completing xml document analysis.Program can, according to the configuration information of table and field in configuration file, read successively, and after having read, program parses the field type of each table.Supporting beyond general data type, also support personalized data type, such as some O/No. information, program can be carried out assembled according to operational characteristic completely, such as, be in order service process in certain class affairs, O/No. is made up of some specific rules: fixing character string+date+sequence number, program can be resolved these rules easily.
After table and each field information pre-service complete, system can read the information of each affairs, in order, is deposited in a structure chained list.In the middle of affairs, comprised several sql statements, simple business is exactly the execution successively of order, and subprogram service logic is a little a little complicated, and program can be carried out certain logic and be judged and carry out complete operation.
Resolve the process of test file to inputting the process (the so far pre-service work of all programs completes) of processing, by resolving configuration file, obtained the link information of database; By reading and the configuration information of resolution table, obtain table that whole business relates to and the information of concrete field, by resolving affairs, obtain the overall process of each issued transaction and carry out the logic of sql.These preparations and pre-service work complete, and program has obtained the instruction of carrying out, and according to the size of user configured Thread Count, program starts to open multiple threads, the instruction of each thread execution business.Simulate this on-the-spot business operation process, rerun to after the number of times of specifying, program has been moved.
As shown in Figure 4, from the test file of xml configuration, obtain detecting information 401, open multithreading test 403, finally output test result 405 to the module 130 that outputs test result.
Output test result in step 230 entering, program obtains the instruction of carrying out, and according to the size of user configured Thread Count, program starts to open multiple threads, the instruction of each thread execution business.Simulate whole business operation process, similar a kind of emulation mode (to the simulation of actual services processing), after running to the number of times of appointment, program has been moved, test result is sent to the module 130 that outputs test result, the output transactions response time, maximum, minimum response time and average response time.
The application can describe in the general context of the computer executable instructions of being carried out by computing machine, for example program module or unit.Usually, program module or unit can comprise and carry out particular task or realize routine, program, object, assembly, data structure of particular abstract data type etc.In general, program module or unit can be realized by software, hardware or both combinations.Also can in distributed computing environment, put into practice the application, in these distributed computing environment, be executed the task by the teleprocessing equipment being connected by communication network.In distributed computing environment, program module or unit can be arranged in the local and remote computer-readable storage medium including memory device.
Finally, also it should be noted that, term " comprises ", " comprising " or its any other variant are intended to contain comprising of nonexcludability, thereby the process, method, commodity or the equipment that make to comprise a series of key elements not only comprise those key elements, but also comprise other key elements of clearly not listing, or be also included as the intrinsic key element of this process, method, commodity or equipment.The in the situation that of more restrictions not, the key element being limited by statement " comprising ... ", and be not precluded within process, method, commodity or the equipment that comprises described key element and also have other identical element.
Applied principle and the embodiment of specific case to the application herein and set forth, the explanation of above embodiment is just for helping to understand the application's method and main thought thereof; Simultaneously, for one of ordinary skill in the art, according to the application's thought, all will change in specific embodiments and applications, all within the application's spirit and principle, any modification of doing, be equal to replacement, improvement etc., within all should being included in the application's claim scope.In sum, this description should not be construed as the restriction to the application.

Claims (12)

1. a method of carrying out database performance measurement based on business, described method comprises:
Set up the business model of described business based on business to simulate the flow process of described business, wherein, described business packet is containing one or more affairs;
According to the described business model configuration detecting information corresponding with described business model, the detecting information configuring is preserved and formed hereof test file;
According to described business model and described test file is read to obtained described configuration information, the performance of the database that test is associated with target service; And
The result of the performance of described database is exported as test result.
2. method according to claim 1, is characterized in that, also comprises according to the described business model configuration detecting information corresponding with described business model:
Configuration connection data library information, configuration creates table and define field information, and business model information is set up in configuration.
3. method according to claim 2, is characterized in that, described configuration connection data library information also comprises:
Configuration connects dissimilar database, by changing the type information of database, between dissimilar database, switches.
4. method according to claim 2, is characterized in that, described configuration creates table and define field information, also comprises:
Create traffic table according to the table in tested database;
Table name and the field of the traffic table that configuration creates;
Define described field, comprise define field title, field type, field description, and, adopt "; " differentiation field;
Described field name is consistent with the field name of showing in database;
Field type in the traffic table of each establishment is the random different data type generating, and the numerical value of field generates at random according to business rule.
5. method according to claim 4, is characterized in that, described business model is set up and also comprised:
The relation data using in business model is abstracted into a public set, and the data in described traffic table obtain from this public set, guarantee the relation between table and table.
6. method according to claim 4, is characterized in that, described configuration creates table and define field information, also comprises:
The traffic table creating and the order of field are customized, and the information in the traffic table of establishment is consistent with the Information preservation of target service, and field length, span to each traffic table is configured.
7. method according to claim 2, is characterized in that, business model information is set up in described configuration, also comprises:
According to target service complexity and/or target service actuating logic, configure the mode of the execution of set up business model.
8. according to the method described in claim 2 or 7, it is characterized in that, business model information is set up in described configuration, also comprises: in the test file configuring, add transaction model.
9. method according to claim 1, is characterized in that, described configuration testing file, also comprises:
In test file, be set with different labels;
Labels different in test file is configured, defines the information in each label, thereby can label to different information, so that reading test file when test database performance.
10. method according to claim 1, is characterized in that, described test file is read, and also comprises:
According to the mark of label in the test file reading, parse the instruction of the performance for testing the described database being associated with target service, simulate the flow process of described practical business and process to carry out.
11. methods according to claim 10, is characterized in that, the flow performing processing of the described practical business of described simulation, also comprises:
The information of each affairs in the described business model reading out, and use structure chained list to preserve;
According to the information of each affairs, carry out the instruction parsing.
12. methods according to claim 1, is characterized in that, described business model also comprises before setting up:
Various databases are carried out abstract, field type in database table and field length are unified.
CN201210447972.6A 2012-11-09 2012-11-09 The method that database performance measurement is carried out based on business model Active CN103810196B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210447972.6A CN103810196B (en) 2012-11-09 2012-11-09 The method that database performance measurement is carried out based on business model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210447972.6A CN103810196B (en) 2012-11-09 2012-11-09 The method that database performance measurement is carried out based on business model

Publications (2)

Publication Number Publication Date
CN103810196A true CN103810196A (en) 2014-05-21
CN103810196B CN103810196B (en) 2017-09-22

Family

ID=50706979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210447972.6A Active CN103810196B (en) 2012-11-09 2012-11-09 The method that database performance measurement is carried out based on business model

Country Status (1)

Country Link
CN (1) CN103810196B (en)

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446825A (en) * 2014-06-12 2016-03-30 阿里巴巴集团控股有限公司 Database test method and device
CN105740722A (en) * 2016-01-25 2016-07-06 上海新炬网络信息技术有限公司 Database sensitive data disguising method
CN105912681A (en) * 2016-04-14 2016-08-31 国家电网公司 Aging testing method and system for electricity marketing database
WO2017016422A1 (en) * 2015-07-29 2017-02-02 阿里巴巴集团控股有限公司 Cloud-based database detection method and device
CN106708818A (en) * 2015-07-17 2017-05-24 阿里巴巴集团控股有限公司 Pressure testing method and system
CN106897205A (en) * 2015-12-18 2017-06-27 阿里巴巴集团控股有限公司 A kind of test data generating method and device
WO2017107810A1 (en) * 2015-12-21 2017-06-29 阿里巴巴集团控股有限公司 Database operating method and device
CN107168864A (en) * 2016-03-08 2017-09-15 上海大唐移动通信设备有限公司 Code stream generation method and device
CN107480053A (en) * 2017-07-21 2017-12-15 杭州销冠网络科技有限公司 A kind of Software Test Data Generation Method and device
CN107885656A (en) * 2017-09-13 2018-04-06 平安科技(深圳)有限公司 Product algorithm automated testing method and application server
CN107885654A (en) * 2017-05-05 2018-04-06 平安科技(深圳)有限公司 Data library test method and system
CN107979876A (en) * 2017-11-16 2018-05-01 广州市百果园网络科技有限公司 Data transmission method and terminal
CN108009087A (en) * 2017-11-29 2018-05-08 广州品唯软件有限公司 Data library test method, device and computer-readable recording medium
CN108984712A (en) * 2018-07-06 2018-12-11 深圳前海微众银行股份有限公司 Counting method, equipment and readable storage medium storing program for executing are made based on business scenario
CN109558326A (en) * 2018-12-03 2019-04-02 中国建设银行股份有限公司 A kind of test method and device
CN109785115A (en) * 2018-12-14 2019-05-21 深圳壹账通智能科技有限公司 Generation method, device and the computer equipment of test data
CN109903109A (en) * 2017-12-08 2019-06-18 北京京东尚科信息技术有限公司 Test method and device
CN109933507A (en) * 2019-03-22 2019-06-25 北京极简智能科技有限公司 A kind of program feature detection method, system, equipment and storage medium
CN109933514A (en) * 2017-12-18 2019-06-25 北京京东尚科信息技术有限公司 A kind of data test method and apparatus
CN109976995A (en) * 2017-12-28 2019-07-05 百度在线网络技术(北京)有限公司 Method and apparatus for test
CN110688295A (en) * 2018-07-06 2020-01-14 北京京东尚科信息技术有限公司 Data testing method and device
CN111444073A (en) * 2020-03-26 2020-07-24 中国信息通信研究院 Method, device and system for testing performance of financial database
CN111767222A (en) * 2020-06-28 2020-10-13 杭州数梦工场科技有限公司 Data model verification method and device, electronic equipment and storage medium
CN112819605A (en) * 2021-01-29 2021-05-18 山东浪潮通软信息科技有限公司 Method and device for testing fund settlement service and computer readable medium
CN113204451A (en) * 2021-03-22 2021-08-03 北京中交兴路信息科技有限公司 Pressure testing method and system for Redis cluster, storage medium and terminal
CN113360362A (en) * 2020-03-03 2021-09-07 北京沃东天骏信息技术有限公司 Dynamic sql efficiency checking method and plug-in
CN113704107A (en) * 2021-08-26 2021-11-26 平安国际智慧城市科技股份有限公司 Application testing method, device, equipment and computer readable storage medium
CN114721958A (en) * 2022-04-18 2022-07-08 四创科技有限公司 Automatic interface testing method and terminal for multi-database system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090150447A1 (en) * 2007-12-05 2009-06-11 Microsoft Corporation Data warehouse test automation framework
CN101789002A (en) * 2010-01-22 2010-07-28 浪潮(北京)电子信息产业有限公司 Database compatibility test device and method for server
CN102158373A (en) * 2011-05-12 2011-08-17 哈尔滨工业大学 Performance evaluation system of high-end server for intermediary business of bank
CN102521354A (en) * 2011-12-13 2012-06-27 北京天融信科技有限公司 Auditing and testing method and auditing and testing device for data base protocol

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090150447A1 (en) * 2007-12-05 2009-06-11 Microsoft Corporation Data warehouse test automation framework
CN101789002A (en) * 2010-01-22 2010-07-28 浪潮(北京)电子信息产业有限公司 Database compatibility test device and method for server
CN102158373A (en) * 2011-05-12 2011-08-17 哈尔滨工业大学 Performance evaluation system of high-end server for intermediary business of bank
CN102521354A (en) * 2011-12-13 2012-06-27 北京天融信科技有限公司 Auditing and testing method and auditing and testing device for data base protocol

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446825A (en) * 2014-06-12 2016-03-30 阿里巴巴集团控股有限公司 Database test method and device
CN105446825B (en) * 2014-06-12 2020-08-11 阿里巴巴集团控股有限公司 Database testing method and device
CN106708818A (en) * 2015-07-17 2017-05-24 阿里巴巴集团控股有限公司 Pressure testing method and system
WO2017016422A1 (en) * 2015-07-29 2017-02-02 阿里巴巴集团控股有限公司 Cloud-based database detection method and device
CN106897205B (en) * 2015-12-18 2021-01-05 创新先进技术有限公司 Test data generation method and device
CN106897205A (en) * 2015-12-18 2017-06-27 阿里巴巴集团控股有限公司 A kind of test data generating method and device
WO2017107810A1 (en) * 2015-12-21 2017-06-29 阿里巴巴集团控股有限公司 Database operating method and device
CN105740722B (en) * 2016-01-25 2018-12-04 上海新炬网络技术有限公司 A kind of camouflage method of database sensitive data
CN105740722A (en) * 2016-01-25 2016-07-06 上海新炬网络信息技术有限公司 Database sensitive data disguising method
CN107168864A (en) * 2016-03-08 2017-09-15 上海大唐移动通信设备有限公司 Code stream generation method and device
CN105912681A (en) * 2016-04-14 2016-08-31 国家电网公司 Aging testing method and system for electricity marketing database
CN107885654A (en) * 2017-05-05 2018-04-06 平安科技(深圳)有限公司 Data library test method and system
CN107480053A (en) * 2017-07-21 2017-12-15 杭州销冠网络科技有限公司 A kind of Software Test Data Generation Method and device
CN107885656A (en) * 2017-09-13 2018-04-06 平安科技(深圳)有限公司 Product algorithm automated testing method and application server
CN107885656B (en) * 2017-09-13 2021-02-09 平安科技(深圳)有限公司 Automatic product algorithm testing method and application server
CN107979876A (en) * 2017-11-16 2018-05-01 广州市百果园网络科技有限公司 Data transmission method and terminal
CN108009087A (en) * 2017-11-29 2018-05-08 广州品唯软件有限公司 Data library test method, device and computer-readable recording medium
CN109903109A (en) * 2017-12-08 2019-06-18 北京京东尚科信息技术有限公司 Test method and device
CN109933514A (en) * 2017-12-18 2019-06-25 北京京东尚科信息技术有限公司 A kind of data test method and apparatus
CN109933514B (en) * 2017-12-18 2022-07-05 北京京东尚科信息技术有限公司 Data testing method and device
CN109976995A (en) * 2017-12-28 2019-07-05 百度在线网络技术(北京)有限公司 Method and apparatus for test
CN109976995B (en) * 2017-12-28 2022-06-28 百度在线网络技术(北京)有限公司 Method and apparatus for testing
CN110688295A (en) * 2018-07-06 2020-01-14 北京京东尚科信息技术有限公司 Data testing method and device
CN108984712A (en) * 2018-07-06 2018-12-11 深圳前海微众银行股份有限公司 Counting method, equipment and readable storage medium storing program for executing are made based on business scenario
CN109558326B (en) * 2018-12-03 2022-04-26 中国建设银行股份有限公司 Test method and device
CN109558326A (en) * 2018-12-03 2019-04-02 中国建设银行股份有限公司 A kind of test method and device
CN109785115A (en) * 2018-12-14 2019-05-21 深圳壹账通智能科技有限公司 Generation method, device and the computer equipment of test data
CN109933507A (en) * 2019-03-22 2019-06-25 北京极简智能科技有限公司 A kind of program feature detection method, system, equipment and storage medium
CN109933507B (en) * 2019-03-22 2023-02-03 北京极简智能科技有限公司 Program performance detection method, system, equipment and storage medium
CN113360362A (en) * 2020-03-03 2021-09-07 北京沃东天骏信息技术有限公司 Dynamic sql efficiency checking method and plug-in
CN111444073A (en) * 2020-03-26 2020-07-24 中国信息通信研究院 Method, device and system for testing performance of financial database
CN111767222A (en) * 2020-06-28 2020-10-13 杭州数梦工场科技有限公司 Data model verification method and device, electronic equipment and storage medium
CN112819605A (en) * 2021-01-29 2021-05-18 山东浪潮通软信息科技有限公司 Method and device for testing fund settlement service and computer readable medium
CN113204451A (en) * 2021-03-22 2021-08-03 北京中交兴路信息科技有限公司 Pressure testing method and system for Redis cluster, storage medium and terminal
CN113704107A (en) * 2021-08-26 2021-11-26 平安国际智慧城市科技股份有限公司 Application testing method, device, equipment and computer readable storage medium
CN113704107B (en) * 2021-08-26 2024-05-07 平安国际智慧城市科技股份有限公司 Application testing method, device, equipment and computer readable storage medium
CN114721958A (en) * 2022-04-18 2022-07-08 四创科技有限公司 Automatic interface testing method and terminal for multi-database system

Also Published As

Publication number Publication date
CN103810196B (en) 2017-09-22

Similar Documents

Publication Publication Date Title
CN103810196A (en) Method for testing performance of database on basis of business model
US11775745B2 (en) Database model which provides management of custom fields and methods and apparatus therfore
US10845962B2 (en) Specifying user interface elements
US7599948B2 (en) Object relational mapping layer
CN110914818A (en) Dataflow graph configuration
US7810102B2 (en) Service adaptation of the enterprise services framework
US8935218B2 (en) Multi-client generic persistence for extension nodes
US8341191B2 (en) Methods and structures for utilizing reusable custom-defined nestable compound data types to permit product variations within an existing taxonomy
US9495475B2 (en) Method of representing an XML schema definition and data within a relational database management system using a reusable custom-defined nestable compound data type
CN107665171A (en) Automatic regression test method and device
WO2000075849A2 (en) Method and apparatus for data access to heterogeneous data sources
US20120278708A1 (en) Verifying configurations
US8185562B2 (en) Business object browser for business query language
US20110252049A1 (en) Function execution using sql
EP2965492B1 (en) Selection of data storage settings for an application
CN103646049A (en) Method and system for automatically generating data report
US11775517B2 (en) Query content-based data generation
EP1909170B1 (en) Method and system for automatically generating a communication interface
CN116149666A (en) Grammar checking method and system of SQL sentence, electronic equipment and readable storage medium
US9886435B2 (en) Pseudo internal numbering mechanism
CN116755684B (en) OAS Schema generation method, device, equipment and medium
Fernando et al. Database Programming
Ameen Database Query Analysis and Optimization in a Large Scale Information System
CN116860636A (en) Unit test code generation method, device, equipment and storage medium
Füchsle et al. SAP CRM Web Client: Customizing and Development

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20191204

Address after: P.O. Box 31119, grand exhibition hall, hibiscus street, 802 West Bay Road, Grand Cayman, Cayman Islands

Patentee after: Innovative advanced technology Co., Ltd

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Co., Ltd.

TR01 Transfer of patent right