CN103714066A - Template-based database analyzer - Google Patents

Template-based database analyzer Download PDF

Info

Publication number
CN103714066A
CN103714066A CN201210374651.8A CN201210374651A CN103714066A CN 103714066 A CN103714066 A CN 103714066A CN 201210374651 A CN201210374651 A CN 201210374651A CN 103714066 A CN103714066 A CN 103714066A
Authority
CN
China
Prior art keywords
statement
pattern
database
data
file
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
CN201210374651.8A
Other languages
Chinese (zh)
Other versions
CN103714066B (en
Inventor
陈颖宇
X.徐
X.周
J.顾
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.)
SAP SE
Original Assignee
SAP SE
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 SAP SE filed Critical SAP SE
Priority to CN201210374651.8A priority Critical patent/CN103714066B/en
Publication of CN103714066A publication Critical patent/CN103714066A/en
Application granted granted Critical
Publication of CN103714066B publication Critical patent/CN103714066B/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/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation
    • 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/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Disclosed is a template-based database analyzer. An automated database analyzer uses templates to adapt to various database languages, such as SQL (structured query language) and branches thereof. The templates are combined with a defined database schema and metadata for operating the database schema. SQL files instantiate the database schema on a database system under test. Then operation of the database schema can be executed so as to evaluate performance of the database system under test.

Description

Database analysis device based on template
Technical field
The disclosure relates to database analysis device, specifically, relates to the database analysis device based on template.
Background technology
Unless point out in addition here, do not admit this part open owing to being included in, in this part, become prior art.
Database product is becoming the more and more common element of commercial enterprise.Memory database technology, such as SAP
Figure BDA00002215482500011
database product, is just becoming more general.For realize back-end data base system in enterprise, database designers has technology and design alternative widely.Yet each database product has the strong point of self and the weakness of self.Therefore database designers must be selected optimal database product for their application-specific.
Usually, the expensive time of database designers is studied and authentication data storehouse candidate.There is the assessment tool for the performance metric of database of ratings, but the narrow limit of functions that these assessment tools provide the validity of performance metric.For example, general assessment tool focuses on one or several specific region, so database designers only can be evaluated the sub-fraction of whole database product.Assessment tool is generally exclusively used in given database product, so be to be difficult to realize with same instrument to the test of different database products.Typical assessment tool comprises:
This assessment tool of DTM DB Stress-only provides pressure (stress) test.
Agile Database Tools(Agile data base tool)-this instrument is only supported the test to the Database Systems around so-called Agile data method design.
Online Database Functions Testing Tool(online database functional test instrument)-this instrument is only supported the test of Oracle functional unit.
This instrument of Hibernate-is only supported to create, is read to upgrade and delete (CRUD) logic, has the low coverage rate for Structured Query Language (SQL) (SQL) statement (statement).
Database product generally has they self intrinsic performance reference (performance benchmark), functional specification (functionality specs), simple test instrument etc.Yet these instruments can not adapt to the various combination of hardware environment and application demand.In addition, due to the limited and privately owned application programming interface (API) of database product, and cause not supporting secondary development.
Summary of the invention
According to an aspect of the present disclosure, a kind of method for database of ratings (DB) system is provided, it comprises: operation computer system is carried out following steps: receive template file, described template file is described grammer and the syntax of one or more DB statements of the DB language of described DB system; Receive meta data file, the metadata that described meta data file comprises DB pattern, the metadata of described DB pattern comprises the metadata of one or more DB forms of described DB pattern and the metadata of the data field of described DB form; According to the grammer of appointment in described template file and syntax, generate DB statement, this DB statement comprise for create described DB pattern example a DB statement and for the 2nd DB statement of the DB form executable operations to described DB pattern; By carrying out a DB statement by the instantiation in described DB system of described DB pattern; Carry out the 2nd DB statement with the DB form executable operations to described DB pattern; And the performance of reporting described DB system execution the 2nd DB statement.
According to an aspect of the present disclosure, a kind of Database Systems are provided, it comprises: computer system; And data-storage system, it has the executable program code of computing machine stored thereon, the executable program code of described computing machine is when being carried out by computer system, make computer system carry out following operation: receive template file, described template file is described grammer and the syntax of one or more DB statements of the DB language of described DB system; Receive meta data file, the metadata that described meta data file comprises DB pattern, the metadata of described DB pattern comprises the metadata of one or more DB forms of described DB pattern and the metadata of the data field of described DB form; According to the grammer of appointment in described template file and syntax, generate DB statement, this DB statement comprise for create described DB pattern example a DB statement and for the 2nd DB statement of the DB form executable operations to described DB pattern; By carrying out a DB statement by the instantiation in described DB system of described DB pattern; Carry out the 2nd DB statement with the DB form executable operations to described DB pattern; And the performance of reporting described DB system execution the 2nd DB statement.
According to an aspect of the present disclosure, a kind of non-transient computer-readable recording medium is provided, there is the executable program code of computing machine stored thereon, the executable program code of described computing machine makes computer system carry out following steps when being carried out by computer system: receive template file, described template file is described grammer and the syntax of one or more DB statements of the DB language of described DB system; Receive meta data file, the metadata that described meta data file comprises DB pattern, the metadata of described DB pattern comprises the metadata of one or more DB forms of described DB pattern and the metadata of the data field of described DB form; According to the grammer of appointment in described template file and syntax, generate DB statement, this DB statement comprise for create described DB pattern example a DB statement and for the 2nd DB statement of the DB form executable operations to described DB pattern; By carrying out a DB statement by the instantiation in described DB system of described DB pattern; Carry out the 2nd DB statement with the DB form executable operations to described DB pattern; And the performance of reporting described DB system execution the 2nd DB statement.
Accompanying drawing explanation
Fig. 1 illustrates according to the example of the configuration of database analysis device of the present disclosure.
Fig. 2 represents the workflow in the embodiment of database analysis device.
Fig. 3 represents according to the example of the template of principle of the present disclosure.
Fig. 4 and Fig. 4 A represent according to the example of the meta data file of principle of the present disclosure.
Fig. 5 illustrates senior (high level) block diagram according to specific embodiment of the present disclosure.
Embodiment
The disclosed embodiments relate to for generating and move for evaluating the method and system at the test sight (test scenario) of the performance of Database Systems.In the following description, for illustrative purposes, a lot of examples and specific detail have been set forth, to provide thorough understanding of the present disclosure.Yet, it will be evident to one skilled in the art that, as the disclosure that claim limited can comprise some or all features in these examples individually, or comprise in combination some or all features in these examples with the further feature the following describes, and can comprise modification and the equivalent of feature described herein and design.
Fig. 1 illustrates according to the configuration of the database analysis device 100 of embodiment of the present disclosure.Database analysis device 100 is shown as with data base management system (DBMS) (DBMS) 10 and fits together, and the performance of data base management system (DBMS) (DBMS) 10 will be evaluated by this database analysis device.Database analysis device 100 can be via database API12 and database performance API14 and DBMS10 interface.Database API12 allows application (for example, database analysis device 100) to communicate by letter with DBMS10 with performing database operation, such as, create and delete database form, data in increase, modification and delete database form, Query Database form, or otherwise access DBMS.Database performance API14 allows application, such as database analysis device 100, and the performance data that access DBMS10 generated in the operating period of DBMS.Performance data can comprise such data, such as, storer utilization rate, CPU usage, page exchange (swapping) etc.The data of particular types can be different between a DBMS and another DBMS.
In certain embodiments, database analysis device 100 can comprise system console 102, Structured Query Language (SQL) (SQL) maker 104, analyze performer (analysis runner) 106, tracking manager (trce manager) 108He Reporting Center 110.System console 102 can be as the management interface of the performed function of database analysis device 100.In certain embodiments, user (for example, data base administration user) can utility command line interface (CLI) access system control desk 102.Certainly, be appreciated that in other embodiments, can use other Interface design.
User can be via system console 102 accessing database analyser function.System console 102 can comprise in response to user's input control the operation of other module of database analysis device 100.The action of system console 102 between can Coordination module.User can obtain test run (test run) that database analysis device 100 carrying out when pretreatment process information, about the performance information of ongoing or previous test run, etc.User can start " circular flow (the loop run) " of test sight " single operation (single run) " or test sight.
As will be discussed below, test run refers to operation test sight, and test sight refers to a series of database manipulations to DBMS10.Test sight can be specified the database schema (database schema) that will create in DBMS10 and arrange and is for example applied to this database schema, to simulate (, hundreds of to thousands of) database statement of true environment of the user of this database schema.Therefore operation test sight for testing the ability of DBMS10, the performance of DBMS, etc." single operation " refers to that carrying out test sight once and according to the performance data of collecting at this run duration generates results of property, and " circular flow " refers to this test sight of execution repeatedly, gathering is from the performance data of the operation of each execution, and carry out generative nature energy result according to assembled performance data (for example,, by these data are averaging).In a typical use-case, user can original execution the single of test sight move to verify the database manipulation of this test sight and identify any logic error, thereby permission user carries out fault eliminating and improvement to this test sight as required.After having verified test sight, can carry out assessment of performance by carrying out one or more circular flows of this test sight.To the other details of test sight be described below.
Continuation is with reference to figure 1, and maker 104 can be for generating the SQL file that forms test sight.Although the disclosed embodiments illustrate, use SQL as the database language of DBMS10, be noted that also and can support the database language except SQL.The SQL statement of SQL file including for training (exercise) DBMS10 according to test sight.Test sight can be embodied in the SQL statement that comprises SQL file.Test sight can comprise carrying out selects (SELECT) operation, merging (JOIN) operation, various clusters (aggregation) operation, etc.Test sight can comprise any combination of SQL statement and the SQL statement of any number.
In certain embodiments, SQL maker 104 can comprise template provides device 122, metadata that device 124 and maker 126 are provided.Template provides data repository (not shown) that device 122 can access templates file so that selected template file 112 is offered to maker 126.Equally, metadata provides data repository (not shown) that device 124 can accesses meta-data file so that selected meta data file 114 is offered to maker 126.Then maker 126 can produce file 116 by the information comprising in selected template file 112 and selected meta data file 114.To discuss below template file and meta data file in more detail.
Analyze performer 106 and can scan SQL file 116, with the test sight that operation realizes with SQL statement in SQL file to DBMS10.Therefore, in certain embodiments, analyzing performer 106 can be via database API12 and DBMS10 interface, to SQL statement is sent to DBMS10 and receives response from DBMS.
In certain embodiments, analyzing performer 106 can comprise for moving some test modules 132 of test sight.Each test module 132 can be with specific method test DBMS10 to evaluate the particular aspects of DBMS.For example, functional stabilization module can evaluate DBMS10 can by some function (such as, the cluster of large database concept form, etc.) process have how good.Performance module can be evaluated the working time of for example, when process database operations (, select operation, union operation, the etc.) operation in DBMS10.Storer utilization rate module can be evaluated the memory management ability of DBMS10; For example, can monitor peak value storer utilization rate, etc.Therefore, analyzing performer 106 can be with database performance API14 interface to collects performance data and other environmental information, and here performance data and other environmental information are referred to as " performance data ", should " performance data " be generated and be provided by DBMS10.
In certain embodiments, tracing management 108 can the collected performance data of receiving and analyzing performer 106.Tracking manager 108 can be stored the performance data of each run, no matter be the data from single operation, or from the repeatedly data of operation of circular flow.Tracking manager 108 also can store and management system journal and the out of Memory relevant with the operation of test sight.
Reporting Center 110 can receive as the data of data stream and prepare the report about the performance of DBMS10 from tracking manager 108.In certain embodiments, Reporting Center 110 can comprise three configurable assemblies.Data collector 142 can be selected user and be intended for the data that it generates report.In certain embodiments, data collector 142 can be file scanning and the data filtering application realizing in standard Java file manipulation (standard Java file manipulating) API.User can define data collector 142 and be used for extracting the filter type from the data in the data stream of tracking manager 108.Only as an example, suppose user's want report from the operation of test sight starts data of two days.Can use " date filter " to filtering with these be concerned about data of mating for two days.Can come data to particular types (for example, storer utilization rate data, processor utilization rate data, etc.) to filter by other data filter.
Reporting Center 110 can comprise analyzer 144, and the data that 144 pairs of data collectors of analyzer 142 receive are carried out various calculating.Calculating can comprise be averaging and ask variance, statistical study, trend analysis, prediction modeling, etc.The analysis data that analyzer 144 generates can be provided for Report Builder 146 to report this analysis data.These analysis data can present with any applicable form.For example, Flex Reporting Tools can be used for drawing report to be delivered to network (web) user.Report can adopt
Figure BDA00002215482500061
the forms such as file.These analysis data can comprise chart, such as, bar chart, pie chart, line chart, etc.
Fig. 2 illustrates according to the typical work of the database analysis device 100 of some embodiment.Therefore,, 202, database analysis device 100 can receive template file (for example, template provides device 122 to provide template file 112 to maker 126).As explained in more detail below, template file is specified the database language that DBMS10 uses (for example, grammer (grammar) and syntax (syntax) SQL).User can specify template file via system console 102 in the middle of the storage vault of predefined template file.In certain embodiments, user can revise predefined template file, and then template provides device this modified predefined template file can be offered to maker 126 as the template file of customization.In certain embodiments, user can " from (from scratch) " defines the template file of themselves customization.The template file of customization can be added to the storage vault of predefined template file, in the future.
204, database analysis device 100 can receive meta data file (for example, metadata provides device 124 to provide meta data file 114 to maker 126).As will be explained in more detail, meta data file definition test sight and specified database pattern and the database manipulation that will carry out database schema.User can specify meta data file via system console 102 in the middle of the set of predefined meta data file.In certain embodiments, user can revise predefined meta data file, and then metadata provides device 124 this modified predefined meta data file can be offered to maker 126 as the meta data file of customization.In certain embodiments, user can " from (from scratch) " defines the meta data file of themselves customization.The meta data file of customization can be added to the storage vault of predefined meta data file, in the future.
206, database analysis device 100 can obtain the data value that will be loaded in database table, and this data value is included in the database schema of appointment in the meta data file of 204 receptions.In certain embodiments, this data value can obtain from user's actual database system (not shown).As just example, suppose that DBMS10 is the candidate data storehouse system of the alternative of user's existing database system of being considered as them.The data value that therefore, will be loaded in database schema can obtain from user's existing database system (not shown).For example, database analysis device 100 can use applicable API and user's existing database system interface.206, user can specify which form from their existing database system to obtain data value.
In other embodiments, the data value at 206 places can generate by the one or more random value makers in maker 126 randomly.For example, maker 126 can comprise random generator for generating random text, for generate random number another random generator, etc.The in the situation that of data sensitive, for example, in the situation that may relate to the outflow of private information, can preferably use the data value of random generation.For example, employee's wage, medical information, etc., be the information of the very privately owned sensitivity that should maintain secrecy.Therefore the data value that is regarded as sensitivity or secret of, using at test sight can be replaced by the value of random generation.In certain embodiments, the data value in 206 acquisitions can comprise data value and the random data value generating from user's Database Systems.
208, database analysis device 100 can generate the test sight that comprises the SQL statement set being stored in SQL file.For example, user can use the source generation of appointment template file, appointment meta data file and (from the existing Database Systems, that generate at random of user or certain combination of the two) data value to test sight to start from system console 102 input commands.
Test sight can specify in upper database schema and the database statement for accessing and otherwise database schema being operated creating of just assessed DBMS10.Therefore, in certain embodiments, database analysis device 100(for example, via maker 126) can generate the set for the SQL statement of creation database pattern at 208a, for example, a series of SQL create (CREATE) statements.SQL statement can comprise for load insertion (INSERT) statement of data value to database schema.These SQL statement can form preparation (PREPARE) part in SQL file.At 208b, database analysis device 100 can generate the set of access or alternate manner SQL statement that database schema is operated.The database manipulation of these statement composing trainings DBMS10, and can form the basis of performance institute foundation of evaluation DBMS.These statements can be stored in execution (EXECUTE) part of SQL file.In certain embodiments, can generate and remove (clean-up) SQL statement at 208c, for delete database pattern after the test of DBMS10 has been stopped.These SQL statement can form removing (CLEAN) part of SQL file.
According to principle of the present disclosure, maker 126 can use grammer and syntax and the standard in the meta data file of 204 receptions in the template file of 202 receptions, generate grammer and the correct SQL statement (preparation part) of syntax that can be carried out by DBMS10, with by database schema instantiation and data are loaded into the database schema of instantiation in this DBMS.Similarly, maker 126 generates the correct SQL statement (operating part) that can be carried out by DBMS10, to conduct interviews and operate being formed for evaluating the basic database schema of this DBMS.
When user wants operation test sight, user can send for moving the order of test sight at system console 102.User can identify interested test sight, and specifies single operation test sight or circular flow to test sight N time.User can specify with which test module 132 is tested DBMS10.For example, in certain embodiments, each test module can have the respective profiles that comprises test instruction, the Data Collection that described test instruction control analysis performer 106 carries out.As just example, functional stabilization module can have such instruction, i.e. " record (record when statement-execution-time>5seconds) when the while statement execution time is greater than 5 seconds ", for identifying the statement having compared with the slow execution time.User can be configured to configuration file to specify in the kind of the information that run duration will record.
Then database analysis device 100 can access the different part in the SQL file that corresponding SQL file and execution access.Therefore, 222, database analysis device 100(for example, via analyzing performer 106) can scan the SQL statement in the preparation part of the SQL file that accessed SQL file accessed with identification.Then can carry out SQL statement to cause the instantiation of database schema on DBMS10.For example, analyze performer 106 and via database API12, to DBMS10, send the SQL statement of the preparation part that comprises accessed SQL file.This SQL statement can creation database pattern and data value can be inserted to this database schema.
224, database analysis device 100 can be carried out the operating part of accessed SQL file so that DBMS10 is tested.For example, database analysis device 100(for example, via analyzing performer 106) can scan the SQL statement in the operating part of the SQL file that accessed SQL file accessed with identification.In the situation of single operation, analyze operating part that performer 106 can scan accessed SQL file once, so that each SQL statement is sent to DBMS10.In the situation of circular flow, analyze performer 106 and can scan according to user's appointment number of times the operating part of the SQL file that access.
Along with the operation of DBMS10 performing database, DBMS can generate and collect the data relevant to its performance, resource utilization etc.Such information can be used in the outside of DBMS10 via database performance API14.Therefore, along with DBMS10 is in 224 operations, analyze performer 106 and can from DBMS, collect performance data 226.Analyze performer 106 and can provide this performance data 228, to recorded and otherwise management by tracking manager 108.
In operation, test the last of sight, user can send for generating the order of report via system console 102 232.User can be in 242 delete database patterns.In certain embodiments, the deletion of database schema may be from user's implicit commands.Because creation database pattern may spend long time, so may not be desirably in after test run automatically delete database pattern.
Template file
Conventional database language is SQL.Yet, in these years develop out that many SQL languages prop up (dialect) and different database sellers may use different SQL languages to prop up.Therefore,, according to principle of the present disclosure, the specific SQL language that template file specifies DBMS10 to use props up.Certainly, be appreciated that this template file can represent the database language except SQL.
In certain embodiments, can prop up the storage vault that template file is provided for different SQL languages.For example, can be
Figure BDA00002215482500091
the one or more template files of SQL language Zhi Dingyi that use in Database Systems can be MySQL Database Systems etc. definition template file.Therefore, depend on the specific DBMS10 evaluating, user can select to specify for the SQL grammer of this DBMS and the predefined template file of syntax.Some DBMS can support multilingual, in this case, can have a plurality of template files, and each template file is for a kind of language.In certain embodiments, template the build tool be can provide, to allow user to revise predefined template file in the situation that existing template file is not supported specific DBMS, thereby SQL grammer or syntax revised.
Fig. 3 illustrates the example of the content of template file 112.Template file can represent to use applicable representation to represent that SQL statement is to specify grammer and the syntax of SQL.Example in Fig. 3 illustrates the fragment of template file, and it illustrates the representation that SQL inserts statement.This representation can comprise placeholder 302, placeholder 302 quote certain database form title, field (field) title, etc.Grammer and the correct SQL statement of syntax that template file can be familiar with for generating DBMS10 by maker 126.Other SQL statement can be with similar method representation, to specify their grammer and syntax.
Meta data file
As explained above, template file 112 is informed maker 126 how generative grammar and the correct SQL statement of syntax.According to the disclosure, meta data file 114 informs what SQL statement maker 126 generates.Meta data file comprises the operation that appointment will carry out DBMS10 and how not to specify (" how " be the work of template file) to express the information (" metadata statement ") of this operation.Therefore, meta data file can comprise the metadata statement of the database schema that appointment will instantiation on DBMS10.For example, the title that this metadata statement can specified database pattern.The database table that comprises database schema can be specified in metadata statement, the data type of the title that this database schema comprises each database table, the data field of each database table (data field), each data field, etc.Meta data file also can comprise the metadata statement that is used to specify the access that will maybe will carry out the database schema of instantiation the operation of the database schema execution of instantiation.The SQL statement that the SQL statement of database schema instantiation in DBMS10 is formed to the preparation part of SQL file 116 and the database schema of instantiation is operated or otherwise accessed forms the operating part of this SQL file.
Fig. 4 illustrates the example of the metadata statement that can be included in meta data file 114.The instance name 402 of the various elements of metadata statement in can the example of designated identification database schema, such as, database schema title, comprise database schema database table title, comprise database table data field title, etc.Instance name 402 has corresponding placeholder 302 in template file.For example, specify the metadata statement of update can specify the corresponding instance name of placeholder in the representation with insertion SQL statement in template file.Maker 126 can, with the representation of the insertion SQL statement in template file, by substituting placeholder with instance name, generate this SQL statement.
The fragment of the example shown meta data file shown in Fig. 4, it illustrates the metadata statement of the database table that is called people (PERSON).Can find out, the attribute that forms data field (constituent data field) also specified in this metadata statement, such as, data type, size of data, etc.This metadata statement can be represented as Java set (Java collection).Fig. 4 A illustrates another embodiment that this metadata statement is wherein represented as JavaScript object encoding (JavaScript Object Notation, JSON) file.
In certain embodiments, user can create for defining them and want the meta data file of the database schema of instantiation on just evaluated DBMS10.User can specify for the SQL statement to database mode access and operation in this meta data file.In other embodiments, database analysis device 100 can comprise one or more predefined meta data files.Predefined meta data file like this can be used for defining universal test sight (generic test scenario), in order to avoid user has to develop themselves test sight.For example, predefined meta data file is used " pet shop (pet store) " sight in the time of can adopting well-known test J2EE application, as the universal test sight that can be used as standard testing.
Fig. 5 illustrates the high level block diagram that can be configured and programme and using as the computer system 502 operating according to database analysis device 100 of the present disclosure.Computer system 502 can comprise CPU (central processing unit) (CPU) 512 or other similar data handling component.CPU512 can be uniprocessor or multiprocessor subsystem.Computer system 502 can comprise various memory modules.For example, memory module for example can comprise volatile memory 514(, and random access memory, RAM) with data storage device 516.Can provide communication interface 518 with allow computer system 502 by communication network 522(such as, Local Area Network, the Internet etc.) communicate by letter.Internal bus 520 can will comprise the assembly interconnect of computer system 502.
Data storage device 516 can comprise non-transient computer-readable medium, stores the executable program code 532 of computing machine on this medium.The executable program code 532 of computing machine is moved by CPU512 so that CPU carries out step of the present disclosure, the step of for example setting forth in Fig. 2.Data storage device 516 can storage data structure 534, such as, object and any other data described herein when object instance data, operation.For example, in certain embodiments, data structure 534 can comprise template file 112, meta data file 114 and SQL file 116.
User (for example, data base administrator) can use applicable user interface facilities 542 and computer system 502 mutual.User interface facilities 542 can comprise for example input equipment and output device, and input equipment is keyboard, keypad, mouse or other pointing device for example, and output device is display for example.In certain embodiments, user interface facilities 542 can comprise display device and keyboard, for via command line interface access system control desk 102.
All systems and the process here discussed can be embodied in the program code of storing on one or more non-transient computer-readable mediums.Such medium can comprise for example floppy disk, CD-ROM, DVD-ROM, flash drives, tape and solid-state random-access memory (ram) or ROM (read-only memory) (ROM) storage unit.Be appreciated that embodiment is not limited to any particular combination of hardware and software.Here be described to the element that intercoms mutually can be directly or indirectly by the communicating by letter for transmitting the different system of data of any number, describedly for transmitting the different system of data, include but not limited to the network of sharing storing communication, LAN (Local Area Network), wide area network, telephone network, cellular network, light network, satellite network, infrared network, radio frequency network and can be used for transmitting any other type of information between equipment.In addition, communication between system can be undertaken by any one or more known host-host protocols, and described host-host protocol is such as ATM(Asynchronous Transfer Mode), Internet Protocol (IP), HTTP(Hypertext Transport Protocol) and wireless application protocol (wap).
Advantage and technique effect
Database analysis device of the present disclosure provides multiple analysis module, such as, stability, performance, storer utilization rate, etc.The use of template and metadata has reduced user's required work when the emulation of setting up existing database behavior.Template can be supported at present popular database, for example, SQL, MySQL, Oracle, MaxDB, etc.User can carry out custom built forms by editing template (for example, using template the build tool), covers thus large-scale SQL language and props up (SQL dialects).User can realize any and complicated logic by editing meta-data.This allows user's design test sight to identify potential processing and the storage bottleneck in just tested DBMS.
For system designer or application developer, database analysis device 100 can be used to carry out the professional tool of case analysis.Comprise Performance Ratio and the report of the labor of stability test can help them about using that back-end data base solution to make correct decision.
More than describe the example how various embodiment of the present disclosure and aspect of the present disclosure can realize is shown.It is only embodiment that above example and embodiment should not be regarded as, and is presented to illustrate dirigibility of the present disclosure as defined in claims and advantage.Based on above open and claims, other layout, embodiment, embodiment and equivalent will become apparent to those skilled in the art that and can be used and can not depart from spirit and scope of the present disclosure as defined in claims.

Claims (20)

1. for a method for database of ratings (DB) system, comprise: operation computer system is carried out following steps:
Receive template file, this template file is described grammer and the syntax of one or more DB statements of the DB language of described DB system;
Receive meta data file, the metadata that this meta data file comprises DB pattern, the metadata of described DB pattern comprises the metadata of one or more DB forms of DB pattern and the metadata of the data field of DB form;
According to the grammer of appointment in described template file and syntax, generate DB statement, comprise for create described DB pattern example a DB statement and for the 2nd DB statement of the DB form executable operations to described DB pattern;
By carrying out a DB statement by the instantiation in described DB system of described DB pattern;
Carry out the 2nd DB statement with the DB form executable operations to described DB pattern; And
Report the performance of described DB system execution the 2nd DB statement.
2. the method for claim 1, wherein a DB statement inserts data value in described DB form.
3. the method for claim 1, also comprises: obtain the data value being inserted in the DB form of described DB pattern, wherein, a DB statement comprises described data value is inserted to the DB statement in described DB form.
4. method as claimed in claim 3, also comprises: from existing database system, receive described data value.
5. method as claimed in claim 3, wherein, at least some in described data value are random generations.
6. the method for claim 1, also comprises: during carrying out the 2nd DB statement from described DB systematic collection performance data.
7. the method for claim 1, also comprises: repeat the 2nd DB statement one or many, and repeatedly report that described DB system carries out the performance of the 2nd DB statement.
8. the method for claim 1, wherein described template file is in the middle of a plurality of predefined template files, and each predefined template file is specified grammer and the syntax for different DB language.
9. the method for claim 1, wherein described meta data file is in the middle of a plurality of predefined meta data files.
10. the method for claim 1, wherein, described DB statement comprises the 3rd DB statement, and the 3rd DB statement is from DB pattern described in described DB system-kill, the method also comprises: by carry out the 3rd DB statement after carrying out the 2nd DB statement, from DB pattern described in described DB system-kill.
11. the method for claim 1, wherein described DB language be Structured Query Language (SQL) (SQL).
12. 1 kinds of Database Systems, comprise:
Computer system; And
Data-storage system, it has the executable program code of computing machine stored thereon, and the executable program code of described computing machine, when being carried out by computer system, makes computer system carry out following operation:
Receive template file, this template file describe one of DB language of described DB system or
The grammer of a plurality of DB statements and syntax;
Receive meta data file, the metadata that this meta data file comprises DB pattern, the metadata of described DB pattern comprises the metadata of one or more DB forms of described DB pattern and the metadata of the data field of described DB form;
According to the grammer of appointment in described template file and syntax, generate DB statement, the DB statement that this DB statement comprises the example that creates described DB pattern and the 2nd DB statement to the DB form executable operations of described DB pattern;
By carrying out a DB statement by the instantiation in described DB system of described DB pattern;
Carry out the 2nd DB statement with the DB form executable operations to described DB pattern; And
Report the performance of described DB system execution the 2nd DB statement.
13. systems as claimed in claim 12, wherein, a DB statement inserts data value in described DB form.
14. systems as claimed in claim 12, wherein, described computer-executable code also makes described computer system obtain the data value being inserted in the DB form of described DB pattern, and wherein, a DB statement comprises for described data value being inserted to the DB statement of described DB form.
15. systems as claimed in claim 14, wherein, at least some in described data value are random generations.
16. systems as claimed in claim 14, wherein, described computer-executable code also make described computer system during carrying out the 2nd DB statement from described DB systematic collection performance data.
17. 1 kinds of non-transient computer-readable recording mediums, have the executable program code of computing machine stored thereon, and the executable program code of described computing machine makes computer system carry out following steps when being carried out by computer system:
Receive template file, this template file is described grammer and the syntax of one or more DB statements of the DB language of described DB system;
Receive meta data file, the metadata that this meta data file comprises DB pattern, the metadata of described DB pattern comprises the metadata of one or more DB forms of described DB pattern and the metadata of the data field of described DB form;
According to the grammer of appointment in described template file and syntax, generate DB statement, the DB statement that this DB statement comprises the example that creates described DB pattern and the 2nd DB statement to the DB form executable operations of described DB pattern;
By carrying out a DB statement by the instantiation in described DB system of described DB pattern;
Carry out the 2nd DB statement with the DB form executable operations to described DB pattern; And
Report the performance of described DB system execution the 2nd DB statement.
18. non-transient computer-readable recording mediums as claimed in claim 17, wherein, a DB statement inserts data value in described DB form.
19. non-transient computer-readable recording mediums as claimed in claim 17, wherein, computer system is also carried out following steps: obtain the data value being inserted in the DB form of described DB pattern, wherein, a DB statement comprises for described data value being inserted to the DB statement of described DB form.
20. non-transient computer-readable recording mediums as claimed in claim 17, wherein, at least some in described data value are random generations.
CN201210374651.8A 2012-09-29 2012-09-29 Database analysis device based on template Active CN103714066B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210374651.8A CN103714066B (en) 2012-09-29 2012-09-29 Database analysis device based on template

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210374651.8A CN103714066B (en) 2012-09-29 2012-09-29 Database analysis device based on template

Publications (2)

Publication Number Publication Date
CN103714066A true CN103714066A (en) 2014-04-09
CN103714066B CN103714066B (en) 2019-10-22

Family

ID=50407055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210374651.8A Active CN103714066B (en) 2012-09-29 2012-09-29 Database analysis device based on template

Country Status (1)

Country Link
CN (1) CN103714066B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107783789A (en) * 2017-11-01 2018-03-09 北京维普时代软件有限公司 A kind of demand development technology method and demand development platform for project data
CN108334521A (en) * 2017-01-19 2018-07-27 阿里巴巴集团控股有限公司 A kind of database volume prediction technique and device
CN109271326A (en) * 2018-11-28 2019-01-25 优刻得科技股份有限公司 Test method and its device, the equipment and storage medium of cloud database

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641639A (en) * 2004-01-12 2005-07-20 英业达股份有限公司 Multi data base query system and method thereof
CN1744079A (en) * 2004-08-30 2006-03-08 华为技术有限公司 Database optimizing method
CN101158975A (en) * 2007-11-21 2008-04-09 金蝶软件(中国)有限公司 Method and system for accessing distinct type data-base
US20100306591A1 (en) * 2009-06-01 2010-12-02 Murali Mallela Krishna Method and system for performing testing on a database system
CN102486748A (en) * 2010-12-02 2012-06-06 金蝶软件(中国)有限公司 Method and device for performance test

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641639A (en) * 2004-01-12 2005-07-20 英业达股份有限公司 Multi data base query system and method thereof
CN1744079A (en) * 2004-08-30 2006-03-08 华为技术有限公司 Database optimizing method
CN101158975A (en) * 2007-11-21 2008-04-09 金蝶软件(中国)有限公司 Method and system for accessing distinct type data-base
US20100306591A1 (en) * 2009-06-01 2010-12-02 Murali Mallela Krishna Method and system for performing testing on a database system
CN102486748A (en) * 2010-12-02 2012-06-06 金蝶软件(中国)有限公司 Method and device for performance test

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334521A (en) * 2017-01-19 2018-07-27 阿里巴巴集团控股有限公司 A kind of database volume prediction technique and device
CN108334521B (en) * 2017-01-19 2022-04-19 阿里巴巴集团控股有限公司 Database capacity prediction method and device
CN107783789A (en) * 2017-11-01 2018-03-09 北京维普时代软件有限公司 A kind of demand development technology method and demand development platform for project data
CN107783789B (en) * 2017-11-01 2021-04-09 北京维普时代软件有限公司 Demand development process method and demand development platform for project data
CN109271326A (en) * 2018-11-28 2019-01-25 优刻得科技股份有限公司 Test method and its device, the equipment and storage medium of cloud database

Also Published As

Publication number Publication date
CN103714066B (en) 2019-10-22

Similar Documents

Publication Publication Date Title
CN110309071B (en) Test code generation method and module, and test method and system
Sun et al. Towards more accurate retrieval of duplicate bug reports
Lopez-Herrejon et al. An assessment of search-based techniques for reverse engineering feature models
Howison et al. FLOSSmole: A collaborative repository for FLOSS research data and analyses
US9311345B2 (en) Template based database analyzer
US8930918B2 (en) System and method for SQL performance assurance services
Chen et al. From tpc-c to big data benchmarks: A functional workload model
US20070282876A1 (en) Method for service offering comparitive it management activity complexity benchmarking
US20140201714A1 (en) Evaluating performance maturity level of an application
Dit et al. A tracelab-based solution for creating, conducting, and sharing feature location experiments
Lemos et al. Using process mining in software development process management: A case study
CN101996131A (en) Automatic test method and automatic test platform for graphic user interface (GUI) based on x extensive makeup language (XML) packaging key word
US10528532B2 (en) Systems and methods for data integration
CN110990274B (en) Data processing method, device and system for generating test cases
Liu Research of performance test technology for big data applications
Mancebo et al. A process for analysing the energy efficiency of software
Santos et al. Design of Experiments: A comparison study from the non‐expert user's perspective
CN104391789A (en) Web application stress testing method
Abdallah Big data quality challenges
Bures Framework for assessment of web application automated testability
CN102014163B (en) Cloud storage test method and system based on transaction driving
CN105511869A (en) Demand tracking system and method based on user feedback
CN103714066A (en) Template-based database analyzer
KR101830936B1 (en) Performance Improving System Based Web for Database and Application
US20130318499A1 (en) Test script generation

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: German Waldo

Applicant after: SAP AG

Address before: German Waldo

Applicant before: SAP AG

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SAP AG TO: SAP EUROPE AG

EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant