An online single-step debugging method and system for big data computing
Through the online single-step debugging method and system, the problems of single-step debugging and result display in big data computing are solved, the debugging efficiency is improved, the gradual execution and modification of code and data are realized, and code problems are quickly located.
Patent Information
- Application Number
- CN202411387886.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-08
- Publication Date
- 2025-09-16
- Estimated Expiration
- 2044-10-08
AI Technical Summary
Existing technologies are not convenient for single-step debugging in big data computing and cannot effectively display debugging results, resulting in low debugging efficiency.
Provided is an online single-step debugging method and system for big data computing. The method displays a single-step debugging interface in response to single-step debugging instructions, and executes instructions in the interface to output results or modify program code and data. Debugging is performed using the collaborative work of a main computing machine and a debugging machine.
It facilitates single-step debugging and result display in big data computing, improves debugging efficiency, and enables quick location and resolution of code problems.
Smart Images

Figure CN119336616B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of software debugging technology, and more specifically, to an online single-step debugging method and system for big data computing. Background Art
[0002] In big data computing, due to the sheer volume of data and the complexity of the computations, code logic errors or unexpected results often occur. Traditional debugging methods cannot effectively display the results of big data debugging, resulting in low debugging efficiency. Therefore, improving the debugging efficiency and code quality of big data computing has become a valuable research topic.
[0003] For example, patent CN113641572B (application number: 202110750626.4) provides a debugging method for massive big data computing development based on SQL, which includes obtaining the original SQL statement and debugging information for calculating indicator data; wherein the debugging information includes whether debugging is required or not; judging whether the original SQL statement obtained needs to be debugged based on the debugging information; if so, modifying the original SQL statement obtained to generate debugging SQL and other steps. The present invention supports the simultaneous calculation of indicators using formal SQL statements and debugging SQL to obtain indicator data. Since the data of the two methods are written into different landing libraries, the indicator data do not interfere with each other, and the SQL calculation indicators are easier to smoothly transition and upgrade, avoiding the interference of dirty data generated by data users during the upgrade process. The method in patent CN113641572B can debug SQL calculations in massive big data, but it is not convenient for single-step debugging in big data calculations, nor can it display the results of big data debugging, and the debugging efficiency of big data calculations is low. Summary of the Invention
[0004] The purpose of this application is to provide an online single-step debugging method and system for big data computing, which solves the technical problems of being inconvenient to perform single-step debugging in big data computing and being unable to display the results of big data debugging, and achieves the technical effect of being convenient to perform single-step debugging in big data computing and being able to display the results of big data debugging.
[0005] An embodiment of the present application provides an online single-step debugging method and system for big data computing, the method comprising: displaying a single-step debugging interface in response to a single-step debugging instruction; wherein the single-step debugging instruction includes a single-step debugging breakpoint preset by the user or a single-step debugging instruction issued by the user in real time; in the single-step debugging interface, outputting a single-step execution result corresponding to the single-step execution instruction in response to the single-step execution instruction; or modifying the program code in response to the program modification instruction in the single-step debugging interface; or modifying the program running data in response to the data modification instruction in the single-step debugging interface.
[0006] In a possible implementation, the method further includes: in the single-step debugging interface, in response to a result save instruction, saving the single-step execution result; or in response to an exit debugging instruction, closing the single-step debugging interface to exit debugging.
[0007] In another possible implementation, in response to a single-step debugging instruction, a single-step debugging interface is displayed, including: obtaining the location information of the target program running to, and determining the single-step debugging instruction corresponding to the location information based on the correspondence between the location information and the single-step debugging instruction; wherein the correspondence between the target program, the single-step debugging instruction, the location information and the single-step debugging instruction is stored on the main computing machine; the main computing machine triggers the single-step debugging function, the main computing machine sends the single-step debugging instruction to the debugging machine, and displays the single-step debugging interface on the debugging machine; in the single-step debugging interface, in response to the single-step execution instruction, the single-step execution result corresponding to the single-step execution instruction is output, including: the main computing machine executes the single-step execution instruction, obtains the single-step execution result corresponding to the single-step execution instruction, and sends the single-step execution result to the debugging machine, and the debugging machine outputs the single-step execution result corresponding to the single-step execution instruction in the single-step debugging interface.
[0008] In another possible implementation, in response to a single-step debugging instruction, displaying a single-step debugging interface also includes: obtaining the computer identifier on which the target program is running and the location information to which the target program is running, sending the computer identifier and the location information to the debugging machine, and the debugging machine determining the single-step debugging instruction corresponding to the computer identifier and the location information based on the correspondence between the computer identifier, the location information and the single-step debugging instruction; wherein, the target program is running on a main computing machine, and the correspondence between the computer identifier, the location information and the single-step debugging instruction, and the single-step debugging instruction are stored on the debugging machine; the debugging machine sends the single-step debugging instruction to the main computing machine corresponding to the computer identifier, and the main computing machine corresponding to the computer identifier triggers the single-step debugging function, and displays the single-step debugging interface on the debugging machine.
[0009] In another possible implementation, the method also includes: obtaining a calculation amount identifier and a data amount identifier corresponding to a single-step debugging instruction; wherein, the calculation amount identifier and the data amount identifier corresponding to the single-step debugging instruction are preset; when the calculation amount corresponding to the calculation amount identifier is greater than the preset calculation amount or the data amount corresponding to the data amount identifier is greater than the preset data amount, the main computing machine triggers the single-step debugging function; when the calculation amount corresponding to the calculation amount identifier is less than or equal to the preset calculation amount and the data amount corresponding to the data amount identifier is less than or equal to the preset data amount, the debugging code and data corresponding to the single-step debugging instruction are transmitted to the debugging machine, and the single-step debugging function is triggered on the debugging machine.
[0010] In another possible implementation, when there are multiple debugging machines, the debugging code and data corresponding to the single-step debugging instruction are transmitted to the debugging machine, and the single-step debugging function is triggered on the debugging machine, including: determining the system resource evaluation value of each debugging machine based on the remaining storage space and remaining computing power of each debugging machine; determining the target debugging machine with the largest system resource evaluation value among the multiple debugging machines, transmitting the debugging code and data corresponding to the single-step debugging instruction to the target debugging machine, and triggering the single-step debugging function on the target debugging machine.
[0011] In another possible implementation, the debugging code and data corresponding to the single-step debugging instruction are transmitted to the target debugging machine, and the single-step debugging function is triggered on the target debugging machine, including: the target debugging machine enters a network restriction mode and a transaction restriction mode, and in the network restriction mode, the network usage of other processes except the process transmitting the debugging code and data corresponding to the single-step debugging instruction is restricted, and the system computing power usage of other processes except the process debugging the debugging code and data corresponding to the single-step debugging instruction is restricted.
[0012] An embodiment of the present application also provides an online single-step debugging system for big data computing, including a unit for executing the method described above.
[0013] An embodiment of the present application also provides an online single-step debugging system for big data computing, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the method described above is implemented.
[0014] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method described above is implemented.
[0015] An embodiment of the present application further provides a computer program product, including a computer program, which implements the steps of the above-described method when executed by a processor.
[0016] Compared with the prior art, the embodiments of the present application have the following beneficial effects:
[0017] The embodiment of the present application provides an online single-step debugging method for big data computing, which includes: displaying a single-step debugging interface in response to a single-step debugging instruction; wherein the single-step debugging instruction includes a single-step debugging breakpoint preset by the user or a single-step debugging instruction issued by the user in real time; in the single-step debugging interface, outputting a single-step execution result corresponding to the single-step execution instruction in response to the single-step execution instruction; or modifying the program code in response to the program modification instruction in the single-step debugging interface; or modifying the program running data in response to the data modification instruction in the single-step debugging interface. The method in the embodiment of the present application can perform single-step debugging on the big data computing process, can gradually execute code and modify code and data in big data computing, thereby quickly locating and solving code problems, and improving the debugging efficiency of big data computing. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0019] Figure 1 A flowchart of an online single-step debugging method for big data computing provided in an embodiment of the present application;
[0020] Figure 2 A flowchart of another online single-step debugging method for big data computing provided in an embodiment of the present application;
[0021] Figure 3 A flowchart of another online single-step debugging method for big data computing provided in an embodiment of the present application;
[0022] Figure 4 A logical diagram of an online single-step debugging system for big data computing provided in an embodiment of the present application;
[0023] Figure 5 A schematic diagram of an online single-step debugging system for big data computing provided in an embodiment of the present application. DETAILED DESCRIPTION
[0024] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or collections thereof.
[0025] It will also be understood that the term "and / or" used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
[0026] As used in this specification and the appended claims, the term "if" can be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "upon determination" or "in response to determining" or "upon detection of [described condition or event]" or "in response to detecting [described condition or event]," depending on the context.
[0027] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.
[0028] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.
[0029] Existing debugging methods for big data computing are not convenient for single-step debugging in big data computing, nor can they display the results of big data debugging, resulting in low debugging efficiency for big data computing.
[0030] Based on the above reasons, an embodiment of the present application provides an online single-step debugging method for big data computing, which includes: displaying a single-step debugging interface in response to a single-step debugging instruction; wherein the single-step debugging instruction includes a single-step debugging breakpoint preset by the user or a single-step debugging instruction issued by the user in real time; in the single-step debugging interface, outputting a single-step execution result corresponding to the single-step execution instruction in response to the single-step execution instruction; or in the single-step debugging interface, modifying the program code in response to the program modification instruction; or in the single-step debugging interface, modifying the program running data in response to the data modification instruction. The method in the embodiment of the present application can perform single-step debugging on the big data computing process, can gradually execute code and modify code and data in big data computing, thereby quickly locating and solving code problems, and improving the debugging efficiency of big data computing.
[0031] In some scenarios, an online single-step debugging method for big data computing of an embodiment of the present application can be applied to the debugging of big data computing, and can be applied to big data computing performed by one computer or multiple computers, which can improve the debugging efficiency of big data computing.
[0032] The following is a detailed description of an online single-step debugging method for big data computing provided by an embodiment of the present application with reference to specific examples.
[0033] Figure 1 A flow chart of an online single-step debugging method for big data computing provided in an embodiment of the present application is shown as follows: Figure 1 As shown, the method includes S110 to S120, and S110 to S120 are described in detail below.
[0034] S110: Displaying a single-step debugging interface in response to a single-step debugging instruction, wherein the single-step debugging instruction includes a single-step debugging breakpoint preset by the user or a single-step debugging instruction issued by the user in real time.
[0035] During the calculation of big data, in order to debug the calculation process of big data, a single-step debugging interface can be displayed on the computer in response to a single-step debugging instruction. The single-step debugging interface is used to issue a debugging instruction corresponding to the single-step debugging.
[0036] When the user issues a single-step debugging instruction through the single-step debugging interface, the single-step debugging instruction includes the single-step debugging breakpoint preset by the user or the single-step debugging instruction issued by the user in real time, and debugging can be performed through the single-step debugging breakpoint or the single-step debugging instruction for single-step execution.
[0037] S120: In response to a single-step execution instruction in the single-step debugging interface, output a single-step execution result corresponding to the single-step execution instruction. Alternatively, in response to a program modification instruction in the single-step debugging interface, modify the program code. Alternatively, in response to a data modification instruction in the single-step debugging interface, modify the program running data.
[0038] In the single-step debugging interface, in response to a single-step execution instruction, a single-step execution result corresponding to the single-step execution instruction can be output, thereby enabling the user to analyze the data calculation process through the single-step execution result.
[0039] In the single-step debugging interface, the program code can be modified in response to a program modification instruction, so that the user can directly modify the code.
[0040] In the single-step debugging interface, the program running data can be modified in response to data modification instructions, allowing users to modify the data of the big data calculation process and then control the subsequent calculation process of the big data calculation process.
[0041] The beneficial effect brought about by the above implementation method is that it can perform single-step debugging on the big data calculation process, can gradually execute code and modify code and data in big data calculation, so as to quickly locate and solve code problems, and improve the debugging efficiency of big data calculation.
[0042] In some implementations, the method further includes: in the single-step debugging interface, in response to a result save instruction, saving the single-step execution result; or in response to an exit debugging instruction, closing the single-step debugging interface to exit debugging.
[0043] During the big data calculation process, it may be necessary to save the data to facilitate subsequent program analysis. Therefore, in the single-step debugging interface, you can also respond to the result save instruction to save the single-step execution results, and then store the intermediate result data of the big data calculation to facilitate subsequent program analysis.
[0044] After completing the big data calculation debugging, you can respond to the exit debugging instruction, close the single-step debugging interface to exit the debugging, and then continue to complete the big data calculation process. By debugging and correcting the big data calculation process, continue to execute the program, which can optimize the big data calculation process and improve the efficiency of the big data calculation process.
[0045] The beneficial effect brought about by the above implementation method is that intermediate data can be saved for analysis, and after debugging is completed, the program can be continued to be executed after the big data calculation process is corrected through debugging, which can optimize the big data calculation process and improve the efficiency of the big data calculation process.
[0046] In some implementations, Figure 2 A flow chart of another online single-step debugging method for big data computing provided in an embodiment of the present application is shown as follows: Figure 2 As shown, in the above S110 , in response to the single-step debugging instruction, a single-step debugging interface is displayed, including S111 to S112 , which will be described in detail below.
[0047] S111. Obtain the location information of the target program running, and determine the single-step debugging instruction corresponding to the location information based on the correspondence between the location information and the single-step debugging instruction. The correspondence between the target program, the single-step debugging instruction, the location information, and the single-step debugging instruction is stored on the main computing machine.
[0048] In big data computing, big data computing often requires larger computing resources. Therefore, big data computing is generally performed on a main computing machine with stronger computing power, and the main computing machine that performs big data computing often configures the operating system and operating environment according to the environment required to perform big data computing.
[0049] When debugging a target program running big data computing, the location information of the target program can be obtained. The location information indicates which line the target program is running to. Then, based on the correspondence between the location information and the single-step debugging instruction, the single-step debugging instruction corresponding to the location information can be determined.
[0050] For example, when the target program runs to line 1505, the single-step debugging instruction corresponding to line 1505 can be obtained based on the correspondence between the position information and the single-step debugging instruction, and then single-step debugging can be performed according to the single-step debugging instruction corresponding to line 1505.
[0051] When the big data computing program is running, the correspondence between the target program, single-step debugging instructions, position information and single-step debugging instructions can be stored on the main computing machine. The single-step debugging instructions can be searched on the main computing machine according to the correspondence between the position information and single-step debugging instructions stored on the main computing machine, thereby realizing the unified running of the target program and single-step debugging instructions on the main computing machine.
[0052] S112: The main computing machine triggers the single-step debugging function. The main computing machine sends the single-step debugging instruction to the debugging machine, and displays the single-step debugging interface on the debugging machine.
[0053] When debugging a program, the single-step debugging function can be triggered on the main computing machine. The main computing machine sends the single-step debugging instruction to the debugging machine and displays the single-step debugging interface on the debugging machine, so that the single-step debugging interface can debug the big data computing program on the main computing machine on the debugging machine. This can avoid the impact of the single-step debugging interface running on the main computing machine on the calculation process of the target program on the main computing machine, and can also reduce the computing burden on the main computing machine.
[0054] When performing single-step debugging, the environment configuration required by the debugging machine can be configured to an operating system and operating environment different from that of the main computing machine, so that the target program on the main computing machine can be debugged through a different debugging machine.
[0055] In some implementations, in the above-mentioned S120, in the single-step debugging interface, in response to the single-step execution instruction, the single-step execution result corresponding to the single-step execution instruction is output, including: the main computing machine executes the single-step execution instruction, obtains the single-step execution result corresponding to the single-step execution instruction, and sends the single-step execution result to the debugging machine, and the debugging machine outputs the single-step execution result corresponding to the single-step execution instruction in the single-step debugging interface.
[0056] When debugging the target program, you can execute a single-step execution instruction on the main computing machine to obtain the single-step execution result corresponding to the single-step execution instruction, and send the single-step execution result to the debugging machine. The debugging machine outputs the single-step execution result corresponding to the single-step execution instruction in the single-step debugging interface to display the single-step execution result of the single-step debugging.
[0057] The beneficial effect brought about by the above-mentioned implementation method is that the single-step debugging interface can debug the big data calculation program on the main computing machine on the debugging machine, which can avoid the single-step debugging interface running on the main computing machine from affecting the calculation process of the target program on the main computing machine, and can also reduce the calculation burden on the main computing machine.
[0058] In some implementations, Figure 3 A flow chart of another online single-step debugging method for big data computing provided in an embodiment of the present application is shown as follows: Figure 3 As shown, in the above S110 , in response to the single-step debugging instruction, the single-step debugging interface is displayed, and further steps S113 to S114 are included. S113 to S114 are described in detail below.
[0059] S113. Obtain the computer identifier of the target program and the location information at which the target program is running, and send the computer identifier and location information to the debugging machine. The debugging machine determines the single-step debugging instruction corresponding to the computer identifier and location information based on the correspondence between the computer identifier, location information, and the single-step debugging instruction. The target program is running on the main computing machine, and the correspondence between the computer identifier, location information, and the single-step debugging instruction, as well as the single-step debugging instruction, is stored on the debugging machine.
[0060] When performing big data calculations through multiple main computing machines, in order to accurately locate the main computing machine at the debugging position and perform debugging, the computer identification on which the target program is running and the location information where the target program is running can be obtained when debugging the big data calculation process. The computer identification represents the information of the main computing machine that runs the target program. The main computing machine can also send the computer identification and location information to the debugging machine. The debugging machine determines the single-step debugging instruction corresponding to the computer identification and location information based on the correspondence between the computer identification, location information and single-step debugging instructions, and then can debug the target program according to the single-step debugging instruction.
[0061] When the target program is running, the target program runs on the main computing machine, and the correspondence between the computer identification, location information and single-step debugging instructions, and the single-step debugging instructions are stored on the debugging machine, thereby saving storage space on the main computing machine and reducing the computing burden of the main computing machine.
[0062] S114. The debugging machine sends a single-step debugging instruction to the main computing machine corresponding to the computer identifier. The main computing machine corresponding to the computer identifier triggers the single-step debugging function and displays a single-step debugging interface on the debugging machine.
[0063] During debugging, the single-step debugging instruction can be sent to the main computing machine corresponding to the computer identifier through the debugging machine. The main computing machine corresponding to the computer identifier triggers the single-step debugging function, so that the main computing machine can debug the target program and display the single-step debugging interface on the debugging machine. Then, subsequent debugging can be continued through S120.
[0064] When the single-step debugging interface is displayed on the debugging machine,
[0065] The beneficial effect brought about by the above-mentioned implementation method is that the target program runs on the main computing machine, the correspondence between the computer identification, location information and single-step debugging instructions, and the single-step debugging instructions are stored on the debugging machine, thereby saving storage space on the main computing machine and saving the computing burden of the main computing machine.
[0066] The beneficial effect brought about by the above implementation method is that it can accurately locate the debugging needs of the code when multiple main computing machines perform big data calculations.
[0067] In some implementations, the above method further includes S210, S211 or S212, and S210, S211 or S212 are described in detail below.
[0068] S210: Obtain a calculation amount identifier and a data amount identifier corresponding to the single-step debugging instruction, wherein the calculation amount identifier and the data amount identifier corresponding to the single-step debugging instruction are preset.
[0069] When debugging the target program, after obtaining the single-step debugging instruction, the calculation amount identifier and data amount identifier corresponding to the single-step debugging instruction can be obtained, and then the calculation amount identifier and data amount identifier can be used to determine whether the target program is running on the main computing machine or the debugging machine.
[0070] Exemplarily, the calculation amount identifier and data amount identifier corresponding to the single-step debugging instruction are preset when encoding the target program.
[0071] S211. When the calculation amount corresponding to the calculation amount identifier is greater than the preset calculation amount or the data amount corresponding to the data amount identifier is greater than the preset data amount, the main computing machine triggers the single-step debugging function.
[0072] Before executing debugging, when the amount of calculation corresponding to the amount of calculation identifier is greater than the preset amount of calculation, or the amount of data corresponding to the data amount identifier is greater than the preset data amount, it means that the amount of calculation or the amount of data required for the debugging task corresponding to the single-step debugging instruction is too large. Sending the excessive amount of calculation or the amount of data required for the debugging task to the debugging machine for execution will cause the calculation process to be unstable, and may also cause the data transmission process to consume a large amount of bandwidth resources and storage space resources. At this time, the single-step debugging function can be triggered on the main computing machine to improve debugging efficiency.
[0073] S212. When the calculation amount corresponding to the calculation amount identifier is less than or equal to the preset calculation amount and the data amount corresponding to the data amount identifier is less than or equal to the preset data amount, the debugging code and data corresponding to the single-step debugging instruction are transmitted to the debugging machine, and the single-step debugging function is triggered on the debugging machine.
[0074] Before executing debugging, when the calculation amount corresponding to the calculation amount identifier is less than or equal to the preset calculation amount, or the data amount corresponding to the data amount identifier is less than or equal to the preset data amount, it means that the calculation amount and data amount required for the debugging task corresponding to the single-step debugging instruction are relatively small. The debugging code and data corresponding to the single-step debugging instruction can be transmitted to the debugging machine, and the single-step debugging function can be triggered on the debugging machine to realize the separation of debugging and running, thereby improving the stability of the target program running on the main computing machine.
[0075] The beneficial effect brought about by the above-mentioned implementation method is that, based on the amount of calculation and the amount of data, it is judged whether the debugging process is run on the main computing machine or the debugging machine. When the amount of calculation corresponding to the amount of calculation identifier is greater than the preset amount of calculation, or when the amount of data corresponding to the data amount identifier is greater than the preset data amount, the single-step debugging function is triggered on the main computing machine to improve the debugging efficiency; when the amount of calculation and the amount of data required for the debugging task corresponding to the single-step debugging instruction are relatively small, the separation of debugging and running can be achieved, thereby improving the stability of the target program running on the main computing machine.
[0076] In some implementations, when there are multiple debugging machines, in the above S221, the debugging code and data corresponding to the single-step debugging instruction are transmitted to the debugging machine, and the single-step debugging function is triggered on the debugging machine, including S221a to S221b. S221a to S221b are described in detail below.
[0077] S221a. Determine a system resource evaluation value of each debugging machine according to the remaining storage space and remaining computing power of each debugging machine.
[0078] When multiple debugging machines are running, the system resource evaluation value of each debugging machine can be determined according to the remaining storage space and remaining computing power of each debugging machine, and then the debugging process can be determined on which debugging machine according to the system resource evaluation value of each debugging machine.
[0079] Exemplarily, when determining the system resource evaluation value of each debugging machine based on the remaining storage space and remaining computing power of each debugging machine, the evaluation value of the remaining storage space and the evaluation value of the remaining computing power can be added to obtain the system resource evaluation value of each debugging machine.
[0080] S221b: Determine a target debugging machine having the largest system resource evaluation value among the multiple debugging machines, transmit debugging code and data corresponding to the single-step debugging instruction to the target debugging machine, and trigger the single-step debugging function on the target debugging machine.
[0081] After obtaining the system resource evaluation value of each debugging machine, the target debugging machine with the largest system resource evaluation value among multiple debugging machines can be determined, and the debugging code and data corresponding to the single-step debugging instruction can be further transmitted to the target debugging machine, and the single-step debugging function can be triggered on the target debugging machine to ensure that the debugging program runs smoothly when debugging the target program.
[0082] The beneficial effect of the above implementation is that the debugging code and data corresponding to the single-step debugging instruction are transmitted to the target debugging machine with the largest system resource evaluation value for execution, thereby ensuring smooth operation of the debugger when debugging the target program.
[0083] In some implementations, in the above-mentioned S221b, the debugging code and data corresponding to the single-step debugging instruction are transmitted to the target debugging machine, and the single-step debugging function is triggered on the target debugging machine, including: the target debugging machine enters a network restriction mode and a transaction restriction mode, and in the network restriction mode, the network usage of other processes except the process transmitting the debugging code and data corresponding to the single-step debugging instruction is restricted, and the system computing power usage of other processes except the process debugging the debugging code and data corresponding to the single-step debugging instruction is restricted.
[0084] When the target debugging machine is debugging, the target debugging machine can be controlled to enter a network restriction mode and a transaction restriction mode, thereby improving the stability of the target debugging machine when debugging a program.
[0085] In network restriction mode, the network usage of all processes except those transmitting the debugging code and data corresponding to the single-step debugging instruction is restricted, and the system computing power usage of all processes except those debugging the debugging code and data corresponding to the single-step debugging instruction is restricted, so that the target debugging machine can be in the best state to complete the debugging of large data calculations.
[0086] For example, when limiting the system computing power usage of other processes, the system computing power usage of other processes can be limited to within 20% of the maximum computing power of the system.
[0087] The beneficial effect brought about by the above implementation is that, by controlling the target debugger to enter the network restriction mode and the transaction restriction mode, the stability of the target debugger during program debugging can be improved.
[0088] An embodiment of the present application also provides an online single-step debugging system for big data computing, including a unit for executing the method described above.
[0089] Figure 4 A schematic diagram of the logical structure of an online single-step debugging system for big data computing provided in one embodiment of the present application is shown as follows: Figure 4 As shown, the system 1 of this embodiment includes a processing unit 11, a storage unit 12, and a transceiver unit 13. The processing unit 11 is used to process data, the storage unit 12 is used to store data, and the transceiver unit 13 is used to send and receive data. The processing unit 11, the storage unit 12, and the transceiver unit 13 cooperate with each other to implement the above method. The beneficial effects brought about by the embodiment of the present application have been described in the above method and will not be repeated here.
[0090] An embodiment of the present application also provides an online single-step debugging system for big data computing, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the method described above is implemented.
[0091] Figure 5 A schematic diagram of the physical structure of an online single-step debugging system for big data computing provided in an embodiment of the present application is shown as follows: Figure 5 As shown, the system 2 of this embodiment includes: at least one processor 20 ( Figure 5 Only one processor 20 is shown in the figure), a memory 21, and a computer program 22 stored in the memory 21 and executable on the at least one processor 20. When the processor 20 executes the computer program 22, the steps of any of the above-mentioned method embodiments are implemented. The beneficial effects brought about by the embodiments of the present application have been described in the above-mentioned methods and will not be repeated here.
[0092] It should be noted that the information interaction, execution process, etc. between the above-mentioned devices / units are based on the same concept as the method embodiment of this application. Their specific functions and technical effects can be found in the method embodiment section and will not be repeated here.
[0093] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.
[0094] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in the above-mentioned various method embodiments can be implemented.
[0095] An embodiment of the present application provides a computer program product. When the computer program product is run on a mobile terminal, the mobile terminal can implement the steps in the above-mentioned various method embodiments when executing the computer program product.
[0096] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the process of the above-mentioned method embodiment by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by a processor, it can implement the steps of each of the above-mentioned method embodiments. The computer program includes computer program code, which can be in source code form, object code form, executable file, or some intermediate form. The computer-readable medium can at least include: any entity or device capable of carrying computer program code to the camera / terminal device, recording medium, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal, and software distribution medium. For example, a USB flash drive, mobile hard drive, magnetic disk, or optical disk. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electric carrier signals or telecommunication signals.
[0097] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.
[0098] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0099] In the embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0100] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0101] The above-described embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.
Claims
1. An online single-step debugging method for big data computing, characterized in that: The method comprises: In response to a single-step debugging instruction, a single-step debugging interface is displayed; wherein the single-step debugging instruction includes a single-step debugging breakpoint preset by the user or a single-step debugging instruction issued by the user in real time; wherein, Get the calculation amount identifier and data amount identifier corresponding to the single-step debugging instruction; When the amount of calculation corresponding to the calculation amount identifier is greater than the preset amount of calculation or the amount of data corresponding to the data amount identifier is greater than the preset amount of data, the main computing machine triggers the single-step debugging function; when the amount of calculation corresponding to the calculation amount identifier is less than or equal to the preset amount of calculation and the amount of data corresponding to the data amount identifier is less than or equal to the preset amount of data, the debugging code and data corresponding to the single-step debugging instruction are transmitted to the debugging machine, and the single-step debugging function is triggered on the debugging machine; In the single-step debugging interface, in response to the single-step execution instruction, the single-step execution result corresponding to the single-step execution instruction is output; or in the single-step debugging interface, in response to the program modification instruction, the program code is modified; or in the single-step debugging interface, in response to the data modification instruction, the program running data is modified.
2. The method according to claim 1, wherein The method further comprises: In the single-step debugging interface, in response to a result save instruction, the single-step execution result is saved; or in response to an exit debugging instruction, the single-step debugging interface is closed to exit debugging.
3. The method according to claim 2, wherein In response to a single-step debugging instruction, a single-step debugging interface is displayed, including: Obtaining location information of the target program running, and determining the single-step debugging instruction corresponding to the location information based on the correspondence between the location information and the single-step debugging instruction; wherein the correspondence between the target program, the single-step debugging instruction, the location information, and the single-step debugging instruction is stored on the main computing machine; The main computing machine triggers the single-step debugging function. The main computing machine sends the single-step debugging instruction to the debugging machine, and displays the single-step debugging interface on the debugging machine. In the single-step debugging interface, in response to a single-step execution instruction, the single-step execution result corresponding to the single-step execution instruction is output, including: The main computing machine executes the single-step execution instruction, obtains the single-step execution result corresponding to the single-step execution instruction, and sends the single-step execution result to the debugging machine. The debugging machine outputs the single-step execution result corresponding to the single-step execution instruction in the single-step debugging interface.
4. The method according to claim 3, wherein In response to a single-step debugging instruction, a single-step debugging interface is displayed, further comprising: Obtaining the computer identifier of the target program and the location information at which the target program is running, and sending the computer identifier and location information to a debugging machine, wherein the debugging machine determines the single-step debugging instruction corresponding to the computer identifier and location information based on the correspondence between the computer identifier, location information, and the single-step debugging instruction; wherein the target program is running on a main computing machine, and the correspondence between the computer identifier, location information, and the single-step debugging instruction, and the single-step debugging instruction, are stored on the debugging machine; The debugging machine sends the single-step debugging instruction to the main computing machine corresponding to the computer identifier. The main computing machine corresponding to the computer identifier triggers the single-step debugging function and displays the single-step debugging interface on the debugging machine.
5. The method according to claim 4, wherein The method further comprises: The calculation amount identifier and data amount identifier corresponding to the single-step debugging instruction are preset.
6. The method according to claim 5, wherein When there are multiple debuggers, the debug code and data corresponding to the single-step debug instruction are transferred to the debugger, and the single-step debug function is triggered on the debugger, including: Determine the system resource evaluation value of each debugging machine based on the remaining storage space and remaining computing power of each debugging machine; A target debugging machine with the largest system resource evaluation value among multiple debugging machines is determined, debugging code and data corresponding to the single-step debugging instruction are transmitted to the target debugging machine, and a single-step debugging function is triggered on the target debugging machine.
7. An online single-step debugging system for big data computing, characterized in that: Comprising means for performing the method according to any one of claims 1 to 6.
8. An online single-step debugging system for big data computing, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 6 is implemented.
9. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
SQL-based mass big data calculation and development debugging method
CN113641572A
A debugging method for developing massive big data computing based on SQL
CN113641572B
Multi-source heterogeneous data insight analysis system and method
CN117634992A